Theos 安装与配置

尝试 iOS 逆向开发,由于 iOSOpenDev 已停止维护且坑太多,于是使用 theos ,网上充斥各种老旧教程,还是自己按照官方文档配置并填坑靠谱。

0x01 安装依赖

首先你要安装有 Homebrew

执行命令:brew install ldid dpkg


0x02 安装 theos

安装非常简单,安装路径随个人喜好,只需要几行命令:

1
2
3
git clone https://github.com/theos/theos.git ~/.theos
cd ~/.theos
git submodule update

0x03 配置环境

添加以下配置到bashprofile 或者zshrc ,这就要看你用的哪个了。

1
2
3
# theos
export THEOS=~/.theos
export PATH=~/.theos/bin/:$PATH

修改~/.theos/makefiles/package/deb.mk

1
2
3
4
5
_THEOS_PLATFORM_DPKG_DEB_COMPRESSION ?= lzma    # 修改前
_THEOS_PLATFORM_DPKG_DEB_COMPRESSION ?= Zgzip # 修改后

$(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r $(_THEOS_PLATFORM_DPKG_DEB) -Z$(_THEOS_PLATFORM_DPKG_DEB_COMPRESSION) -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)"$(ECHO_END) # 修改前
$(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r $(_THEOS_PLATFORM_DPKG_DEB) -b$(_THEOS_PLATFORM_DPKG_DEB_COMPRESSION) "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)"$(ECHO_END) # 修改后

至于修改的原因是因为 lzma 已经弃用,改用 gzip ,但这个不是最佳的 workaround ,参考: #211


0x04 测试

执行命令:nic.pl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
NIC 2.0 - New Instance Creator
------------------------------
[1.] iphone/activator_event
[2.] iphone/application_modern
[3.] iphone/cydget
[4.] iphone/flipswitch_switch
[5.] iphone/framework
[6.] iphone/ios7_notification_center_widget
[7.] iphone/library
[8.] iphone/notification_center_widget
[9.] iphone/preference_bundle_modern
[10.] iphone/tool
[11.] iphone/tweak
[12.] iphone/xpc_service
Choose a Template (required):

出现以上结果,安装成功!