披露使用多个iPhone(iOS)在野漏洞利用链的APT攻击活动

近日,一则关于iPhone曾存在14个安全漏洞,并已经被黑客组织利用的消息在国内外断断续续被报道,由于攻击目标较为集中同时具有针对性,因此一些第三方媒体开始猜测幕后的黑客组织的身份,习惯性的将攻击者归咎于一些会进行监控行为的国家。

近日,一则关于iPhone曾存在14个安全漏洞,并已经被黑客组织利用的消息在国内外断断续续被报道,由于攻击目标较为集中同时具有针对性,因此一些第三方媒体开始猜测幕后的黑客组织的身份,习惯性的将攻击者归咎于一些会进行监控行为的国家。

image.png

鉴于此话题的敏感性,再次不过多暗示,那么我们先来对此事的总结以及利用的关键技术进行选择性展示。

事情的起因在于,谷歌的安全团队Project Zero威胁分析小组(Threat Analysis Group)发现,iPhone存在14个安全漏洞,而这些在野漏洞已经存在了两年,这也就意味着,这些漏洞已经被幕后黑客组织使用了至少两年。(有的已经被修复,有的被发现的时候没有被修复)

具体的利用场景大致为,只要用户访问一个网站,就有可能让黑客获得信息、照片、联系人和位置信息。类似于我们所说的水坑攻击。

此外,这些网站都已经被黑客入侵,因此可溯源性较弱。并且这些网站都挂载了漏洞利用代码,因此所有访问这些网站的用户,都会进行不分青红皂白的水坑攻击。  

可见,这起攻击事件,目标也许均为会访问这些网站的用户。

因此,就有了后面的一些媒体,认为此次安全事件,就是为了对会访问这些网站的用户进行监控。

而访问的网站,也许是敏感网站,也许是非法网站,这些不得而知,从幕后的攻击者在获取了iphone的权限后,会获取什么样的数据,就大概能够明确攻击者的目的所在。

只需访问被黑的网站即可让攻击服务器攻击设备,如果成功,则会安装监控程序。根据谷歌估计,这些网站每周有数千名访客。  

而幕后的黑客,利用14种不同的漏洞从iPhone上获取私人信息,实际上其构建了一整条完整的iPhone漏洞攻击链条,从水坑攻击,到低权限获取,再到突破沙箱提权,再到利用漏洞获取受害者设备上的所有未加密或者APP上的数据再发送到攻击者的服务器。

链条分为五个独立完整且独特的iPhone漏洞利用链,涵盖从iOS 10到最新版本iOS 12的几乎所有版本。这表明这个攻击组织至少花费两年的时间持续努力攻击某些社区的iPhone用户。

注意下图的版本号。

image.png

文末会给出每个攻击链中涉及的漏洞分析文章链接,由于本人对IOS的漏洞以及对其应用层和内核层无任何研究,因此下面的一些描述可能会存在错误(真心看不懂),见谅。

Chain1,影响IOS 10.0.1-10.1.1

一个可以突破Safari沙箱的内核漏洞

AGXAllocationList2 :: initWithSharedResourceList堆溢出。

是com.Apple.AGX kext的一部分,它是iPhone中嵌入式GPU的驱动程序。

Chain2,影响iOS 10.3到10.3.3,有趣的是这个漏洞还被该团队的成员提交过。

Chain3,影响iOS 11-11.4.1,libxpc中的沙箱逃逸漏洞

Chain4,影响iOS 12-12.1,这两个漏洞被发现的时候都属于系统没有打补丁的状态。

cfprefsd 漏洞,com.apple.cfprefsd.daemon 是由cfprefsd 守护程序托管的XPC 服务,由于其使用root权限,所以你懂的。

Chain5,影响11.4.1到12.1.2,该漏洞曾被安全研究人员在比赛中使用过

image.png

那么,一开始的浏览器漏洞在哪里呢?

可谓是万恶之源,入口点的关键,便在于此处,在iOS设备上获得初步立足点的WebKit漏洞。这里的所有漏洞都在iOS上的沙盒渲染器进程(WebContent)中实现shellcode执行。虽然iOS上的Chrome也容易受到这种攻击,但攻击者仅使用它们来攻击Safari和iPhone。

章节名为JSC漏洞利用,分为7个漏洞利用,其中范围从IOS 10.0到12.1.3均有浏览器漏洞利用代码,年份从17年到19年。

image.pngimage.png

最后,通过上面的Webkit漏洞获得了内存读写权限后,便开始通过shellcode代码进行提权操作,构造JOP链,并指向JIT区域内的带有前面提到的突破沙箱限制的漏洞提权代码。

image.png

