android内核名修改工具,修改手机内核绕过ptrace

编程知识 更新时间:2023-04-17 19:40:19

前面一篇文章《Android反调试手段收集》在讲常用的反调试方法中有一条是检测进程的TracerPid的值正常情况下为0,在被调试时变成父进程的pid,应对这种情况我们可以通过修改手机内核中代码,将这个pid永久性改为0。

具体方法也都是前人总结的https://bbs.pediy/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

boot.img不是一个完整的文件系统,它们是一种android自定义的文件格式,该格式包括了2K的文件头+用gzip压缩过的内核+一个ramdisk内存盘+第二阶段的载入器程序(可选):

解析后文件如下:

其中的kernel文件就是内核文件,ramdisk.gz文件解压后就是initrd文件夹下的内容。

3,处理内核文件

备份kernel文件,修改文件名为zImage.gz文件,用010打开文件,查找十六进制1F 8B 08 00,这是gz文件的文件头标志,把在这之前的内容全部删掉,然后zImage.gz文件就变成标准的gzip压缩文件了,然后使用gunzip命令或者gzip -d命令解压缩文件,

这时获取到的zImage文件才是需要处理的文件。

用ida工具打开zImage文件,处理器类型选择ARM小端,点击ok确认,

反汇编内存配置页面将ROM和Inputfile的起始地址设置为0xC0008000,因为Linux启动内核的地址就是0xC0008000。

进去后Shift+F12进入字符串页面,全局搜索TracerPid,

选中双击后得到下面地址:0xC0D228A4,然后减去基址0xC0008000,得到0xD1A8A4

将文件用010打开,跳转到这个地址,在这里直接修改字符串内容,将TracerPid后面的%d改为0\t或者0\n,注意不能值改为0,要保证修改后字符串对齐。

至此修改image文件完成。

4,生成修改后的boot.img文件

用gzip压缩zImage文件gzip -n -f -9,生成zImage.gz文件,然后将生成的zImage.gz文件,覆盖到kernel文件中的对应位置,即我们删除的内容之后的位置1F8B0800,这里一定要注意仔细,不能有文件大小错误。

通过bootimg工具生成boot文件。

5,刷机

启动fastboot,运行fastboot flash boot boot-new.img刷入重启即可。

Tips:

还有一种最常见的反调方式就是在app的am文件中添加android:debuggable="false",

应对这种反调做的最多的就是反编译app,将属性值修改为“true”;

但是每次这样操作未免麻烦,有大神给出了mprop工具,只需将可执行文件复制进手机里,运行./mprop ro.debuggable 1即可,但是这个工具修改的是内存中的值,也就是说并不是永久的,每次重启还得再改一次;

其实这个属性值,是在系统根目录下的default.prop文件中的,设备启动就会解析存入内存中。所以如果我们能够把这个文件中的值改成1,那么就永久有效了。在上面解包boot.img的时候,说到了有一个initrd目录,其实default.prop就是在这个目录下

这里我们直接将其改成1,因为我们现在已经进行了修改boot.img操作,那就顺便把这个功能也给改了。

更多推荐

android内核名修改工具,修改手机内核绕过ptrace

本文发布于:2023-04-14 03:21:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/d3afa9333e48e2f5c4f3d53d9516cef5.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:内核   工具   手机   android   ptrace

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 74521文章数
  • 14阅读数
  • 0评论数