移动安全之跟风用AI开发设备检测app搬运请注明出处公众号编角料,不欢迎个人网站等盗版平台搬运
前言
以下内容,皆无具体的技术细节,有了AI,还要啥技术细节,主要一些有关AI的分析发现和想法今天正好有时间,那么,反正也闲着,水一篇
不知道从什么时候开始,AI这波冲击,突然就进入大家视线,本来一开始我是不太喜欢用AI的,总感觉,这就和开车用辅助驾驶一样,还是不太放心全权交给它但是嘛,咱们这一行,就得快速接受时代的变迁,不然就会被淘汰,主要动不动就看群里说,谁谁谁,用AI又把5s秒了,把什么6神,x-sign啥的秒了,jsvmp秒了,什么什么纯算秒了看到这些,我相信只要是圈里的人,应该都懂这些词汇的分量,所以应该也能感觉到焦虑了,“难道AI真的这么强?”所以,我大概是从一两个月前开始,逼着自己去学习使用AI,花钱买AI付费服务,体验AI不解释,懂的都懂
一开始还是玩得挺开心,至少真的不用去从0开始自己写代码了,后面就是感觉舒服,再后来就是感觉焦虑,非常焦虑还有啥是AI不能干的,玛德,也太全面了
有想法就能立马落地
所以其实,当时就想自己写一个检测的app,但是,能力有限加上时间没那么多,一直没行动,进而也能看看,那些app到底都怎么检测的,这就好比,你爬虫写多了,也想自己试试怎么写个反爬策略,逆向多了,也想试试怎么写个反调试
说干就干,android studio建一个native的项目(这是从0开始到最后,这个步骤是我真纯手动操作的了),随便取了个名字—— StandUp,就像学生时代上课的时候突然被老师叫起来回到问题一样
然后直接让谷歌 antigravity给我一点点开发了检测adb
检测app安装列表
检测apatch
检测zygisk模块
跑了没一会儿,claude opus4.6直接就跑完了,焦灼然后写了不少检测,大部分都是检测/data/adb/子目录,以及 /proc/self/mountinfo、tracerpid相关,以及maps之类的,但是效果非常的差,一堆检测代码,但基本不可用我拉取了zygisk next最后一版的开源代码,以及rezygisk,neozygisk的源码,然后正好gpt5.5发布,直接让它一顿分析,刚开始只找到一些特征,但是大部分还是围绕在/data/adb/子目录部分太长了,只贴一部分
---------------------------------
| 特征 | ZygiskNext | NeoZygisk | ReZygisk | 需要 root | 检测难度 |
| ptrace PID 1 | ✅ | ✅ | ❌ | ❌ | 低 |
| memfd (jit-cache) | ✅ | ❌ | ❌ | 需读 Zygote maps | 中 |
| memfd (zygisk-module) | ❌ | ✅ | ❌ | 需读 Zygote maps | 中 |
| Unix Socket 路径 | ✅ | ✅ | ✅ | ❌(/proc/net/unix) | 低 |
| zygisk-ptrace 进程 | ✅ | ✅ | ❌ | ❌ | 低 |
| zygiskd 进程 | ✅ | ✅ | ✅ | ❌ | 低 |
| Companion 进程名 | ✅ | ✅ | ✅ | ❌ | 中 |
| libzygisk.so in maps | ✅ | 部分 | ❌ | 需读 Zygote maps | 中 |
| 模块目录存在 | ✅ | ✅ | ✅ | 需 root | 低 |
| ZYGISK_ENABLED | ✅(仅Manager) | ✅(仅Manager) | 不确定 | ❌ | 低(App内) |
| /proc/net/unix socket | ✅ | ✅ | ✅ | ❌ | 中 |
---------------------------------
看似分析得头头是道,然后让它操作写代码,全是无用的检测反正给我的感觉就是不太行,加上反重力(antigravity)老网络崩溃需要点retry,最后就是对它骂一顿收场,gemini 3.1 flash(没法pro和opus用完了)简直是嘴硬的蠢狗没过一会儿就给我开发好了代码,后面微调了下,直接可以命中zygisk它不仅可以检测zygisk,rezygisk也没问题并且误报率也很低,目前我测试的手机,基本都正常,没有就是没有,有就确实能检测检测trickyStore/Teesimulator模块
当然这里它分析的就不够用了,我网上找了个无影佬开发的密钥认证这个app就是能检测trickyStore模块,正好,用jadx打开发现混淆非常严重,这时候,mcp+ai的作用就体现出来了,我直接配置好一堆需要的mcp,然后利用jadx-mcp(https://github.com/zinja-coder/jadx-ai-mcp)分析一开始它分析得并不好,这个流程我其实执行了多次,后面重新一轮分析,也不知道是不是5.5刚出来没降智还是怎么,我用5.5以后,突然分析得又很6了,即使这个app有ollvm也能分析了,很奇葩的各项字符加密也能直接转义了,它这个app借助了一个开源的字符串加密库【com.github.megatronking.stringfog.xor.StringFogImpl】,反正没搞多久,代码就写好了刚开始效果也不太行,我测试了好几台手机,给了它一堆终端logcat,它一顿分析我感觉很接近了,后面又给了我一版,结果就是,直接可以检测trickyStore了,顺便它还自己把检测KeyAttestation链以及Tee,谷歌吊销证书,还有verfiyboothash也自动补齐了,真不错
UI设计
再次说明,我真全程没有手写一行代码,全是AI帮我写的后续预计工作
检测lsp/xp/frida,检测Sukisu ultra、检测crc、检测脱壳机、魔改rom、模拟器、云手机等的,这些一套组合拳,应该也是一个时间问题了,技术上都不是问题了分析chrish_peekaboo.kpm
其实之前我也让反重力分析过chrish_peekaboo这个内核模块然后记录已经找不到了,操作就是直接把kpm拉进ida和binarry ninja,然后借助mcp,同时让ai去自行分析,效果也不错,也让它帮我照着chrish_peekaboo和noHello两个内核模块的原理,另写了一个内核隐藏模块,但是前两周看到无名侠佬开源的内核隐藏模块(https://github.com/P4nda0s/kpm-panda-hide)也分析过某秋等的检测app
让AI给我写爬虫压测代码
这种开发的东西,对他来说,非常的丝滑,我直接拿着就能用,是真的牛所以,还有啥AI不能干的?
结语
源码我暂时先不公开,毕竟代码虽然是AI写的,但是还很low,而且我也只测了几台手机,这个准不准至少得测试上百台才行,等我把功能补齐再公开吧但是还是那句话,AI只是拉低了行业下限和拓宽行业的广度,能不能提升上限,能,但是提升的上限很有限毕竟,你不可能上来就跟他说,帮我逆向某音,某宝,这就涉及到了提问的艺术一代伟人季羡林曾说过,想尿尿就多喝水,憋是憋不出来的,水喝多了,尿自然就有了
最后说一句就是,如果你真的要用AI,一定要用claude/gpt/gemini/grok。我就不点名哪一家了,我上周用国内某AI,让它给我审查优化代码,它能给我改出一堆低级语法错误,再让它给我修复bug,它直接把那有问题的整段代码删掉了,就很符合“国情”,给我气笑了都