iOS 逆向工程 app安全 网络安全

iOS逆向-THEOS

2018-09-23  本文已影响2人  相关函数

安装THEOS

安装theos之前需要先利用brew安装一下ldid。命令brew install ldid

为了使nic.pl命令能够在全局使用,在.bash_profile的中配置环境变量

export THEOS=~/theos
export PATH=$THEOS/bin:$PATH

clong theos

$ git clone --recursive https://github.com/theos/theos.git $THEOS

使用theos

在需要创建项目的目录下使用nic.pl命令。

nic.pl

选择13,创建iphone/tweak项目。根据提示填写项目信息。

主要填写的以上几项 其他的一律回车跳过即可。创建完成之后的项目目录:

tweak dir

使用nic.pl的时候,设置的环境变量不生效的可能原因以及解决办法

如果安装完成之后不能全局调用nic.pl,需要使用source .bash_profile或者重启terminal使环境变量生效。如果默认使用.bash终端,环境变量的优先级为/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc如果使用了.zsh,你会发现在.bash_profile中配置的环境变量在下次重启终端的时候并不会起作用,因为.zsh不会执行.bash_profile,如果要使下次重启终端的时候这些环境变量生效则需要在.zshrc中重新配置,或者在启动.zshrc的时候调用一下source .bash_profile

.zsh使用.bash_profile中的环境变量

开始tweak项目

配置makeFile文件

在makeFile中配置环境变量(ssh访问iPhone的方式)

编写tweak.xm

hook代码编写在%hook%end中间。

tweak代码编写

%hook后面跟要hook的类名,中间是要hook的方法名。方法名可以通过class-dump获取的头文件中查找。

编写完成之后使用make命令编译成dylib动态库,make package命令将动态库和plist打包成一个deb格式的插件, make install命令通过ssh方式连接iPhone,借助Cydia软件安装到手机中。

手机中安装deb插件的目录为:


deb插件目录

所以当我们需要卸载插件的时候直接在Cydia中卸载即可。

笔记来自 www.520it.com 小码哥iOS逆向

上一篇 下一篇

猜你喜欢

热点阅读