而此前都描述了攻击者如何在iPhone上以root身份获得绕过沙箱的代码执行权限。而在每个漏洞利用链的末尾,都可以看到攻击者调用posix_spawn ,将路径传递给他们在/tmp中释放的二进制文件。

而这些二进制文件,即后门主要用于窃取文件和上传实时位置数据。他们每60秒向攻击者的命令控制服务器请求命令。

下面的图片为谷歌安全研究员测试这些后门的用途的截图。

测试设备是运行iOS 12的iPhone 8,其发现后门可以访问流行的端到端加密应用程序(如Whatsapp,Telegram和iMessage)使用的所有数据库文件(在受害者的手机上)。

可以在这里看到左侧应用程序的屏幕截图,右侧是后门窃取的数据库文件的内容,其中包含使用应用程序发送和接收的消息的未加密明文:

WhatsAPP的

image.png

Telegram的

image.png

iphone的imessage的

image.png

视频群聊

以下是Google Hangouts for iOS中的对话以及后门上传的相应数据库文件。通过一些基本的SQL语句,我们可以轻松地看到消息的纯文本,甚至是共享图像的URL。

image.png

后门可以上传设备上所有应用程序使用的私人文件; 以下是通过Gmail发送的电子邮件明文内容的示例,这些内容会上传到攻击者的服务器:

Gmail的

image.png

联系人

image.png

并拍下他们所有照片的副本

image.png

实时GPS跟踪

如果设备在线,后门还可以实时上传用户的位置,每分钟最多一次。以下是带着植入后门的测试设备在手机上运行时,通过出门后,收集的实时位置数据的真实样本。

image.png

植入物上传设备的Keychain,其中包含设备上使用的大量凭证和证书。例如,所有已保存的WiFi接入点的SSID和密码:

image.png

image.png

从一堆代码分析里挑出的具有代表性的攻击代码图,结构体清晰可见,更多详情请看原文。

image.png

从攻击者的服务器开放的端口来看,还挺随意,1234

image.png

控制命令列表

image.png

此外,这些数据包的特征可以下规则捕获一下,可能有惊喜。

image.png

因此,从漏洞利用链条来看,这是一个完整的漏洞攻击链条,但是里面既有0day,又有Nday,很明显黑鸟认为Nday很有可能是通过自行分析或者购买而得,从而最终构成了整个攻击链条。

在今年2月,苹果在一次软件更新中修复了这些漏洞,没开自动系统更新的该更新一下了。

image.png

https://support.apple.com/en-us/HT209520

最后,正如谷歌所言,目前发现的攻击很可能只是幕后黑客组织的一部分,而从这一起事件可以看出,在0day这种未知漏洞面前,或Nday,不更新系统,无论是苹果还是安卓,风险都是一致的。

当然,普通用户完全可以放心,因为这类价值千万的漏洞,目标根本不可能是你们,如果你被攻击了,可能是你足够重要。

而这起事件,在你看完了整个分析链条的报告后,你才会感叹,一个拥有14个网络武器的黑客团队,具有能够隐藏两年并持续进行攻击,同时都没有被发现的能力,是多么牛×的一件事情。

同时对于谷歌,一个具有全球浏览器用户数据,足够全的pdns数据,最牛×的搜索引擎用户数据,最大的邮箱数据,同时还收购了Virustotal这样的既具备探针同时拥有全球会上传样本进行测试的黑客数据,还有输入法等等等等,对于捕获这种具有漏洞挖掘并且漏洞武器化的攻击,具有得天独厚的优势。

而最初对于APT(Advanced Persistent Threat,高级持续性威胁)攻击的定义以及捕获,在这次攻防双方,体现的淋漓尽致。

事件概述:

https://googleprojectzero.blogspot.com/2019/08/a-very-deep-dive-into-ios-exploit.html

分析文章链接:

iOS漏洞利用链#1

https://googleprojectzero.blogspot.com/2019/08/in-wild-ios-exploit-chain-1.html

iOS漏洞利用链#2

https://googleprojectzero.blogspot.com/2019/08/in-wild-ios-exploit-chain-2.html

iOS漏洞利用链#3

https://googleprojectzero.blogspot.com/2019/08/in-wild-ios-exploit-chain-3.html

iOS漏洞利用链#4

https://googleprojectzero.blogspot.com/2019/08/in-wild-ios-exploit-chain-4.html

iOS漏洞利用链#5

https://googleprojectzero.blogspot.com/2019/08/in-wild-ios-exploit-chain-5.html

JSC漏洞利用分析

https://googleprojectzero.blogspot.com/2019/08/jsc-exploits.html

漏洞植入方法分析

https://googleprojectzero.blogspot.com/2019/08/implant-teardown.html

1

发表评论

已有 1 条评论

取消
Loading...

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php