scomper's blog

macOS Root 空密码账户 Bug 修复

2017.11.29

macOS High Sierra 上爆出一个严重的 Bug,允许任何人使用用户名「root」登录到一个没有密码的管理员帐户。「root」用户帐户是一个超级用户,拥有系统区域(包括 macOS 用户帐户中的文件)的读写权限。

在 Apple 发布补丁修复这个问题之前,建议大家即时修改 root 账户的密码。具体步骤如下:

  1. 「系统偏好设置」中打开「用户与群组」,点击「登录选项」并点击左下角的锁形图标解锁,输入管理员密码允许修改;
  2. 点击「网络账户服务器」旁的加入;
  3. 打开目录实用工具,点击打开目录使用工具窗口左下角的锁形图标解锁;
  4. 在目录实用工具的菜单找到「编辑 - 更改 Root 密码」打开,修改 Root 账户的密码;
  5. 不要停用 Root 用户,很多底层服务都要 root 权限执行,而且还会让 Root 依旧密码空白,令漏洞再次发挥作用。

使用终端命令的方式同样可以完成 root 更改的问题。终端窗口中输入sudo passwd root,按照提示输入两遍新的 root 密码即可。~~另外,终端中输入dsenableroot -d可以停用 root 账户。~~

Update:Apple 已经发布更新补丁,请通过 App Store 即时更新。
补丁程序可能会导致使用上的问题,部分用户在安装了它之后,电脑在分享文件时出现了无法正常验证、连线的故障。
在终端中输入 sudo /usr/libexec/configureLocalKDC Return,输入管理员密码,退出终端之后应该就恢复正常了。

延伸阅读:
如何在 Mac 上启用 root 用户
How to Enable & Disable root User from Command Line in Mac OS X

Comments
Write a Comment