大土豆安全笔记 | 我,零基础,学iOS macOS安全

上周末发的红包好像被薅羊毛了,下次我发的时候设个暗号

有一些读者朋友跟我交流,说想一起研究iOS/macOS安全

我简单说一下我的情况,最早我是玩的Windows,想不到吧

大二那一年的暑假,我一个人在家里捣鼓了两个月,那时买不到正版的《0day2》,我就打印了一本,说真的,特痛苦,因为是黑白的,很多内存数据都看不清,这玩意单步调试就改的就是内存里一个字节,眼睛都快看瞎了,好在后来找到了一个彩色版本的电子书,拯救了我

后来因为专业课的原因,我开始学习安卓开发,有一次在吾爱破解上面找破解软件,找着找着我就看到了安卓逆向的帖子,所以就掉进移动安全的坑里了

再后来大家也都知道了,毕业后搞安卓APT,然后又搞应用漏洞

说回系统学习macOS安全这事,我每周照例记录进度和资料分享,只是我个人的规划,不是团队KPI,毕竟我现在只是一个卖鞋的,就这么简单

我的学习方式就是自己搭建知识体系,就像搞逆向,我会先学习开发,同样,我会学习macOS平台的各种知识

这周在研究的一个问题就是kernelcache的符号,大家有兴趣可以去翻前两天的文章《关于恢复kernelcache符号的问题》,我详细记录了我遇到这个问题后是如何思考与解决的

我刚开始学习,想到的方法肯定不是最好的,希望搞iOS系统安全的师傅们能多指点我一下

CVE-2020-27950,XNU内核信息泄露

  • https://www.synacktiv.com/en/publications/ios-1-day-hunting-uncovering-and-exploiting-cve-2020-27950-kernel-memory-leak.html#

关于这个漏洞,我学着学着才发现这对我来说简直是大坑,其中各种奇奇怪怪的知识点,不过也好,东拼西凑的学会了不少东西了,现在在看Mach Message,Mach Port相关的,先从正面使用入手,然后看源码流程,掌握其中一些比较常见的结构体,比如mach_msg_trailer_t

mach_msg

  • http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_msg.html

mach_msg_header

  • http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_msg_header.html

Mach 原语-学习笔记

  • http://www.kobeluo.com/tech/2016/10/31/studyNote-Mach/

iOS Jailbreak Principles - Sock Port 漏洞解析(二)通过 Mach OOL Message 泄露 Port Address

  • https://juejin.cn/post/6844904003675881485

Mach ports

  • https://docs.darlinghq.org/internals/macos-specifics/mach-ports.html

RunLoop深度探究(二)

  • https://www.jianshu.com/p/6582c47a13c8

再看CVE-2016-1757—浅析mach message的使用

  • https://turingh.github.io/2016/07/05/%E5%86%8D%E7%9C%8BCVE-2016-1757%E6%B5%85%E6%9E%90mach%20message%E7%9A%84%E4%BD%BF%E7%94%A8/

joker和jtool2,用于分析kernelcache文件

  • http://www.newosxbook.com/tools/joker.html

macOS内核扩展漏洞挖掘指导流程,我要学的还有很多很多很多

  • https://www.anquanke.com/post/id/146857#h2-15

IDA Pro 7.5 SP3(x86, x64, ARM, ARM64, PPC, PPC64, MIPS)

  • https://bbs.pediy.com/thread-264354.htm

想买三本书学习,看了目录感觉不错,就是现在不好买,尤其是第三本

IMAGE

第一本我发现了一个下载链接,但是打不开

  • http://universa.unijales.edu.br/099105556x_macos_and_ios_internals_volume_i_user_mode_v12.pdf

作者放出了第三本的部分章节,合起来大概六七十页

  • http://newosxbook.com/QiLin/qilin.pdf
  • http://newosxbook.com/files/PhJB.pdf
  • http://newosxbook.com/free/security12deltae.pdf

有人做了个合集

  • https://geosn0w.github.io/j/bookreader/thebook.pdf

本想着找tangsilian师傅借一下第三本看看,师傅说送我一本,那我就当师傅资源入股了,等我RJB给师傅送一辆911过去

对了,作者还有一个论坛

  • http://newosxbook.com/forum/index.php

《Mac OS® X and iOS Internals TO THE APPLE’S CORE》的电子版,它的中文译本《深入解析Mac OS X & iOS操作系统》

  • http://newosxbook.com/MOXiI.pdf

苹果这次终于不扭扭捏捏的了

  • https://opensource.apple.com/tarballs/xnu/xnu-7195.50.7.100.1.tar.gz

再贴两个资源贴,前者各种漏洞汇总,后者各种书籍PDF,非常全面

  • https://github.com/Proteas/apple-cve
  • https://github.com/writeups/iOS

接下来是吃瓜时间

前几天吃了个pdd的瓜,说是pdd的安全总监因为没拿到公司该给的期权离职了,还要打官司,pdd以后叫瓜多多吧

想来我在安全圈混了这么些年,结果这些大佬一个都不熟,吃个瓜也都是二手的,流泪

另一件事就是MJ从360离职了,是的,MJ我也不熟,但是这三年来我在360很多朋友都走了,我一个卖鞋的听到这些,恍如隔世

下周的学习应该是动态调试一下XNU内核了,到时候看看是拿虚拟机还是真机,搜了下有不少的解决方案

iPhone的环境也捣鼓一下,我手上有个水果6,可越狱的版本,刚好可以拿来研究学习