使用gdb调试app
准备好一台越狱的设备:itouch \ iphone\ ipad
ios设备上安装好 app sync, ssh, gdb还有其他几个shell控件,详细参考其他文章
pc上使用终端ssh连接到ios设备 【root】# ssh root@192.168.1.101
使用ps命令查看要调试的app,【root】# ps -ef
如果进程中没有对应的app,可能是app还没有启动,手动启动该app
查到该app运行起来对应的进程号PID
使用gdb加载到对应的进程【root】# gdb -p 1023
(1023)是对应的进程号
然后 > info sh
可以查看到app进程的offset信息,使用IDA Pro获取得到的代码地址需要加入该offset偏移量
在需要断点的地方:
> b *(基地址+代码地址)
会显示加入断点结果
> c
使app运行起来
在运行到断点位置时会停住,这个时候可以查看各个寄存器的信心
如:
> x/a $r0
> x/s $r1