安卓APP动态调试

有时候,我们需要动态调试安卓APP的so文件,尤其是当Unity3D转向IL2CPP的时候,有一些逻辑或者变量只能通过这种方式才能 获取。


第一步:打开IDA,把需要分析的so文件拖进去,等待IDA进行分析完成。

第二步:相对于IL2CPP而言,需要把一些函数名称进行翻译,导入unity_loader.py,若新机器没有python环境,需要安装python运行库,在IDA目录下可以找到,安装完成后,请记得重新启动。

第三步:把android_server这个文件传到手机上面,并修改可运行权限,注意:这个文件不能放在SD卡上,否则无法运行成功。

第四步:运行adb shell,su,./data/local/tmp/android_server
第五步:adb forward tcp:23946 tcp:23946

第六步:将IDA attach到需要调试的进程上,选择需要调试的进程,然后等待断点。