学 iOS 逆向之前,想必是了解或熟悉了 Android 逆向或 iOS 开发。其实 iOS 逆向跟 Android 逆向有很多相同点,毕竟是同属于手机操作系统,同属于 APP 嘛。其它就不多说了,这是第一篇文章,后面会出一个系列,加油!
测试设备
大家都知道苹果的系统是比较封闭的,iOS 系统不比 Android 系统,它不是开源的,目前市面上也没有合适 iOS 模拟器可以用来代替真机来做测试。不过 Mac OSX 倒是有黑苹果可以弄。
所需要准备的硬件
1、一台 iPhone 或 iPad,型号无要求,iOS 系统版本在 iOS 11 以上,且能越狱。
2、一台苹果电脑,MacOS 版本在 macOS 10.15 以上。
苹果手机
有测试机且可越狱,nice ! 没有那就去淘。
建议上某宝上买二手 9。成新的 iPad(iPad 比 iPhone 要便宜)
有条件也可以直接买一台新的(京东、苹果官网、苹果实体店等,要确保能越狱)
iOS 设备中最便宜的型号为 iPad(极力推荐),如果是手机建议买 iPhone X 以上的型号(非硬性要求)
必须满足 iOS 系统版本在 iOS 11 以上,且能越狱(硬性要求)
苹果电脑
苹果电脑,已经有那就最好了,没有可以买(不建议买二手的,推荐买台当下最新款的 mbp)
不买又没有,那我们上黑苹果 ๑乛◡乛๑
VMware 安装黑苹果 所需材料
a. MacOS系统固件(cdr的后缀名,推荐安装macOS Catalina的最新版本)
https://blog.csdn.net/qq_41855420/article/details/102750055
https://apps.apple.com/cn/app/macos-catalina/id1466841314
b. VMware虚拟机(推荐安装最新版)
https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html
c. Unlocker(解锁文件)
https://github.com/theJaxon/unlocker
账户
很多人嫌麻烦测试时喜欢填自己主要在用的信息(手机号、账户、个人信息 等),建议去弄个小号,测试的跟自己在用的东西分开。
1、测试专用的苹果账户 1,中国地区的。(注册需要手机号跟邮箱账号,可以用小号的)
2、测试专用的苹果账户 2,非中国地区的,美国(最好是这个)、德国 等等。(这个百度去查怎么 get 一个非中国地区的苹果账户)
3、有条件的,可以弄个苹果开发者账号
工具(重要:欢迎补充更新)
需要安装的工具,我简单列了一个表,欢迎各位大佬来补充更新。
工具怎么安装和使用,就不说了。
【腾讯文档】iOS逆向工具集-v1.0:
https://docs.qq.com/sheet/DTmlwWE5Geklxc0pu
抓包测试
工具呢,自己查资料怎么安装和怎么使用。都弄好之后,可以做一个小测试,比如抓 App Store 这个 APP 的包,如果能抓到说明相关工具都安装到位了(之前还要安装 burp 证书,在 iOS 设备上)。这个就自己测试了。
一个简单逆向实例(砸壳)
这里可以拿微信当做目标,去 dump 它的头文件。
基本上可以参考我以前写过的一篇文章,这个也是自己去测试了。
找 APP 的沙盒目录除了用 cycript,还可以用 filza 这个 APP,大致思路 是
把编译好的 dumpdecrypted.dylib 文件传到目标 APP 的沙盒目录,然后砸壳,砸壳过程可能需要点时间,再生成的 .decrypted 文件传到电脑上,用 class-dump 去 dump 出头文件。
App Store 里的应用 dump 不出头文件来??- XiaoYue97
https://bbs.ichunqiu.com/thread-29210-1-1.html
iOS 逆向: dumpdecrypted 砸壳记 - veryitman(这篇说的更详细一点)
http://www.veryitman.com/2018/06/07/iOS-%E9%80%86%E5%90%91-dumpdecrypted-%E7%A0%B8%E5%A3%B3%E8%AE%B0/
坑:现在 dumpdecrypted 编译后还需要加签名,不然会导致后续砸壳失败,需要一个苹果开发者账号(个人版一年 99 美元,O(∩_∩)O哈哈~)
所以我们尝试用其它工具去砸壳,或者想办法得到一个编译及签名好的 dumpdecrypted。
这里定一个小挑战吧,大家可以去试试砸壳,然后写篇技术文章或笔记。
文章内容就是 iOS 各种砸壳方法 (标题请自拟)
本文不讲实操部分喔,各种东西可以上百度了解了解。٩(๑❛︶❛๑)۶
学习方法
1、看书籍(不仅仅是看逆向的,还有开发和编程的)
2、看视频(可能免费的资料会很少、可以看看收费的或国外的)
3、看文章(各大论坛和公众号、国内的和国外的)
4、多交流(去找大佬和跟自己技术差不多的人探讨问题)
5、多练手(实战,钻研)
6、多写写(学习笔记、遇到的问题、技术文章)
学习资源(重要:欢迎补充更新)
同样简单列了一个表,欢迎各位大佬来补充更新。
【腾讯文档】iOS逆向学习资源小记
https://docs.qq.com/sheet/DTkx3S2xLclVITm1D
最后安利一首歌,超好听,歌名:绝世舞姬
本文始发于微信公众号(信安之路):iOS 安全之 iOS 逆向环境准备
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论