使用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

 

posted @ 2014-05-04 15:54  子柱  阅读(604)  评论(0编辑  收藏  举报