砸壳工具

iOS中的app,发布渠道一般都是App Store

App Store下载的APP全都是经过苹果加密过的ipa包。

而Apple会为了安全,给app加密(使用Apple ID相关的对称加密算法),这个过程俗称为:加壳,就像给app外部上加了一层壳。

而加密后的ipa包,是无法对其进行反编译的(需要对其进行解密才能反编译),也无法class-dump

  • 相关说明
    • 自己编译的项目没有加密,能够解析出来
    • 但是class-dump不能直接将App Store上的app的头文件导出来
      • 你只会导出CDStructures.h这个头文件
        • 而这里边基本是没有信息的
          • 所以需要用Dumpdecrypted去破壳后,才可以

想要破解分析之前,需要把这层壳砸破。

如何砸壳呢?就要先了解app运行机制:app程序运行起来都会直接在内存解密出原始代码

可以在越狱的设备里面通过内存dump方式提取解密后的程序,这种解密过程,也就是给app去壳的过程,又称为砸壳=破壳

  • 额外说明
    • 解密之后还需要手动恢复Mach-O头信息才能运行
    • 由于高版本非完美越狱里面,都没有删掉签名验证
      • 所以直接运行都会出现killed 9
        • 需要手动签名之后才能使用

有很多用于砸壳的工具,整理如下。

常见砸壳工具

  • dumpdecrypted
    • 一般配合Cycript使用?
  • clutch
  • frida-ios-dump
  • bfinject

results matching ""

    No results matching ""