MonkeyDev简介
虽然是米国的苹果开发的的的我操作系统系统,但是要论越狱iPhone和逆向分析来说,那国内远胜于米国了,可能是国内很多相关的灰色产业链吧。在之前,我们想动态调试一个没有源码的应用程序,通常是要借助于THEOS,自己操作LLVM来动态连接到应用程序,然后再使用LLVM的调试命令,整个的过程是非常耗时和繁琐的。
不过在17年的时候,iOS逆向后起之秀AloneMonkey对这些常用的工具进行了一些整合,弄了一个极为方便的逆向调试平台MonkeyDev,这个平台集成了常用的库,工具,并且还可以更加方便的使用pod库来集成三方库。使用这个工具,逆向分析一下子变得容易了。
MonkeyDev主要包含四个模块:
Logos Tweak
使用theos提供的logify.pl工具将.xm文件转成.mm文件进行编译,集成了CydiaSubstrate,可以使用MSHookMessageEx和MSHookFunction来Hook OC函数和指定地址。
CaptainHook Tweak
使用CaptainHook提供的头文件进行OC 函数的Hook以及属性的获取。
Command-line Tool
可以直接创建运行于越狱设备的命令行工具。
MonkeyApp
这是自动给第三方应用集成Reveal、Cycript和注入dylib的模块,支持调试dylib和第三方应用,支持Pod给第三放应用集成SDK,只需要准备一个砸壳后的ipa或者app文件即可。
安装MonkeyDev
关于安装和使用可以查看官方Wiki文档,本文按照以下几个步骤来安装MonkeyDev环境。
1,安装最新的theos,安装命令如下:
sudo git clone --recursive https://github.com/theos/theos.git /opt/theos
2,安装LDID(如安装theos过程安装了LDID,跳过),命令如下:
brew install ldid
3,配置免密码登录越狱设备(如果没有越狱设备,跳过)
ssh-keygen -t rsa -P ''
ssh-copy-id -i /Users/username/.ssh/id_rsa root@ip
安装或者sshpass自己设置密码:
brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.
你可以通过以下命令选择指定的Xcode中进行安装:
sudo xcode-select -s /Applications/Xcode-beta.app
默认安装是:
xcode-select -p
网友评论