“天道缺乏余力,力量不足。所以虚浮,不足。”

公元1206年武林中有几位侠客聚集在火山上,为统一武林进行了7天7夜的折中,俗称华山论剑。

参赛选手阵势庞大,东邪黄药师、西毒欧阳锋、南帝段大师、北丐洪七公、中神通王重阳都亲临现场。而他们此次还有一个目的,就是争夺武林秘籍《九阴真经》的所有权。最后,王重阳得到了此资格,从此江湖平静了一阵子。

《九阴真经》为何物?它是影响三代江湖的武功秘籍。各路大侠都曾修炼过,虽没见谁练成,可都因为练它积攒了内力,从而开发研制了其他更上乘的武功招式。

当然,功力练得好,可以像郭靖一样练成降龙十八掌,从此人生开挂。如果练得不好就只能像梅超风一样,活生生把自己从好人练成了坏人,俗称“走火入魔”。所以,练功除了秘笈重要,也要用对方法。

几千年后的今年,华山论剑的场景变为了我们的写字间,而神功也已经不再是打打杀杀,是通过技术水平来刷新世界排位。

《九阴真经》的作者黄裳,为报当年之仇,隐居 40 多年,苦思破解敌人武功之道,最终成为高手。而如今,有这样一群人,为保自家程序稳定不受侵害,破解程序秘密,修复程序漏洞。这些就是我们的安全人士了。

谷歌就有这样的一个团队,叫做 Project Zero,专为第三方软件寻找漏洞。他们不是为了利用这些漏洞报复对方,相反他们要对三方软件开发商发出警告,以避免被恶意利用。这不,他们最近就发现了友商 iOS 的一些漏洞。

iOS 漏洞频发

据美国科技媒体报道,谷歌 Project Zero 安全团队的两名成员公布了影响 iOS 系统的 6 个“无交互”安全漏洞,并公布了其中 5 个安全漏洞的详细信息。

据报道,这 6 个“无交互”安全漏洞可以通过 iMessage 客户端发动攻击。早前苹果发布了 iOS 12.4 版本,修复了 6 个安全漏洞。可是其中一个“无交互”漏洞的细节此次并没有公布,是因为 iOS 12.4 补丁还没有完全解决问题。

这 6 个安全漏洞中的 4 个,可以无需用户交互即可在远程 iOS 设备上执行恶意代码。攻击者只要向受害者的手机发送一条“错误格式”的消息,一旦用户打开并查看接收到的项目,恶意代码就会被执行。

而第 5 个和第 6 个漏洞允许攻击者从设备内存中泄漏数据,并从远程设备读取文件,同样无需用户干预。

日前,据《福布斯》报道称,苹果公司将为安全研究人员提供特别版 iPhone,让他们去寻找 iOS 的 bug。苹果也将在黑帽安全会议上宣布这一消息。

一位消息人士称,这些设备本质上将是“开发设备”。这种 iPhone 与传统锁定的 iPhone 相比,能做更多的事情。例如,可能会探测到苹果操作系统中在商用 iPhone 上不易访问的部分。值得一提的是,这种特殊的设备可以让黑客停止处理器并检查内存中的漏洞。

外媒还称,苹果还将推出 Mac 赏金计划。这类似于 iOS 漏洞赏金,奖励在 MacOS 中发现漏洞的研究人员。

iOS 安全漏洞复现

既然被公布出来的漏洞这么凶猛,如何复现这些漏洞应该是大家都比较关注的问题。

CVE-2019-8660、 CVE-2019-8662、 CVE-2019-8647 这三个漏洞可以导致系统重启,或者任意代码执行。

CVE-2019-8646 这个漏洞可以导致任意文件读取,比如发送 iMessage 信息到目标机,可以获取到目标机的照片。

CVE-2019-8641 这个漏洞由于在最新的 12.4 系统上未修复,所以并未公布具体细节。其他 4 个漏洞已经在 12.4 修复。

复现漏洞

首先我们以 CVE-2019-8660 为例复现漏洞,其他几个漏洞的复现方式类似。在测试之前,请打开 iOS 设备上的 iMessage 的消息接收。

方法是:点击设置 -> 信息 -> 打开 iMessage 信息开关。下面是复现漏洞的具体步骤:

(1) 安装 Python 3

(2) 安装 frida

(3) 下载并解压 POC,下载地址是:;signed_aid=aRa647CnzpRUCj7nXIOEKA==。

