macOS 安全故障——苹果的“修复”不起作用

攻击性安全领域的安全研究员 Csaba Fitzl 发现 macOS 中的一个安全漏洞,允许标准帐户读取硬盘上的所有文件,包括属于其他用户帐户的文件以及受 Catalina 隐私保护保护的文件。他于 3 月 13 日向 Apple 发出了此问题的警告,并于 5 月 26 日在 macOS Catalina 10.15.5 中解决了该问题。然而,菲茨尔表示,苹果的修复实际上并没有解决问题,而且苹果也不打算解决这个问题。

苹果 声称已阻止该错误(在 macOS Catalina 10.15.5 中),但要使”修复”发挥作用,请使用全盘必须关闭终端(以及任何其他终端程序,如 Iterm)的访问。然而,这样做有一个缺陷,因为大多数经常使用终端的 Mac 用户都打开了”完整磁盘访问”,因为他们实际上想要自己访问整个硬盘驱动器。

这些用户可能不希望的是,使用标准帐户的计算机的其他人应该能够读取他们的所有文件。但这正是苹果为他们所做的。由于”完全磁盘访问”是针对整个计算机的系统设置,因此您无法单独为管理员帐户启用它。

错误在于 mount_apfs 命令,该命令用于使用 Apple 新文件系统 apfs 挂载卷,并结合 apfs 功能快照,该快照主要用于简化 Time Machine。

任何用户都可以创建新快照并使用”noowners”标志挂载它,该标志会覆盖整个 Unix 系统。然后就可以读取其他用户的文件了。如果启用 FileVault,这将无法通过访客帐户运行,而只能通过标准帐户运行。

在苹果”修复”之前,终端甚至不需要打开全磁盘访问,因此根本不可能保护自己。

Fitzl 提醒 Apple,该修复还不够充分,但 Apple 已回复 Csaba Fitzl,确认不会采取进一步行动。苹果认为用户应该关闭所有终端应用程序的全磁盘访问。但这并不是一个安全的解决方案,因为许多用户都勤奋地使用该设置,并且几乎不希望其他帐户打开它来读取他们的所有文件。

此外,这意味着您出于任何其他原因授予完全磁盘访问权限的程序可以突然读取所有其他用户的文件,无论哪个用户登录,并且无需请求管理解决方案。

更安全、更明智的解决方案是 mount_apfs 要么完全需要 root 权限(通过 sudo 命令),要么要求它启用 noowners 标志。没有 sudo 权限的帐户绝对不能访问属于其他用户的任何文件,这从根本上违反了整个 Unix 模型。

希望苹果的开发人员能够正确解决这个问题。在此之前,我们只能建议多用户 Mac 关闭终端、Iterm 和其他终端应用程序的完全磁盘访问,并且仅在需要时临时激活它。

有关 Mac 安全性的更多建议,请阅读我们的 Mac 安全提示

本文最初发表于 Macworld 瑞典.凯伦·哈斯拉姆翻译​​。