前面一篇文章《Android反调试手段收集》在讲常用的反调试方法中有一条是检测进程的TracerPid的值正常情况下为0,在被调试时变成父进程的pid,应对这种情况我们可以通过修改手机内核中代码,将这个pid永久性改为0。
具体方法也都是前人总结的https://bbs.pediy.com/thread-207538.htm,这里只根据自己的设备做一遍操作演示。
设备:Nexus5
系统版本:4.4.4
1,提取出boot.img文件
首先要有root权限,进入到/dev/block/platform/文件夹下,然后这里会有一个文件夹,在不同手机中这个文件夹名字不一样,我的设备中是msm_sdcc.1,进入后然后再进入by-name文件夹,找一个boot文件,如下:
记下后面的路径,然后导出boot文件:
dd if=/dev/block/mmcblk0p19 of=/data/local/boot.img
adb pull /data/local/boot.img boot.img
权限不够的话就赋下权限值。
2,用bootimg.exe工具解压boot.img文件
lcweik大神在上面文章中给出的mac下的工具abootimg,我这里用的是windows下的bootimg.exe,
命令是:bootimg --bootimg boot.img