我一直在阅读很多关于恶意软件编写者如何重新打包现有的 benigh android .apk 并将其重新打包以添加恶意功能的信息。
现在,根据我对 .apk 文件结构的理解,每个 .apk 文件都包含一个 .dex 文件,该文件本质上是将 java 字节转换为 .dex 格式。此外,该应用程序有一个名为 manifest.xml 的二进制 XML 和其他资源文件和资产。如果我们必须向应用程序添加额外的恶意功能,那么我们必须修改 manifest.xml(可以通过将二进制 xml 转换回普通 xml 轻松完成)、资源(可以直接替换)和 .dex 文件.
但是 .dex 文件具有特定的结构。据我说,对其进行的任何修改都应该破坏代码。这些工具使用什么技术来防止代码被破坏,因为如果在原始应用程序中添加一些恶意功能,我们实质上就是添加了一个额外的模块。
有哪些支持 .apk 文件重新打包的工具?
谢谢。
编辑:有些成员可能会觉得讨论逆向工程很冒犯。我是研究 Android 安全的研究生。我需要知道 .apk 文件重新打包是如何工作的,因为这是我的研究课题。此外,公开谈论逆向工程并不是恶意行为——关于逆向工程的书籍已经写过——将逆向工程用于恶意目的是恶意的:)