MachO逆向支持吗

极客

MachO逆向支持吗?聊聊我折腾iOS逆向这几年的真实感受

最近后台又收到好几个小伙伴的私信,问的最多的一个问题就是:MachO逆向支持吗?说实话,看到这个问题我第一反应是笑了,因为这个问题背后其实藏着很多刚入门iOS逆向的朋友的困惑,今天正好有点时间,就坐下来跟大家好好唠唠这个话题,把我自己踩过的坑、趟过的路都分享出来,希望能帮到正在犹豫或者正在挣扎的你。

MachO逆向支持吗

先说结论:MachO逆向当然支持,而且支持得相当成熟

我知道很多人问“MachO逆向支持吗”,其实心里想的是另一层意思——是不是很难搞?是不是工具很少?是不是学了也没啥用?

兄弟,你想多了。

MachO是苹果macOS和iOS系统上的可执行文件格式,跟Windows上的PE文件、Linux上的ELF文件是一个层级的东西,你要逆向iOS应用,绕来绕去最后都得跟MachO打交道,所以不是“支持不支持”的问题,而是“你必须得会”的问题。

我记得我刚开始学逆向那会儿,也是一头雾水,网上搜“MachO逆向支持吗”,出来的答案五花八门,有说要用IDA的,有说要用Hopper的,还有说直接用otool命令行就行的,当时我就想,能不能有人给我一个痛快的答案啊!

现在我自己可以很负责任地告诉你:MachO逆向不仅支持,而且生态还挺完整的。

工具链这块,真的不用太担心

说到MachO逆向支持吗这个问题,就不得不提工具,我给大家列一下我平时用得最多的几个:

静态分析方面,IDA Pro绝对是老大哥,对MachO格式的支持非常到位,反汇编出来的伪代码可读性也很强,当然正版价格不便宜,学生党可以考虑Hopper Disassembler,便宜不少,功能也够用,还有一个开源的radare2,命令行操作,上手曲线陡一点,但胜在免费。

动态调试方面,LLDB是标配,配合debugserver可以远程调试iOS设备上的进程,Frida就更不用说了,iOS逆向神器,hook方法、追踪调用、修改内存,简直不要太爽。

命令行工具,otool、nm、class-dump这些也都很好用,尤其是快速看一下MachO的头信息、符号表之类的,效率很高。

所以你看,工具这块根本不缺,缺的是什么?缺的是耐心和正确的学习方法。

我踩过的那些坑,你们就别再踩了

说真的,我刚开始搞MachO逆向的时候,犯过特别多蠢错误。—

第一个坑:以为越狱是必须的。 其实不一定啊兄弟们!现在很多静态分析根本不需要越狱,你拿个脱壳后的IPA文件就能分析,当然要动态调试的话,越狱设备确实方便很多。

第二个坑:上来就想逆向微信、支付宝。 别闹了,那些大厂App的防护做得跟铁桶似的,混淆、反调试、完整性校验一套一套的,新手上来就搞这些,除了打击自信心没有任何好处,先从自己写的小Demo开始,或者找一些简单的开源App练手。

第三个坑:不看官方文档。 苹果其实有MachO格式的官方文档,虽然写得比较枯燥,但看一遍真的能少走很多弯路,我当初就是急着上手,结果很多基础概念都是后来补的,特别痛苦。

MachO逆向支持吗?答案是支持,但你要有心理准备

我必须要说句实话,虽然MachO逆向支持得很完善,但这不代表它简单,iOS系统的安全机制越来越强,ASLR、代码签名、沙盒、指针认证(PAC)这些都在不断进化,你学逆向,其实是在跟苹果的安全团队赛跑。

但是反过来说,这也有好处——门槛高意味着竞争小,真正能把MachO逆向玩明白的人,在安全圈里还是很吃香的,不管是做安全研究、App加固、还是竞品分析,这门手艺都能派上用场。

给新手的几点建议

如果你看完上面这些,还是决定要学MachO逆向,那我给你几个真心建议:

  1. 先把MachO文件格式搞懂,Header、Load Commands、Segment、Section这些概念必须清楚,不然看工具输出就是天书。
  2. 学会用otool和nm,别看它们土,关键时刻比图形界面工具还管用。
  3. Frida一定要学,这个真的是iOS逆向的必修课,hook各种Objective-C方法和Swift函数,效率飞起。
  4. 多动手,少看视频,看十个小时教程不如自己动手逆一个小App。
  5. 加入社区,像看雪、FreeBuf这些地方有很多大佬分享经验,遇到问题别自己闷头搞。

最后说两句

回到最初的问题——MachO逆向支持吗?我的答案是:支持,而且支持得很好,但工具再好,也得看用工具的人,这条路不好走,但走通了之后,你会发现前面的风景真的很不错。

好了,今天就先唠到这儿,如果你也在学MachO逆向,或者对这个方向感兴趣,欢迎在评论区留言交流,我看到都会回的,咱们一起进步!

相关阅读推荐:


本文为原创内容,转载请注明出处,文中提到的工具和链接仅供参考,请遵守相关法律法规,勿用于非法用途。

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]