前言
脱取一二初代壳的时候,可以利用objection通过内存搜索Dex文件的关键特征来进行一个dump,也可以通过hook来进行一个脱取以及通过ida动态下断点的方法。网上经常有编译好的系统镜像,通过刷机可以打造出一个脱壳机,今天主要是针对这些网上的脱壳机子的原理进行一个分析。关键点就是找到最终操作dex文件的函数部分。
正文
这里是找到网上脱壳虚拟机的代码,这里是修改了Dalvik虚拟机的系统函数,进行了重编译,定位dexFileParse函数,可以看到传参是dex数据内容以及长度,因此脱壳机利用pid进程号进行一个命名文件,然后直接写入文件,直接修改了安卓虚拟机的源码,然后编译,就造成了当执行到这里的时候,会直接写入。
另一种脱壳机子的写法也是一样,主要是定位到最后的dex数据操作函数。
这里也是一样。
一样
原文始发于微信公众号(Th0r安全):安卓脱壳机的实现原理
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论