Android 保护清单和布局免受逆向工程
Posted
技术标签:
【中文标题】Android 保护清单和布局免受逆向工程【英文标题】:Android protect the manifest and layout from reverse engineering 【发布时间】:2016-12-15 07:51:25 【问题描述】:我一直在研究如何防止人们访问清单和布局文件。
我知道 proguard
用于混淆代码,但它仅适用于 Java 代码,不适用于 res
文件夹。
我已经解决了一些问题,例如在运行时下载内容,而不是将它们保存在资产中等等。但现在我关心的不是保护资产文件。就我而言,它是清单和我需要处理的 res 文件夹。我在其中存储了多种类型的密钥,例如分析 xml 文件 app_tracker.xml
。
这不仅仅是关于我在 xml 文件中的密钥,还有面临风险的布局设计逻辑。
这些是我在研究时发现的线索,但对我没有任何帮助。
1) How to avoid reverse engineering of an APK file?
2) How to protect a java application from reverse-engineering or code stealing?
我知道逆向工程是不可避免的,但有什么方法可以保护我的清单不被黑客读取?
【问题讨论】:
但是有什么办法可以保护我的清单不被黑客读取 是的...不要发布应用程序/源代码 太棒了!你解决这个问题的方法是闭上眼睛,认为一切都很好。 不...你确实闭上了眼睛...apk格式定义明确(或多或少zip)apk中的清单格式定义明确(axml-binary xml)...很明显,只有不发布apk才是方式 【参考方案1】:您可以查看DexGuard,它是 ProGuard 的商业变体。它还允许您加密布局文件并混淆清单和其他资源文件的内容(以及许多其他东西)。
【讨论】:
【参考方案2】:如果手机可以解析清单以安装应用程序,那么用户也可以解析清单。就这么简单。
顺便说一句,混淆不会阻止人们看到您的应用程序中的内容 - 它只会给您一种虚假的安全感。您的应用的安全模型应假定 apk 中包含的任何内容都是公共知识。
【讨论】:
很遗憾,这很糟糕,如果我在开发应用程序并发布它时不眠之夜,然后有人反编译它,更改布局,进行一些其他更改并上传它。太可怕了。以上是关于Android 保护清单和布局免受逆向工程的主要内容,如果未能解决你的问题,请参考以下文章