在 Android 逆向和重打包领域,去除签名校验(去签)是一个经典命题。当修改后的 APK 重新签名安装后,如果原始应用在代码中校验了自己的签名指纹,就会拒绝运行。MT 管理器的 SignatureKiller 是处理这个问题的主流工具之一。
ApkSignatureKillerEx 这个项目做的就是一件事:演示 MT 去签的原理,以及它的对抗方法。
项目定位
这不是一个可以直接拿来用的去签工具,而是一个技术演示项目。作者用 C 语言实现了对 MT SignatureKiller 机制的模拟,同时展示了如何检测这种去签行为并进行对抗。
对于理解 Android 签名校验体系和安全攻防的人来说,这是一个比只看文字分析更直观的学习资源。
What it 演示
MT 的 SignatureKiller 有一个经典改法:修改 MultiDexApplication.super → KillerApplication,并新增 classes3.dex 承载注入逻辑。业务代码本身不动。这个项目展示了这种改法在底层是如何工作的,以及应用层可以在哪些环节检测异常。
适用读者
- 对 Android 重打包和签名校验感兴趣的安全研究员
- 需要理解 MT 去签原理以便更好保护自己应用的开发者
- 逆向工程学习者
本文基于项目 README 编写,项目描述较简洁,更多细节需阅读源码。
文档信息
- 本文作者:zhupite
- 本文链接:https://zhupite.com/sec/apk-signature-killer-ex.html
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)