前言
其实有很多大佬写过类似的文章,我这里只是自己来实现一遍,并做下记录
尝试
首先拿到一个apk程序肯定要做一些尝试,因为我们无法一开始就知道该apk做了哪些保护措施。
通过静态分析,我们可以看到主要是在crack.so
中的securityCheck
函数做了校验
因此我们需要动态的来调试crack.so
以root权限运行android_server
开启端口转发adb forward tcp:23946 tcp:23946
使用IDA附加进程,在securityCheck
函数下断点。F9运行到断点处,这时程序终止了!!!
这说明了该apk做了反调试检测。主要是利用了linux的ptrace机制。我们可以来查看一下。
首先获取进程的pid
cat /proc/[pid]/status