较旧的 macOS 应用仍可能易受毁灭性安全漏洞的影响

发现此漏洞的研究人员已于2020年通知苹果公司。虽然已有补丁,但较旧的应用程序仍可能面临风险。
apple macbook at the restart screen
一项新的安全漏洞利用了Mac重新启动的时机。DEPOSIT PHOTOS

上周在拉斯维加斯举行的Black Hat USA网络安全DEF CON黑客大会上,公布了许多令人兴奋的网络安全发展和更新。安全研究人员演示了他们可以越狱John Deere拖拉机劫持退役卫星,同时主要科技公司也找到了让现有安全工具协同工作的新方法。

其中一项报道强调了一个主要操作系统软件中的漏洞:2020年,荷兰研究员Thijs Alkemade发现了一个可以突破macOS所有安全层的漏洞。该漏洞已被修补,但在macOS上运行的旧应用程序可能仍然易受攻击。考虑到苹果公司最近发布了一个安全更新来修复可能允许黑客完全控制设备的漏洞,这项研究尤其值得关注。

Alkemade的发现是一个macOS“已保存状态”功能中的漏洞。当您关闭Mac时,可以选择一个复选框,以便在重新开机时自动重新打开所有应用程序和窗口。这会在您的硬盘上创建一个已保存的系统状态,操作系统会从中加载您的应用程序。(它也用作“App Nap”的一部分,即正在使用的应用程序会被挂起以释放系统资源。)

通过对已保存状态功能反复使用一种称为“进程注入”的技术,Alkemade能够绕过macOS的所有系统保护,并控制一台易受攻击的Mac,读取磁盘上的任何文件,安装其他恶意软件,甚至在用户不知情的情况下激活网络摄像头。这包括macOS的“App Sandbox”,它旨在将恶意代码限制在单个应用程序中,并阻止黑客利用单个漏洞(如这个)来控制整个系统。

进程注入的工作原理是通过将恶意代码伪装成另一个允许运行的进程,从而欺骗操作系统运行恶意代码。一般来说,这意味着将恶意代码注入到具有大量权限以访问操作系统最安全角落的应用程序和系统工具中。虽然这是一种常见的攻击模式,但很少有像这次这样普遍或危险的。

在这种情况下,Alkemade能够创建一个恶意的“序列化对象”—这是一种macOS中常用的数据结构,可以将其转换为原始计算机代码字符串,然后再转换回来(这通常是为了为存储或共享做准备)。然后,他将其保存在macOS文件系统中,以便在用户启动系统关机时,如果目标应用程序正在运行,它将被已保存状态功能加载。(所有这些细节都已在Alkemade详细介绍该漏洞的博文中进行了深入介绍。)

[相关:数字赏金猎人如何寻找软件漏洞—以及赚钱]

为了绕过App Sandbox,Alkemade滥用了macOS的“打开和保存”面板。这是少数可以在沙盒应用程序内运行的进程之一,它允许该应用程序访问它通常无法访问的文件。该面板的权限使Alkemade能够绕过App Sandbox运行他的恶意代码,然后,通过搭乘macOS公共Beta访问工具的权限,获得对系统的root访问权限(基本上是管理员级别的权限)。

Alkemade需要绕过的macOS安全最后一个层称为“系统完整性保护”或SIP。它专门用于阻止拥有root访问权限的恶意行为者控制您的系统、控制您的网络摄像头或访问某些受保护的文件。他通过对macOS更新助手使用进程注入攻击来绕过它,该助手有权读取和写入所有SIP保护的位置。

完成这些操作后,Alkemade几乎完全控制了Mac。他可以安装任何恶意工具—如键盘记录器和其他间谍软件—或窃取系统上的任何数据。所有这些都只利用了macOS中的一个漏洞。Alkemade已于2020年告知苹果公司,并通过Apple安全奖励计划获得了报酬。在2021年4月10月发布了两个更新来修补该漏洞的各个方面。尽管到目前为止还没有证据表明该漏洞在实际中被使用过,但由于攻击的性质,旧应用程序(或可以被恶意降级的已更新应用程序)在可预见的未来仍将易受攻击。

 

更多优惠、评测和购买指南

 
Harry Guinness Avatar

Harry Guinness

撰稿人

Harry Guinness 是一位爱尔兰自由作家兼摄影师。他一年中的大部分时间在爱尔兰和法国阿尔卑斯山之间度过。Harry 的作品发表在《纽约时报》、《流行科学》、OneZero、Human Parts、Lifehacker 等数十家媒体上。他撰写关于科技、文化、科学、效率以及它们碰撞的文章。


© .