【问题标题】:Is it possible to edit/modify .so file?是否可以编辑/修改 .so 文件?
【发布时间】:2016-08-17 05:26:00
【问题描述】:

我正在开发一个包含本机代码的 Android 应用程序。 原生代码编译成一个 .so 文件,里面有重要的算法。

我真的很担心我的 .so 文件可能会被编辑或修改,然后重新构建(重新打包)。像 apk 一样,它们可以被修改和重新打包以创建一个新的

我有几个问题:

1) 有没有办法编辑/修改 .so 文件并重新构建? 2)如果有,人们是怎么做到的? 3) 如何防止.so文件被编辑然后重新构建?

【问题讨论】:

    标签: android java-native-interface shared-libraries native


    【解决方案1】:

    简短的回答是计算机可以阅读和理解的任何内容,它也可以修改。 Android 中没有针对 Java 或本机代码的防弹签名机制。尽管如此,so 文件通常被认为比 Java 代码更不容易受到攻击,即使启用了混淆也是如此。

    对共享库进行逆向工程很难,但可能。如果知道要更改什么,拆卸、更改和组装回来并不难。

    有许多方法可以加强保护 C++ 代码免受逆向工程的攻击,但没有一种方法能够抵御坚决且资金充足的攻击。因此,如果风险非常高,请考虑在服务器上运行算法的重要部分,并保护其安全性。

    【讨论】:

    • 感谢亚历克斯的回答。我可以问你一些事情吗?您能否建议加强对 C/C++ 代码的保护的最佳方法是什么?黑客可以修改.so文件的常用技巧有哪些?
    猜你喜欢
    • 1970-01-01
    • 2011-01-20
    • 2016-03-22
    • 1970-01-01
    • 1970-01-01
    • 2013-07-21
    • 2019-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多