0%

iOS 逆向工具 class-dump

简介

class-dump 是一个工具,它利用了 Objective-C 语言的运行时特性,将存储在 Mach-O 文件中的头文件信息提取出来,并生成对应的 .h 文件。

安装

可以在其class-dump 官网下载,将里面的 class-dump 直接放在/usr/local/bin 目录,并给个可执行权限即可 如果/usr/local/bin 没有添加到 PATH,请自行添加

如何使用 class-dump

class-dump -H Mach-O 文件路径 -o 头文件存放目录

Mach-O 文件

Mach-O 其实是 Mach Object 文件格式的缩写,是 mac 以及 iOS 上可执行文件的格式, 类似于 windows 上的 PE 格式 ( Portable Executable ) , linux 上的 elf 格式 ( Executable and Linking Format ) .
它是一种用于可执行文件、目标代码、动态库的文件格式。作为 a.out 格式的替代,Mach-O 提供了更强的扩展性。
但是除了可执行文件外 , 其实还有一些文件也是使用的 Mach-O 的文件格式 .
属于 Mach-O 格式的常见文件

  • 目标文件 .o
  • 库文件
    • .a
    • .dylib
    • Framework
  • 可执行文件
    dyld ( 动态链接器 )
    .dsym ( 符号表 )

也就是说 Mach-O 并非一定是可执行文件 , 它是一种文件格式 , 分为 Mach-O Object 目标文件 、Mach-O ececutable可执行文件、 Mach-O dynamically 动态库文件、 Mach-O dynamic linker 动态链接器文件、 Mach-O dSYM companion 符号表文件 , 等等 .

-------------本文结束感谢您的阅读-------------