一个小blog,单独记一下如何Android动态调试。
Android逆向-动态调试
我发现我以前有段时间,从2022年4月到2023年初,写了好多blog,但是从来没整理过。这个话题好像也是那个时间段内写过的玩意。复习一下。
环境
两个能解BL锁的手机:
- pixel3xl
- pixel5xl(性能更强,可以用于调游戏外挂)
还有IDA。
Native层调试(用IDA)
传入android-server
1 | adb push android-server /data/local/tmp |
android-server或者是android-server64,根据要调试的so的位数。
执行
1 | adb shell |
启动android-server
之前我加了个su
,表明它是在root权限下执行的。这样似乎才能得到手机中所有的进程。
ls -l ./android-server看权限
adb forward
1 | adb forward tcp:23946 tcp:23946 |
这个可能需要单独开一个terminal来执行。
IDA附加
Debugger–>Attach to process
找到对应的包名即可。
绕过端口检查与进程名检查
1 | cp android_server other_server |
注意,端口号也修改了,因此上文adb forward
的端口号也要修改一下。
注意点
root了之后一定要也在root权限内执行server,否则进程显示不全。
参考
Android 动态调试so文件 - 知乎 (zhihu.com)
- 本文作者: Taardis
- 本文链接: https://taardisaa.github.io/2023/06/07/Android逆向-动态调试/
- 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!