一、目标
今天我们介绍一下搭建IOS逆向开发环境,由于现在很多关键算法Android App都放到so里面去了,所以现在ios逆向和Android逆向的难度差不多站在一个水平线上了。而且由于ios没有第三方壳,可能在某些情况下ios反而要简单一点。
二、步骤
先越狱
这里我们使用之前编译的 AltDeploy Iphone越狱2020来越狱
屏蔽系统更新
测试手机要固定在可以越狱的环境,所以要禁止更新系统。 访问 https://ibeta.me/ ,安装tvOs的描述文件来禁止系统更新。
Charles抓包
首先把代理设置成Charles所在的机器,然后访问 chls.pro/ssl 来安装证书,对于iOS10之后的系统版本,需要进行 设置 → 通用 → 关于本机 → 证书信任设置 来对根证书进行信任操作。
有些App会检测是否有代理,在Android下我们使用 Drony 创建一个Vpn来解决。在ios下也有类似的软件 Shadowrocket,俗称小火箭。
不过比较坑的是,中国区的App Store下载不到真正的小火箭,全是骗子App假冒的。需要用美国区的Apple ID来登录才可以下载到。
下面分享两个目前可用的美国区的账号
账号1:[email protected] 密码:Appledicom123
账号2:[email protected] 密码:Appledicom126
切记勿登录iCloud,只拿这个账号登录 App Store,然后下载完之后就退出这个账号。
安装OpenSSH
OpenSSH差不多可以实现 Android里面的adb shell的功效,所以必须要装,在 Cydia 或者 Sileo 中搜索安装即可。
可以参考 https://www.jianshu.com/p/30a8694e05dc 来实现免密码登录。
安装frida
在 Cydia 或者 Sileo 中添加软件源地址 https://build.frida.re,就可以找到Frida的安装包了,目前使用的版本是 14.x
安装完毕之后,在电脑上运行 frida-ps -Uai 就可以看到手机中的进程了
砸壳
Ios的App目前只有官方加的壳,目前比较常用的脱壳工具就是 https://github.com/AloneMonkey/frida-ios-dump
安装好之后,在安装目录下运行 python dump.py xxx ,就可以在当前目录下生成脱壳之后的ipa。
直接用zip工具解压这个ipa,就可以把可执行文件拖到IDA里面细嚼慢咽了。
三、总结
Ios逆向的基本环境就先介绍到这里,后面我们再通过实例来实际体验下和Android的异同。
关注微信公众号,最新技术干货实时推送
文章作者 奋飞
上次更新 2020-12-28
许可协议 奋飞安全原创,转载请注明出处。