iOS 安全之 iOS 逆向环境准备

  • A+
所属分类:逆向工程

学 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 逆向环境准备

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: