ios逆向开发 (五)、从clutch脱壳到class-dump获取.h源码

脱壳可以使用PP助手下载已经脱壳的应用,获取头文件可以不这么麻烦可以直接用MonkeyDev生成iOS逆向开发(六):MonkeyDev修改微信步数

1、clutch脱壳

脱壳即脱去app的二进制加密外壳,从而得到这个app的ipa包的过程。有一些第三方的工具,这里介绍一款叫clutch的东西,使用简单易上手。 首先去GitHub下载clutch:https://github.com/KJCracks/Clutch/releases,然后用xcode编译得到build 文件夹下的clutch,然后拷贝进手机

ios逆向开发 (五)、从clutch脱壳到class-dump获取.h源码_第1张图片
clutch脱壳

ztq:~ zhoutengquan$ scp /Users/zhoutengquan/Downloads/Clutch-master/build/Clutch [email protected]:/usr/bin
[email protected]'s password: 
Clutch                                                                                                100%  441KB   1.5MB/s   00:00    
ztq:~ zhoutengquan$ 

进入目录,查看是否可以使用,没有权限自己赋予权限

ztq:~ zhoutengquan$ ssh [email protected]
[email protected]'s password: 
ztqs-iPhone:~ root# cd /usr/bin
ztqs-iPhone:/usr/bin root# Clutch 
2019-04-25 15:11:52.404 Clutch[1247:144047] command: None command
Usage: Clutch [OPTIONS]
-b --binary-dump                 Only dump binary files from specified bundleID
-d --dump                        Dump specified bundleID into .ipa file
-i --print-installed             Prints installed applications
   --clean                       Clean /var/tmp/clutch directory
   --version                     Display version and exit
-? --help                        Displays this help and exit
-n --no-color                    Prints with colors disabled
-v --verbose                     Print verbose messages

Clutch -i的命令找到我们需要砸壳的App的bundleID,,Clutch -d bundleID,然后会告诉你砸壳之后的.ipa文件的路径。


ztqs-iPhone:/usr/bin root# Clutch -I
2019-04-25 15:12:33.874 Clutch[1248:144102] command: Prints installed applications
Installed apps:
...
4:   微信 
...

ztqs-iPhone:~ root# Clutch  -d com.tencent.xin   
...
Zipping WeChatSiriExtensionUI.appex
DONE: /private/var/mobile/Documents/Dumped/com.tencent.xin(Clutch).ipa
Finished dumping com.tencent.xin in 43.7 seconds

2、class-dump获取.h文件

class-dump主要是用来查看脱壳之后的Mach-O文件的所能暴露出来的头文件
下载安装class-dump-3.5.dmg 链接:class-dump-3.5.dmg
下载完成以后双击.dmg的文件,将里面的class-dump拷贝到/usr/local/bin路径下(快捷键 shift + command + G 弹出前往文件夹)

ios逆向开发 (五)、从clutch脱壳到class-dump获取.h源码_第2张图片
class-dump

打开终端,在控制台输入class-dump,显示如下表示配置成功

ztq:~ zhoutengquan$ class-dump
class-dump 3.5 (64 bit)
Usage: class-dump [options] 

反编译ipa的文件,ipa的文件不能直接被反编译,首先右键ipa的文件,选择打开方式,用解压工具UnRAR或者其他的能解压.rar的工具解压,解压后得到.app的文件最重要。
-H后面的就是.app文件的目录,在控制台运行下面的命令,就能得到ipa文件里面的所有的头文件

class-dump -H XXX.app -o /Users/wuyong/Desktop/未命名文件夹

ios逆向开发 (五)、从clutch脱壳到class-dump获取.h源码_第3张图片
.h文件

你可能感兴趣的:(ios逆向开发 (五)、从clutch脱壳到class-dump获取.h源码)