ida 7.0 for mac 调试APP

ida 7.0 发布了,拥有调试iOS应用的能力,自己尝试了一下,踩了很多坑,这方面资料太少了,按照官方文档操作也是失败的,在这里总结一下.
目前只能调试个人App,对于系统的,我还是无能为力,下面讲解过程

一.将应用脱壳

脱壳过程就不多说了, 参考网上的各种脱壳方案, iClutch, dumpdecrypted 等.

二.将脱壳应用安装到手机

过程不多说, 助手, ideviceinstall等

三.修改签名get-task-allow

此处的签名不指平时用的重签名, 而是要修改get-task-allow的值, 用用发布后默认是没有开启的,以MobileSafari为例:

1.在越狱iOS设备上,利用iOS系统文件管理工具(itools,ifunbox),在Applications/MobileSafari.app目录下,找到MobileSafari这个执行文件

ldid -e MobileSafari >> MobileSafari.xml

2.打开MobileSafari.xml细心看看,好多的私有key。不过不必天真,Code signing Entitlements若出现了私有key,是不允许上架的。在MobileSafari.xml添加get-task-allow这个key,并赋值为true,保存退出
get-task-allow

ida 7.0 for mac 调试APP_第1张图片
1111.png

3.对MobileSafari进行重签名:

ldid -SMobileSafari.xml ./MobileSafari 

三.将脱壳的二进制文件用ida打开

然后选择刚才要调试的app

1.Debugger -> Select debugger  选择 Remote iOS debugger
2.Debugger -> Process options 里面有两个选项Application 
,inputfile
ida 7.0 for mac 调试APP_第2张图片
E97BD1BC-A683-4EAF-8473-FB5CB656BAB7.png

3.找到你要下断点的位置


ida 7.0 for mac 调试APP_第3张图片
05194A3C-22CF-485A-975F-6DBB927406CA.png

4.然后Debugger ->Start process
就可以调试了, 操作, 然后触发断点就可以调试了

四.常用指令

F7 step in 

F8 setp

F9 run

F4 run into cursor

基本就这样了

你可能感兴趣的:(ida 7.0 for mac 调试APP)