Macho文件(Mach Object的缩写)常见的格式:

  • 可执行文件
  • .o文件(目标文件)/a 静态库文件.其实就是N个.o文件的集合
  • 动态库文件(dylib/framework)
  • 动态连接器
  • DSYM

 

我们首先使用MachoView,去查看App的核心可执行文件的内部,这里以微信App为例

iOS逆向之旅(基础篇) — Macho文件

iOS逆向之旅(基础篇) — Macho文件

取出微信的二进制可执行文件(Macho文件) ,打开MachoView进行分析

iOS逆向之旅(基础篇) — Macho文件

首先能看到的就是这个App包含2个架构(Arm64 和 Armv7)

接着展开,Arm64架构,看一下里面的东西

iOS逆向之旅(基础篇) — Macho文件

其实通过英语,都能简单知道大概这是啥,里面的objc_methodname,objc_classname,里面记录了App的各种类名和方法名。

我猜测苹果查看是不是马甲包,除了二进制的相似度之外,还会根据这里的类名和方法名进行校准。

其他后面用到再解释咯

 

相关文章: