ios hook 小试牛刀(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tanzui/article/details/77965080

刚学OC,文中有任何不妥的还请指教包涵

环境搭建

系统:Mac OS 10.12.6(没有apple的电脑也是可以的,但是环境搭建会比较蛋疼,实在不行可以装个虚拟机,具体教程可以网上搜索)

xcode:8.3.3

ipad mini : 7.0.4

开发工具

xcode

IOSOpenDev(或者另一位大神基于IOSOpenDev修改的MonkeyDev,很好用)

theos

逆向分析工具

Hopper Disassembler(或者ida)

Reveal

cycript

debugserver

先说 IOSOpenDev 的安装吧

设置环境变量

vim ~/.bash_profile

填入以下

export THEOS=/opt/theos
 
export PATH=$THEOS/bin:$THEOS/include:$THEOS:$PATH


安装 iOSOpenDev-1.6-2.pkg(下面会提供链接)

全程下一步非常简单

然后是 theos

sudo git clone --recursive https://github.com/theos/theos.git /opt/theos

设置Specifications文件夹

附件链接会提供

里面应该有8个文件,

iPhoneOS开头的四个文件放到/应用程序/Xcode/Content/Developer/Platforms/IphoneOS.platform/Developer/Library/Xcode/Specifications文件夹下(如果没有,请自己创建一个),

iPhone Simulator 开头的另外四个文件放入/应用程序/Xcode/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Specifications文件夹下(如果没有,请同样创建一个)。

另外在/应用程序/Xcode/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/文件夹下创建usr文件夹,usr文件夹下再创建一个名为bin的文件夹

现在可以打开xcode了 多个xcode的话可以用以下命令指定默认xcode


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

如图所示安装成功后新建项目就会多出来 IOSOpenDev 的选项

下面新建 Logos Tweak 项目


新建好项目 


ios 设备 Cydia 搜索 Cydia Substrate 安装


ISO 设备 Cydia 安装 openssh

并和电脑保持在同一局域网

电脑执行命令

iosod sshkey -h IOS设备IP

第一个提示问是否设置密码 直接回车

然后输入设备密码 ssh 默认没改的话是 alpine

完成之后 执行 ssh root@iOS设备ip

不提示输入密码直接连接上的话就OK了

control + d 退出 ssh

电脑执行命令

sudo scp root@IOS设备ip:/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate /opt/theos/lib/libsubstrate.dylib

下载完后 设置 xcode (ios版本太低导致xcode里没有的话有需要我可以另开一篇文章说一下怎么搞,或者网上也能搜索到到)

General 项


build Settings 项



设置完毕后 xm 文件输入代码 如图


代码

#import <UIKit/UIKit.h>

%hook SpringBoard

- (void)applicationDidFinishLaunching:(id)application{
%orig;

UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"Welcome" message:@"HelloWorld!" delegate:nil cancelButtonTitle:@"Thanks" otherButtonTitles:nil];
[alert show];
}
%end

保存之后 xcode 选择 Product - Build For - Profiling 会自动打包安装并且重启 iOS 设备 SpringBoard 生效

重启之后会发现弹出了一个消息框说明成功了

卸载的话可以去 Cydia 里卸载


附件链接:(设置了一个积分,希望有几分的同学能支撑下,没有的话按照上面的名字搜索应该也是可以找得到的)

http://download.csdn.net/download/tanzui/9976907

猜你喜欢

转载自blog.csdn.net/tanzui/article/details/77965080