最近迷上了 iOS越狱开发 因为曾有人说过:iOS逆向 你看到的是一片天,而正向开发 看到的是一口井。
准备工作
- 一部安装了 openSSH 和 cycript 的越狱 iPhone 或者 iPad。
- Dumpdecrypted工具 下载地址
- Hopper 4 (分析app工具) 链接: https://pan.baidu.com/s/1nvDbNoX 密码: n2x1
开始(步骤)
1、先打开 要砸壳的APP (比如 boss 直聘)
在 终端 输入 ssh root@手机的IP地址 (跟Mac 必须在同一网络下并且能ping 通这个ip)
2、通过 ps -e 查看进程,找到要砸壳的app 地址 并记录下来。
3、通过 cycript -p 注入进程(cycript是混合了objective-c与javascript语法的一个工具,让开发者在命令行下和应用交互,在运行时查看和修改应用)
我上面的进程编号 为:2844
cycript -p 2844
如果终端显示 cy# 就说明注入成功了。
4、再输入
[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory
inDomains:NSUserDomainMask][0]
这个开发过iOS App 的会有印象,没错,就是获取手机应用中的Documents 文件夹
正确的情况下会返回(copy下来)
#"file:///var/mobile/Containers/Data/Application/FE97FF9D-2647-4FB5-8967-208E99748B13/Documents/"
5、下面我们把榔头 放进App中
新建终端窗口
scp dumpdecrypted.dylib的地址 root@手机的ip:第4步的Documents(例如:/var/mobile/Containers/Data/Application/FE97FF9D-2647-4FB5-8967-208E99748B13/Documents)
6、新建终端
ssh 连接手机ip
cd 到 Documents 中 通过下面命令开始“砸”
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib 后面的是第二步获取的地址(例如:/var/mobile/Containers/Bundle/Application/786219BC-3B67-406A-9018-0F7D5467E47F/BossZP.app/BossZP)
如果显示killed:9 说明你的 iOS 版本是9.3.2以上的版本,解决方案请戳这里
7、砸过会生成一个 .decrypted的文件 我们需要把它移动到 Mac 中。
scp root@手机ip:/var/mobile/Containers/Data/Application/9C376783-E2FA-4B5C-8167-538D5C2FE31A/Documents/wifikey.decrypted (decrypted的文件路径)/Users/hahaha/Documents/cracktools/(拷贝到的路径)
8、把 class-dump 拷贝到 /usr/local/bin 目录下
class-dump -H (decrypted的路径) -o (放置的路径)
成功后如图
9、通过pp助手下载 boss 直聘 然后 去包中找到 BossZP 这个文件拉到hopper 中 如图:
10、通过 .h 和 hopper 中的功能 来 分析 boss直聘了。
举个例子: