05-初识Mach-O
目录
逆向APP的思路
-
界面分析
- Cycript、Reveal
-
代码分析
- 对Mach-O文件的静态分析
- MachOView、class-dump、Hopper Disassembler、ida等
-
动态调试
- 对运行中的APP进行代码调试
- debugserver、LLDB
-
代码编写
- 注入代码到APP中
- 必要时还可能需要重新签名、打包ipa
class-dump
顾名思义,它的作用就是把Mach-O文件的class信息给dump出来(把类信息给导出来),生成对应的.h头文件
官方地址:http://stevenygard.com/projects/class-dump/
下载完工具包后将class-dump文件复制到Mac的/usr/local/bin目录,这样在终端就能识别class-dump命令了
- 常用格式
- class-dump -H Mach-O文件路径 -o 头文件存放目录
- -H表示要生成头文件
- -o用于制定头文件的存放目录
- class-dump -H Mach-O文件路径 -o 头文件存放目录
Hopper Disassmbler
Hopper Disassmbler能够将Mach-O文件的机器语言代码反编译成汇编代码、OC伪代码或者Swift伪代码
常用快捷键 Shift + Option + X 找出哪里引用了这个方法
命令行工具
file:查看Mach-O的文件类型
|
|
otool:查看Mach-O特定部分和段的内容