MASTG-TEST-0049: 测试模拟器检测
此测试即将更新
此测试目前可使用,但将作为新的 OWASP MASTG v2 指南 的一部分进行全面修订。
请提交 PR 来帮助我们:MASTG v1->v2 MASTG-TEST-0049:测试模拟器检测 (android)
绕过模拟器检测¶
- 修补模拟器检测功能。通过简单地使用NOP指令覆盖相关的字节码或本机代码,来禁用不需要的行为。
- 使用Frida或Xposed API来Hook Java和本机层的文件系统API。返回看起来无害的值(最好是从真实设备获取),而不是泄露信息的模拟器值。例如,您可以覆盖
TelephonyManager.getDeviceID
方法以返回IMEI值。
有效性评估¶
在模拟器中安装并运行该应用程序。应用程序应检测到它正在模拟器中执行,并终止或拒绝执行要保护的功能。
努力绕过防御并回答以下问题
- 通过静态和动态分析识别模拟器检测代码有多困难?
- 检测机制可以被轻易绕过吗(例如,通过Hook单个API函数)?
- 您是否需要编写自定义代码来禁用反模拟功能? 您需要多少时间?
- 您如何评估绕过这些机制的难度?