ios逆向,tweak简洁使用教程

准备工作:

  • .爱思助手
  • .一台已越狱的iphone,并已安装cydia
  • . 安装Theos,安装教程就忽略了,Theos安装起来比较麻烦,主要是网络原因,这里提供一份绿色版本
    https://download.csdn.net/download/u010775335/86882617

tweak教程正式开始

  • 咱们先创建一个普通的xcode,demo工程,并且bundlerID设为"com.test.tweak".然后ViewController中添加如下代码:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
-(void)viewDidAppear:(BOOL)animated{
    [self bigun_test];
}
-(void)bigun_test{
    NSLog(@"12");
}
@end

运行起来,直接输出"12"

  • 接下来,我们通过tweak直接修改bigun_test函数
  • 假设你的thoes目录是"$THOES_HOME"
  • 那么创建tweak工程的代码就是如下了
终端执行命令
$THOES_HOME/bin/nic.pl

注意,不得在$THOES_HOME中运行,否则报错

在这里插入图片描述
选择"iphone/tweak",那个选项,也就是输入”17"

  • OK,tweak工程创建完毕,这里对工程进行一些必要的设置
  • 修改"tweak工程名.plist"文件,里面的bundleId改为"com.test.tweak“
    在这里插入图片描述
  • 打开爱思助手,并连接上iphone,通过爱思助手打开ssh通道
    在这里插入图片描述
  • 回到tweak工程,修改Makefile文件,在文件头部添加上述ssh配置
    如下添加
    “THEOS_DEVICE_IP”,
    “THEOS_DEVICE_PORT”,
    “ARCHS”
    在这里插入图片描述
    Hook代码编写
  • 修改Tweak.x代码,如下:
#import <UIKit/UIKit.h>
@interface  ViewController:UIViewController //为了使用self,否则编译不过
@end

%hook ViewController

-(void)bigun_test{
    UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"标题" message:@"恭喜hook成功" preferredStyle:UIAlertControllerStyleAlert];
    UIAlertAction *conform = [UIAlertAction actionWithTitle:@"确认" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        NSLog(@"点击了确认按钮");
    }];
    [alert addAction:conform];
    [self presentViewController:alert animated:YES completion:nil];
}

%end
  • 注意,这里用到了"<UIKit/UIKit.h>“,则需要在Makefile中添加对应framework,如下图
    注意格式是"tweak的工程名”+”_FRAMEWORKS"=UIKit
    在这里插入图片描述
    如果不添加framework,则会报类似以下的错误:
Tweak.x:39:5: error: use of undeclared identifier 'UIAlertView'

编译、打包、运行

  • 打开终端,cd到tweak根目录,运行命令
make clean && make package && make install

如无意外,则有以下日志
在这里插入图片描述
期间可能要输入两次ssh的密码

OK~,hook插件已编写及安装完毕,再次运行你的demo工程,你就会发现弹出一个窗口啦!

以下是常见错误及解决方法:
执行编译安装时提示以下报错

ssh: connect to host 192.168.1.102 port 22: Operation timed out

解决:
检查cydia中是否已安装open_ssh

猜你喜欢

转载自blog.csdn.net/u010775335/article/details/127667574