class-dump,就是用來dump目標(biāo)對(duì)象的class信息的工具八毯。它利用Objective-C語言的runtime特性,將存儲(chǔ)在Mach-O文件中的頭文件信息提取出來,并生成對(duì)應(yīng)的.h文件献酗。class-dump的對(duì)象是Mach-O格式的二進(jìn)制文件,如Framework的庫文件和App的可執(zhí)行文件坷牛。
1.定位App的可執(zhí)行文件
用Xcode自帶的plutil工具查看Info.plist中的“CFBundleExecutable”字段:
cd /Users/liu/1/kext\ Wizard.app/Contents
plutil -p Info.plist | grep CFBundleExecutable
2.class-dump可執(zhí)行文件
把SMSNinja的頭文件class-dump到“/Users/liu/1/test”下罕偎,并將頭文件內(nèi)容按名字排序,命令如下:
cd /Users/liu/1/kext\ Wizard.app/Contents/MacOS
class-dump -S -s -H Kext\ Wizard -o /Users/liu/1/test