基于模拟器特征的反模拟器检测

/ 8评 / 0

常用的模拟器都会进行一定程度的定制,定制后都会有些带有该型号特征的文件,比如海马玩在system/bin下就有一个droid4x-prop,在一般的手机上是不会有这个文件的,根据这一特征,我们可以在jni中使用stat函数对该文件的状态进行检测,代码如下

当stat返回为0时,即代表该文件存在,根据这一手段,可以判断多数模拟器,如下

主要的特征还需要大量的收集才会检测的比较全面,其次根据prop去检测也是一个不错的方式,如下,

最后就是根据build.prop去判断,有些模拟器会修改该文件来躲避检测

8条回应:“基于模拟器特征的反模拟器检测”

  1. penguin_wwy说道:

    原生的怎么检测

  2. 飘无踪迹说道:

    您好,在您的 https://github.com/Qrilee/crackme/blob/master/app/src/main/jni/AntiDebug/antidebug.cpp 中看到runInotify()使用了inotify通知机制,有一个疑惑想请教您。
    安全人员脱壳时会到/proc/pid/mem or /proc/pid/maps 下dump内存,故而访问mem/maps。但是应用启动时同样会解密DEX/SO,解密的过程也应该在mem/maps下进行,这时为什么不会触发IN_ACCESS/IN_OPEN事件?

发表评论

电子邮件地址不会被公开。 必填项已用*标注