当前时间: 2026-03-22 18:36:50
更新时间: 2026-03-22
分类:软件教程
评论(0)
某行APP绕过检测
最近向NoneVector师傅学习了脱壳和绕检测,来挑战一下金融行业的难度。
看到是梆梆加固企业版,用魔改版frida启动一下看看怎么个事,记着改一下端口,不然很简单就被识别到了。
先一步hook dlopen或者android_dlopen_ext,看看都加载了哪些栈。
看到堆栈死在libmsaoaidsec.so,这个东西直接给他伪实现hook掉。
尝试进入成功,但是出现了一个问题app依旧崩溃,明明加载了但是又提示找不到文件,其中应该是被某些东西阻挡,想起刚才MT管理器提示的邦邦加固,查看加载二进制历史。
经典邦邦libDexHelper.so,在一开始加载,却又什么反应都没,这就很不对劲了。可能是一起开展的检测,导致我们一开始以为用魔改frida绕过了,可能是还没启用。所以邦邦的加固需要和libsaoaidsec.so一起绕。
尝试hook ptrace_creat用来创建hoo进程。果然直接被干掉,属于一直在监听中。
我们放弃hooK ptrace_creat,也有别的办法去hook掉对应的检测比如我们hook clone用来控制线程,这个思路也是根据 “不落”大佬的思路做的方案,通过hook clone规避掉creat的检测来结束线程。
找到libDexHelper.so创建的线程,通过patch_func_nop给线程全部nop掉,成功绕过。进入到APP首页时,卡住不动一到两秒后程序崩溃,结合之前的绕过libmsaoaidsec.so一起启动尝试看是否能完成hook.
返回变化了,证明进入了libmsaoaidsec.so,按道理我们的脚本应该也绕过了这个二进制库,因为这个本身网上都有很多案例了,这时候打开jadx看包里面都有哪些lib是可能搭配libmsaoaidsec的,因为加载了这个后才崩溃。
看到这里分析这个libmsaoaidauth.so的名称,因为带了auth应该是对libmsaoaidsec.so这个库进行了校验,返回了某个值用来验证这个库是否被替换了,到这里应该就是最后一步。直接用同样的方法空实现libmsaoaidauth.so.APP正常运行,一次越两个壳结束。
本站文章均为手工撰写未经允许谢绝转载:
夜雨聆风 »
某行APP绕过检测