iOS高级进阶

iOS 逆向基础总结

2019-12-02  本文已影响0人  南城同學
步骤简化工具

MJAppTools

编译放在手机目录,usr —> bin中

一. 连接工作

1. OpenSSH 连接

  1. 通过Cydia安装OpenSSH;
  2. 使用OpenSSH远程登录手机.
1. WIFI登录,同一局域网内(通常使用秘钥登录);
  1. 终端输入:sshroot@10.1.1.168(手机IP)(这里的服务器是手机);
  2. 初始密码:Alpine.
2. USB登录
  1. 下载usbmuxd,主要用到里面的一个pthony脚本;
  2. 将iPHone的22端口(SSH端口)映射到本地MAC的10010端口;
  1. 终端新建一个窗口,SSH登录到MAC10010端口(以下两种方式都可以).

二. 界面分析

1. 使用Cycript 调试APP

1)使用Cydia安装Cycript 和adv-cmds;

2)可以使用语法查看app的 BunldID 、控制器名称 等 (李明杰有一个工具).

2. 使用Reveal 可视化工具 查看APP 界面结构

1)在MAC和iPhone上安装 Rreveal;
2)手机打开对应app的界面,会在mac上的reveal上显示对应的界面.


三. 代码分析

1)MachOView 查看 Mach-O的结构;

2)Hopper 可以查看APP/UIKit等的伪代码;

3)class-dump 导出Mach-O的头文件.

1. 解析出头文件
1)拿到Mach-O文件;
2)判断是否需要脱壳

方法一:

方法二:MachOView

方法三:Clutch -i

3)脱壳,工具:Clutch 、dumpdecryted (Clutch脱壳失败后用dump~)
4) 得到Mach-O文件, 使用class-dump 获取头文件(cd 到WeCheat文件夹下)

四. 开始逆向(以微信为例)

1. 工具: Theos 下载配置;
2. 拿到应用的唯一标识 ~root#下;

方法一:Clutch -i 的时候就可以拿到
方法二:

3. 新建一个终端窗口,新建一个WeChat文件夹,放入Mach-O文件和Headers文件夹;
4. cd到WeChat;
5. 新建Tweak项目;
6. 将创建好的Tweak项目拖拽到subline中;
7. 在MakeFile中配置环境变量,每次都要写,所以通常添加到用户配置文件中;
8. 在Tweak.xm 中写代码;格式:
注意:多文件路径配置
9. Logos 常用语法;
10. 编译安装

来到Tweak.mk 文件目录下:

11. 插件卸载
上一篇 下一篇

猜你喜欢

热点阅读