周杰伦4/23/2025, 8:00:15 AM
文章分类Android安全阅读数 : 25阅读时长 : 4分钟
【Android安全- 关于牛头人(nativeTest)的Found Injection(4)的检测】此文章归类为:Android安全。
上一篇 关于NativeBridge注入的检测和隐藏 NativeBridge注入后, 牛头人还是会显示"Found Injection(4)"这不得行, 先测试:
riru
LSPosed
resetprop ro.dalvik.vm.native.bridge xx
Found Injection(4)
resetprop
从头阅读源码,果然找到一个点。AndroidRuntime::addOption Vector<JavaVMOption> mOptions; 看一下属性的内存位置: 在AndroidRumtime的指针+8(point length)的位置AndroidRuntime的指针可以通过AndroidRuntime::getRuntime获取写个小jni测试一下: logcat 可以看出, Vecrot的结构还在,但值的指针大部分都是野指针,牛头人应该是通过size判断,因为如果加了NativeBridge后会多一个参数。指针知道了,那这次直接上CE, 上传好·ceserver·后, 执行su -c ceserver_arm64, 电脑连接上 不管了,清零: 启动后奔溃,应该是mOptions->array()不能为nullprt, 指向一个空白区域,正好下面有一块: 再次测试 难道不是??其实不然,牛头人应该是同时检测了webview_zygote 用同样方式改一下: 好了再改一上篇说的NativeBridgeError, found Injection(4)没了
AndroidRuntime::getRuntime
jni
Vecrot
size
NativeBridge
su -c ceserver_arm64
mOptions->array()
webview_zygote
NativeBridgeError
found Injection(4)
牛头人不愧是native的测试,都是内存检测, Futile Hide(8)是我用的一个调试模块导致,正式应该环境不会出现, 但Abnomal Environment应该解决一下,而且安装LSPlosed还是会出现Found Inject,等有空搞。睡......
Futile Hide(8)
Abnomal Environment
LSPlosed
Found Inject
更多【Android安全- 关于牛头人(nativeTest)的Found Injection(4)的检测】相关视频教程:www.yxfzedu.com