无需接触即可窃取iPhone照片,英国黑客揪出苹果致命漏洞

(原标题:无需接触即可窃取iPhone照片英国黑客揪出苹果致命漏洞

今年5月,苹果修复了有史以来最令人震惊的iPhone漏洞之一:iOS内核中的内存损坏错误。这个漏洞使得攻击者可以通过Wi-Fi,无需任何接触即可远程访问设备中的所有信息。通过漏洞甚至也很容易实现蠕虫程序病毒可以利用无线电从一个设备向其他设备传播。攻击者可以通过该漏洞直接获取设备上的照片、邮件密码,甚至可以通过麦克风摄像头直接监视监听用户

撰文 |王昱

审校 |吴非

来自谷歌信息安全团队Project Zero的研究人员伊恩·比尔(Ian Beer)开发并公布了这个漏洞。Project Zero是谷歌公司在2014年公开的一个信息安全团队,专门负责找出各种软件安全漏洞,特别是零日漏洞(Zero-day),即还没有补丁的安全漏洞。该团队在发现安全漏洞后,会立即通知软件开发者,在漏洞被修复前,不会对外公布。但是90天后,不论漏洞是否已被修复,都会自动公开。

Project Zero的创始人克里斯·埃文斯(Chris Evans)在接受采访时说:“(这个漏洞的发现)是一项了不起的工作。该漏洞十分严重。无需接触手机就能发动攻击这一点非常可怕。当你走在路上,手机在包里时这种攻击就能发生,Wi-Fi数据包随时都能入侵你的设备。”

伊恩·比尔是英国著名的计算机安全专家,有人认为他是最好的iOS黑客之一。他曾发现大量iOS漏洞,也曾制作iOS的越狱版本。在其12月1日发布的3万字的帖子中,详细描述了他花费6个月独自开发和验证漏洞的过程。其攻击是通过AWDL驱动程序中的缓冲区溢出(buffer overflow)完成的。

演讲中的伊恩·比尔(图片来源:cyberwire)

关于AWDL

AWDL协议全称为Apple Wireless Direct Link,是隔空投送和随航等功能的底层协议。隔空投送是苹果设备之间互相传输文件的一种方式,而随航可以将iPad变成苹果笔记本的扩展显示屏

在日常生活中,当我们通过无线方式在不同设备间传输文件时,可能较多使用微信,QQ,电子邮件等方式。这种情况下,数据包会从设备通过电磁波信号发向路由器,再由网线传输到光猫,之后就通过光纤传入运营商,到达相应服务器后,再将数据包原路返回,传输给另一个设备。

大多数应用程序在不同设备间传输文件的方式(图片来源:flaticon)

或者是在同一Wi-Fi环境下,进行投屏或其他操作,数据包至少也会经过路由器的中转。

但是Wi-Fi所用的电磁波波长不短(常见的2.4GHz和5GHz波长分别为12.5cm和6cm),电磁波并不会严格沿着一条直线传播,它会向四面八方传播。同时,由于Wi-Fi设备都同时拥有接收和发射Wi-Fi信号的能力,理论上不需要经过路由器的中转,设备和设备之间可以直接通信。而AWDL协议正是这样做的。

使用AWDL传输数据的方式 图片来源:flaticon

悄无声息的攻击

漏洞产生的原因是缓冲区溢出,即向缓冲区写入超出其容量的数据。缓冲区溢出是安全漏洞产生的重要原因之一,实际上,1988年第一个通过互联网传播的蠕虫病毒——莫里斯蠕虫(Morris worm)——就利用了缓冲区溢出。

比尔在帖子中写到:“想象一下拥有这种能力的攻击者所感受到的力量。当我们越来越多的将心血放进这些设备,攻击者可以轻易地从毫无戒心的目标上获得大量信息。”

比尔开发了几种攻击方式。其中最先进的一种向被攻击设备安装了一个植入程序,可以获得用户的所有个人信息,包括邮件、照片、信息、密码等。攻击者可以用一台笔记本,一个树莓派和一些Wi-Fi适配器进行攻击。植入程序大约需要2分钟的安装时间,但是比尔表示,如果写出一个更高效的攻击程序,那么攻击过程可能在几秒钟内就能完成。攻击并不需要你的设备开启隔空投送的功能,比尔甚至想出了强制开启对方设备AWDL的办法。

比尔还制作了演示视频,在视频中,受害者的iPhone 11 Pro与攻击者隔开。其间攻击者没有接触过手机,但是两分钟后,攻击者轻易获得了手机刚刚拍摄的照片。

攻击者可以无需操作远程获取手机中的照片(图片来源:Ian Beer)

除了获取数据之外,攻击者利用其他攻击方法,还能远程操控手机打开应用程序,甚至开关机。攻击者可以通过这种方式来监听监视受害者。

攻击者无需接触即可控制手机(图片来源:Ian Beer)

攻击可以在攻击者的Wi-Fi覆盖范围之内进行。使用定向天线,更高功率的发射器,可以将攻击范围提升到很远的距离。

苹果公司在今年5月的更新中修复了这个漏洞,在其更新日志中也提到了比尔。

图片来源:关于iOS 13.5和iPadOS 13.5的安全性内容/苹果

如何避免漏洞威胁

计算机漏洞一直是威胁信息安全的重大威胁。2018年,Project Zero发现了著名的“熔断”和“幽灵”漏洞,影响了几乎整个个人电脑市场。这两个漏洞存在于大部分英特尔x86/x86-64处理器中,在微软发布针对漏洞的补丁后,2015年及之前生产的intel处理器出现了较为明显的性能下降,有些测试中降幅甚至达到30%。而对于Intel的处理方式,Linux之父林纳斯·托瓦兹(Linus Torvalds)强烈表达了他的不满,并称其处理方式为“全然的垃圾”(COMPLETE AND UTTER GARBAGE)。

幽灵和熔断漏洞(图片来源:Wikipedia)

而为了避免漏洞再次出现,以及尽快发现未知的漏洞并将其修复,Beer在帖中提出了3项重要建议。

首先,对于如何现代化核心遗留代码,应该有一个长期的策略和计划。此次漏洞中涉及的重要文件vm_map.c,其最初版本写于1985年,而至今还在使用。

其次,对于如何快速提高新代码的质量,应该制定短期策略。例如进行广泛的自动化测试,对关键的、对安全敏感的代码进行审查,以及创作高质量的内部文档,以便开发人员可以了解其代码在整体安全框架中的位置。

最后,对安全性测试应该有新的尝试,不能局限于模糊测试。这不仅意味着要尝试进行更多样化的分析,还要付出大量努力,了解攻击者的工作方式,并比他们做得更好来击败他们。

当然,这些都是科技公司的任务。至于消费者,保持设备进行系统更新,形成健康的上网习惯即可。好消息是,苹果也表示,大部分iPhone和iPad用户都会定期更新设备。

参考文献

https://googleprojectzero.blogspot.com/2020/12/an-ios-zero-click-radio-proximity.html

https://arstechnica.com/gadgets/2020/12/iphone-zero-click-wi-fi-exploit-is-one-of-the-most-breathtaking-hacks-ever/

https://arstechnica.com/information-technology/2015/08/how-security-flaws-work-the-buffer-overflow/