一、简介
class-dump 是进行 iOS
逆向开发常用的一款工具,其主要作用是导出 App
的头文件内容。根据这些头文件可以大致分析出 APP
的结构和内容。
二、安装
2、下载 class-dump-3.5
后,将 .dmg
文件里的 class-dump
复制到 /usr/local/bin
下:
(注意:从 Mac OS X 10.11
开始,/usr/bin
文件已经不能写入了,管理员权限也不行,以前是放到 /usr/bin
文件里面,但是现在不允许写入了,所以转放到 /usr/local/bin
文件即可,我们平常用的 cd 、vim ...
等命令就在 /usr/bin
里面)
3、测试是否安装成功,打开终端输入命令
$ class-dum
下面这样输出就是成功了,否则会报 not found
错误
dengzemiaodeMacBook-Pro:~ dengzemiao$ class-dump class-dump 3.5 (64 bit) Usage: class-dump [options] <mach-o-file> where options are: -a show instance variable offsets -A show implementation addresses --arch <arch> choose a specific architecture from a universal binary (ppc, ppc64, i386, x86_64, armv6, armv7, armv7s, arm64) -C <regex> only display classes matching regular expression -f <str> find string in method name -H generate header files in current directory, or directory specified with -o -I sort classes, categories, and protocols by inheritance (overrides -s) -o <dir> output directory used for -H -r recursively expand frameworks and fixed VM shared libraries -s sort classes and categories by name -S sort methods by name -t suppress header in output, for testing --list-arches list the arches in the file, then exit --sdk-ios specify iOS SDK version (will look in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS<version>.sdk --sdk-mac specify Mac OS X version (will look in /Developer/SDKs/MacOSX<version>.sdk --sdk-root specify the full SDK root path (or use --sdk-ios/--sdk-mac for a shortcut)
三、使用
- 命令格式
// 将导出的头文件直接在终端输出 $ class-dump [Mach-O文件路径 | Jailbreak.app] 例如: $ class-dump /Users/dengzemiao/Desktop/Jailbreak/Jailbreak $ class-dump /Users/dengzemiao/Desktop/Jailbreak/Jailbreak.app // 将导出的头文件存放到指定文件夹 $ class-dump -H [Mach-O文件路径 | Jailbreak.app] -o 头文件存放目录 例如: $ class-dump -H /Users/dengzemiao/Desktop/Jailbreak/Jailbreak -o /Users/dengzemiao/Desktop/Jailbreak/Test $ class-dump -H /Users/dengzemiao/Desktop/Jailbreak/Jailbreak.app -o /Users/dengzemiao/Desktop/Jailbreak/Test • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 8 • 9 • 10 • 11 • 12 • 13
1、获得一个 Mach-O
执行文件或 .app
的 应用程序
文件,可以找个 ipa
解压得到,爱思助手
可以下载 ipa
,或者 Xcode
新建一个项目编译得到。
2、新建了一个空项目 Jailbreak
,Command + Shift + B
编译一波,找到 Products -> Jailbreak.app
,右键 Show in Finder
3、可以直接使用 Jailbreak.app
这个 应用程序
文件的,他会自己找到里面的 Mach-O
进行执行,拷贝放到桌面文件,方便使用路径
4、也可以将这个 Jailbreak
这个 应用程序
文件的 Mach-O
格式的可执行文件拷贝出来,放到桌面存放起来,等下使用路径方便