目录

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用于制定头文件的存放目录

Hopper Disassmbler

Hopper Disassmbler能够将Mach-O文件的机器语言代码反编译成汇编代码、OC伪代码或者Swift伪代码

常用快捷键 Shift + Option + X 找出哪里引用了这个方法

命令行工具

file:查看Mach-O的文件类型

1
file  文件路径

otool:查看Mach-O特定部分和段的内容