微软研究人员在macOS中发现了一个被称为Shrootless的漏洞,该漏洞允许攻击者绕过系统完整性保护(SIP)并执行恶意活动,如获得根权限和在易受攻击的设备上安装rootkit。

今年早些时候,微软向苹果的安全团队报告了Shrootless攻击,并提供了一份概念证明,表明该漏洞可以被滥用来安装恶意的内核扩展(rootkit)。

什么是sip?

SIP也被称为“无根”,旨在利用苹果沙箱来保护整个平台,从而从根锁定系统。能够绕过SIP基本上使攻击者能够完全控制系统,因为他们可以在没有保护的情况下运行任意代码。

多年来,苹果通过改进和微调限制逐步强化了SIP,以抵御攻击。最有效的SIP限制之一是文件系统限制。如果没有这些限制,攻击者将能够访问和删除文件系统中不用于应用程序文件的区域中的文件。攻击者对设备关键部件的破坏程度直接取决于他们将不受限制的数据写入磁盘的能力。

由于文件系统限制如此强大,Apple必须实现一些例外。其中一个例外是守护进程system_installd它具有强大的力量com.apple.rootless.install.Ingerable.权利。有了这个权利,任何儿童程序system_installd将能够完全绕过SIP文件系统限制。

该漏洞

Shrootless漏洞可以被攻击者利用来滥用继承的权限来修改文件系统的受保护部分。微软通过协同漏洞披露(CVD)与苹果分享了这一发现。该漏洞存在于macOS大苏尔和蒙特雷操作系统中由Apple修补2021年10月25日。

公开披露的计算机安全漏洞列在常见漏洞和暴露(CVE)数据库中。它的目标是使跨单独的漏洞功能(工具、数据库和服务)共享数据变得更容易。无枝者被列在CVE-202.1-30892年

研究人员发现,在新应用程序的安装过程中,攻击者可以通过创建一个特别制作的安装后脚本并将其放置在安装过程寻找安装后脚本的位置来劫持安装过程。

繁琐的细节

使用此漏洞的方法非常简单。

  • 下载一个apple签名包(使用wget)已知具有后安装脚本。安装Apple签名包(.pkg文件)时,所述包调用system_installd然后负责安装前者。
  • 工厂一个恶意的/ etc / zshenv这将检查它的父进程。如果它是system_installd,然后它能够​​写入受限制的位置。如果正在安装的包包含任何安装后脚本,system_installd通过调用默认shell来运行它们,它是zsh在macOS。有趣的是,当zsh开始,它寻找文件/ etc / zshenv,并自动运行该文件中的命令(如果存在的话)。
  • 调用安装程序实用程序以安装包。这将援引system_installd并且因为我们使用了与安装后脚本的包,zsh调用并执行我们植入的文件中的命令。

这样即可绕过SIP并有效地给出攻击者根访问。根据您将从此说明中了解,攻击者将需要一些访问系统的访问,或者他们将无法种植必要的/ etc / zshenv

缓解

避免成为此漏洞受害者的最简单和最好的方法是更新MACOS BIG SUR 11.6.1或更好。

保持安全,大家好!