(4) 将 里的 receiver 替换成目标邮箱地址。

(5) 将 injec 里的 obj 文件的路径填写成你本机的。

(6) 需要关闭 SIP (System Integrity Protection,系统完整性保护)。

方法是重启按住 Commond + R 进入 recovery 模式,在实用工具里打开终端,输入 csrutil disable 即可禁用 SIP,然后重启进入正常模式。测试完漏洞之后别忘记打开 SIP,方法是:进入 recovery 模式,输入 csrutil enable。如果没有这一步操作,frida 注入进程可能会失败。

(7) 最后执行发送iMessage,只要目标机接收到 iMessage 消息即可以触发漏洞,并不需要点击查看。

触发漏洞的目标机重启之后,打开短信应用会闪退,原因是之前测试的那条带漏洞的 iMessage 消息还存在,会被短信应用加载,加载错误就闪退了。解决的方法是给目标机多发送几条正常的信息,这样会覆盖掉带漏洞的短信,然后在搜索栏输入关键字定位到有问题的短信,删除即可。

POC 的实现原理

POC 的实现原理是使用 AppleScript 调用 MacOS 的信息应用对目标发送 iMessage 消息,其中使用frida对 jwencodedictionary_addr 函数进行 Hook,修改原始的消息体结构。在 injec 里有构造带有漏洞的 iMessage 消息体的代码,核心代码如下:

替换的iMessage消息体会放入obj文件,obj文件里有一个 NSKnownKeyDictionary1 对象,正是因为解析 NSKnownKeyDictionary1 对象时引发问题造成的漏洞的触发。

上面的 obj 文件实际上是 Archive (归档)文件, 通过 NSKeyedArchiver 里的方法可以构造 Archive 文件,示例如下:

iMessage的消息内容是在 ,我们可以替换 REPLACEME 发送自定义的消息,

然后在 injec 中也需要将 REPLACEME 保持和自定义的消息内容一致。

不知道你都看懂了吗?

iOS 安全界的《九阴真经》

苹果公司自建立这套封闭的生态圈以来,所有的应用都必须从 App Store 上下载。在这个平台上,每天都有几千个应用遭遇下架,不少公司都因为上架问题而焦头烂额。这个封闭的生态圈堪称苹果公司设计的“监狱”。

苹果手机越狱之后,不仅有机会脱离封闭的限制,还能挖掘出更多的玩法,从而形成一个新的生态圈。比如,不少人都希望一台手机能模拟出多台设备的环境,但是目前为止还没有一款 iOS 虚拟机,越狱之后可以对系统 API 进行 hook ,对沙盒文件进行修改,应用获取到的都是修改后的数据。这对于应用来说,达到了虚拟机的效果。

本书讨论的正是这个新的生态圈会有什么样的安全问题,又如何去解决它们。是每个安全人士变强路上不可获取的武林内力。

资深安全专家十年磨一剑, 助你“功力大增”的武林秘笈

《九阴真经:iOS黑客攻防秘籍》

作者:陈德,资深安全专家,软件安全研究员,陌陌安全团队成员。2007 年开始自学安全技术,精通安全领域多方面技术。

本书从越狱环境的开发与逆向相关工具的基本内容讲起,涉及汇编基础、动态调试、静态分析、注入与 hook、文件格式等内容。还有应用破解与应用保护、隐私获取与取证、刷量与作弊、唯一设备 ID、写壳内幕等多个主题。由《黑客防线》技术月刊原总编辑孙彬与数字联盟 CTO 张宇平作序,获得圈内多位安全从业者倾力推荐, 立足系统,着眼安全,系统地学习 iOS 安全技术 。

本书赞誉

“拿到手就能用,这本书做到了。用我们一般程序员甚至刚上手想当码农吃吃青春饭的人的角度来看,本书在技术上削平了认知壁垒。” ——孙彬 《黑客防线》技术月刊原总编辑

PS:一点小八卦

在文前致谢里看到作者的一段感人肺腑的文字,也祝愿天下奋斗在技术路上的人儿都能有情人终成眷属。

1.《【scripthook】安全专家十年磨一剑的独门秘笈,威力堪比《九阴真经》》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【scripthook】安全专家十年磨一剑的独门秘笈,威力堪比《九阴真经》》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.cxvn.com/gl/djyxgl/223466.html