在 macOS 12.0.1 Monterey 中,程注苹果修复了编号为 CVE-2021-30873 的入漏进程注入漏洞 (process injection),此漏洞影响所有基于 macOS AppKit 的洞破应用。
进程注入是有安指一个进程在另一个进程中执行代码的能力。在 Windows 中,全层使用它的程注原因之一是躲避反病毒扫描程序的检测,例如称为 DLL 劫持的入漏技术。该技术允许恶意代码伪装成不同可执行文件的洞破一部分。在 macOS 中,有安由于两个应用程序拥有的全层权限不同,这种漏洞的IT技术网程注影响要大得多。
苹果发布修复漏洞的入漏更新后,发现此漏洞的洞破研究人员近日对它进行了详细介绍,描述了使用漏洞逃逸沙盒、有安root 提权,全层并绕过 SIP 文件系统限制的方法。

研究人员还介绍了苹果修复此漏洞的思路。首先是修复了逃逸沙盒,不再读取 com.apple.appkit.xpc.openAndSavePanelService 中应用程序的保存状态 (CVE-2021-30659)。至于其他部分,修复手段更加复杂,因为第三方应用程序可能会将他们自己的对象存储在已保存状态,而这些对象可能不支持安全编码。源码库这意味着如果应用程序继续允许非安全编码,那么进程注入可能仍然存在。
从这方面来看,macOS 安全设计存在一个问题,由于某一应用程序的代码签名(以及由此产生的权限)将在很长一段时间内保持有效,如果应用程序被降级,应用程序的 TCC 权限仍将有效。非沙盒应用程序可以静默下载一个较旧的、易受攻击的应用程序版本并加以利用。因此,只要与旧的 macOS 应用程序向后兼容,此漏洞就会一直存在。
本文转自OSCHINA
本文标题:macOS 12 进程注入漏洞破坏所有安全层
本文地址:https://www.oschina.net/news/206685/process-injection-breaking-all-macos-security-layers