iOS反编译

转:https://blog.csdn.net/qq_26341621/article/details/54140018

内容大体框架:

让目标程序破茧而出 -- dumpdecrypted
运行时分析 -- cycript
追踪神器 -- logify
反汇编工具 -- hopper
断点调试工具 -- lldb+debugserver
注入工具 -- insert_dylib + install_name_tool

现在仅讨论代码层面的反编译

1、反编译工具

(1)class-dump

主要用来反编译一个库文件或者app的方法名、属性等声明(即.h文件,强大的是反编译出来的.h不仅仅包含头文件中的声明,.m中的function方法名称也同样能够反编译出来)。class-dump的安装在前文中有详细描述,这里不再赘述。

(2)IDA

主要用来反编译库文件的实现(当然方法声明同样能够反编译出来,用class-dump主要是更加形象,有针对性),这个反编译工具非常强大能够将函数的实现及逻辑关系、流程统统显示出来,弊端就是反编译出来的内容为汇编语言,需要一定汇编基础的才能看懂。比较头疼。

(3)Hopper Disassembler

与IDA功能相似,主要功能都是反编译查看方法的实现,这个软件的功能相对于IDA来说,可读性要强很多,反编译出来的内容类似于汇编与OC的运行时的结合体,相对比较容易看出方法的具体实现。

笔者个人比较喜欢用1和3来完成反编译过程。

各个软件的下载地址:

(1)class-dump

http://stevenygard.com/projects/class-dump

(2) IDA

https://www.hex-rays.com/products/ida/support/download_demo.shtml

(3)Hopper

https://www.hopperapp.com/download.html?

https://blog.csdn.net/HANYAHUINO/article/details/79986731

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 工具介绍 class-dump class-dump是用来dump目标文件的类信息的工具。它利用Objective...
    临川慕容吹雪阅读 1,546评论 1 3
  • 前言 前一阵进行了iOS的技术分享,将以前整理的很多技术文章和理解的东西进行了下梳理,输出一个iOS反编译过程的思...
    MiAlexFeng阅读 1,940评论 3 5
  • 工具:class-dump、hopper 获取APP二进制文件:.ipa文件解压缩后,右键显示包内容,获取二进制文...
    eAssh阅读 1,918评论 0 0
  • 在 iOS APP 开发过程中,可能以为疏忽或者是工程时间赶,安全性这一方面往往会被忽视 只需要拿到 ipa 文件...
    yks慷阅读 11,403评论 8 10
  • 静态分析是指对二进制包进行反编译,分析静态的代码逻辑。 本文内容包括:app 砸壳过程、工具和环境的坑、导出 OC...
    黑超熊猫zuik阅读 3,830评论 0 51