UIKit等系统库的Mach-O文件查找
2018-10-16 本文已影响13人
进击者
方法一:
1.找到所有系统库文件地址
从 iPhone OS 3.1 开始,所有的系统库都打包成一个文件:dyld_shared_cache_xxx ,其中 xxx 表示具体的架构,此文件位于:/System/Library/Caches/com.apple.dyld 目录。
2.文件解压
内存中的系统库文件,需要dyld文件解压
2.1先在 https://opensource.apple.com/tarballs/dyld/下载最新的dyld文件。
2.2进入launch-cache下,修改dsc_extractor.cpp文件的main函数。将main函数前的#define 0改成#define1
2.3生成可执行文件
clang dsc_extractor.cpp dsc_iterator.cpp -lstdc++ -o dsc_extractor
2.4拷贝/System/Library/Caches/com.apple.dyld缓存文件,执行命令
./dsc_extractor ./dyld_shared_cache_armv7s ./output_dir
方法二:
利用Hopper Disassembler工具打开dyld_shared_cache_xxx缓存文件,就可以找到UIKit等系统库
屏幕快照 2018-10-16 下午4.32.52.png