OS X 的单用户模式不是一个坏主意吗?

信息安全 苹果系统
2021-08-19 13:44:36

最近,我有一台 Mac 炸了它的视频逻辑板。幸运的是,Apple 得出结论认为这是一个设计缺陷,并且正在免费修复受影响的机型(请点击此处查看更多信息)。但是,我有一段时间没有找到这个页面,在那段时间里不得不考虑恢复我的数据。所以,我环顾了互联网,发现了单用户模式。

计算机关闭时,在按住commands键的同时按下 Power On 按钮继续按住这些按钮,它不会启动到 Apple 加载屏幕,而是启动到底层的 Unix 终端。在那里,您可以输入以下命令:

mount -uw /
cd /Users/
ls

并显示所有用户的主文件夹。继续cd进入这些文件夹并ls查看内容,您可以浏览所有用户的文件,无需密码

然后我发现您还可以插入 U 盘并将文件复制到其中(或从中复制),或对文件执行诸如移动和删除之类的操作。


虽然这对我从油炸的 Mac 中恢复数据很有帮助,但这是个好主意吗?如果我拿到朋友的 MacBook 并且它被锁定了,我可以将其关闭,启动到单用户模式并弄乱他们的文件 - 甚至将它们复制到 U 盘以供以后使用。Mac 被很多人使用,其中很多人都有非常重要的文件需要保护。

这显然不是错误,因为 Apple 有一篇关于如何进入单用户模式的支持文章。我也知道单用户模式的最初目的之一是在您丢失密码时重置您的密码,但是通过命令行访问整个计算机似乎不是一个好方法。

那么,这是一个问题吗?单用户模式不好吗?据我所知,这是一个安全漏洞,但我可能会遗漏一些东西。

4个回答

物理访问是完全访问,对吗?这比启动 CD 或拉动硬盘驱动器并将其弹出到另一个系统有什么坏处?

并不是说我是 OSX 或这个特定功能的粉丝,但如果有人可以物理访问具有未加密磁盘的计算机,他们无论如何都可以访问该磁盘上的所有内容,因此单用户模式不会让情况变得更糟,任何一个。

如果启用了 FileVault,那么即使您将固态驱动器移到新机器上,您也需要其中一个 FVDE 用户的 FVDE 凭据才能访问单用户模式。

但是,如果您试图阻止最终用户访问管理员帐户(和/或 root 帐户),由于单用户模式,FileVault 是不够的。可以使用他们的 FVDE 凭据进入单用户模式,按照您的演示重新挂载文件系统,然后rm /var/db/.AppleSetupDone重新运行 OS X 设置助手,其中可以添加新的管理员帐户,这将具有 FVDE 凭据。

换句话说,如果启用 FileVault,您可以保护文件,但由于单用户模式,您无法阻止拥有至少一个 FVDE 凭据的人以 root 身份访问所有内容。

对此存在误解。问题实际上不在于单用户模式。例如考虑以下场景:

有人拿到你的笔记本电脑。没有硬盘加密,也没有 BIOS 密码。现在他有几个选择。仅举出其中两个:

  • 将硬盘从笔记本电脑中取出,然后在另一台 PC 上轻松使用。绕过系统定义的文件所有者之类的任何文件保护并不难,因为他可以简单地使用sudo/the admin-account/whatever 获得他的操作系统提供的最高权限的方式,并以他喜欢的方式简单地更改所有权。在某些 Macbook 上,这可能会有点困难,具体取决于硬盘驱动器内置到机器中的方式。
  • 通过可启动 USB 从另一个操作系统启动并通过该操作系统检索文件。

或简短版本:

法则 3:如果坏人可以不受限制地物理访问您的计算机,那么它就不再是您的计算机了

来自10 条不变的计算机安全法则单用户模式只是提供了一种访问文件的简单方法,而无需使用任何简单的解决方法。

那么:如何保护我的文件?
首先非常明显:使用磁盘加密,以防止任何人在没有密码的情况下访问硬盘。OS X为此提供了FileVault/FileVault2 ,它使用 XTS-AES 128 加密数据。这将防止任何在机器上没有注册帐户的人启动机器/访问文件。但是您甚至可以通过使用固件密码更进一步(有时也称为 EFI 密码),以防止您的机器从驱动器以外的任何其他操作系统启动。此外,未经授权的用户也无法访问用户模式、恢复和其他一些功能。因此,激活 FileVault 并使用固件密码应该足以防止除您之外的任何人访问您的文件。剩下的唯一选择是移除硬盘驱动器并破解密码。换句话说:你不能在这个攻击向量上获得更多的安全性。

除了使用 FileVault 2 的全盘加密保护驱动器外,您还可以通过设置固件密码来禁用单用户模式。这将防止可以解密驱动器的其他用户(例如多用户计算机)访问单用户模式等。

在 Mac 上使用固件密码

要保护 Mac 上的数据,您可以设置用户帐户密码以防止未经授权的用户登录。您还可以使用 FileVault 加密启动磁盘,以便未经授权的用户在没有正确密码的情况下无法读取 Mac 上存储的数据.

为了获得额外保护,您还可以在 Mac 上设置固件密码。固件密码可防止您的 Mac 从指定启动磁盘以外的任何设备启动。

虽然在上面的摘录中没有特别提到,但它在没有首先输入固件密码的情况下禁用单用户模式(和恢复分区),因为它只会在没有密码的情况下启动默认的启动磁盘/分区。

当然,固件密码不能防止物理移除驱动器并从另一台机器读取它,但与 FileVault 2 一起使用它可以防止其他用户访问该机器。