ios逆向工具MonkeyDev简介

时间:2022-05-06
本文章向大家介绍ios逆向工具MonkeyDev简介,主要内容包括MonkeyDev简介、安装MonkeyDev、使用、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

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.rb

你可以通过以下命令选择指定的Xcode中进行安装:

sudo xcode-select -s /Applications/Xcode-beta.app

默认安装是:

xcode-select -p

然后执行安装命令:

it clone https://github.com/AloneMonkey/MonkeyDev.git
cd MonkeyDev/bin
sudo ./md-install

当然,不用,运行下面的命令卸载命令:

sudo ./md-uninstall

如果没有发布特殊说明,使用如下命令更新即可:

sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-update)"

使用