苹果macOS被曝“史诗级漏洞”,更新来得还能再晚点么?
2017-11-30 09:52

苹果macOS被曝“史诗级漏洞”,更新来得还能再晚点么?

虎嗅注:本文转自微信公众号“硅星人”(ID:guixingren123),原标题为《macOS惊爆史诗级漏洞!蠢到这地步我看苹果药丸》,作者:光谱。虎嗅获得授权转载。


苹果公司是目前市值最高的科技公司,它销售目前市面上主流消费电子设备中最昂贵的单品,包括 Mac 和 iPhone 等等。


苹果为其系统的安全性而自豪,即便超级封闭的 iOS 系统为用户带来不便,一度遭受抨击,苹果仍不为所动。这种态度也有好处,当 FBI 要求苹果配合调查破解设备时,苹果表示「我也没有办法」。


但最近,苹果让人大失所望。


有人在 macOS 里发现了一个史诗级的巨大安全漏洞。任何人都可以轻松获取 root 权限,不用输入密码、直接逾越登陆界面和系统里的密码锁,对电脑完全控制。


(建议你一边看,一边打开自己的电脑尝试是不是像本文描述的这样。解决办法在文后。)


美国时间 11 月 28 日上午,开发者 Lemi Orhan Ergin 通过 Twitter 公布,自己在 macOS High Sierra 上发现了一个严重的安全隐患。



漏洞的具体内容:在 macOS 的系统用户登陆界面上,用户名使用 "root",密码留空,能够成功登陆或解锁系统;如果一次不行,多点几次即可。


硅星人(微信号:guixingren123)在自家安装 macOS High Sierra 的 MacBook Air 上测试,成功复现这一情况。


该漏洞可以在电脑上进行以下两种操作时被利用:


1. 登陆系统,也即从关机状态、睡眠状态开机登陆,或手动锁定电脑后解锁;



使用 root 用户名,无密码登陆成功,如下:


自计算机安全研究员 Amit Serper


2. 在系统偏好设置里修改用户群组管理、安全隐私、家长控制等选项,需要再次输入用户名密码以确认权限时。



根据 Twitter 上的用户以及一些信息安全博客的说法,目前这个漏洞仅限于 macOS High Sierra。硅星人又在另一台安装了 macOS Sierra 的 12' MacBook 上测试,没能复现。


macOS High Sierra 是苹果推出最新的操作系统版本,只要是安装这一系统的机型,都会受到影响。


世界上有两种安全漏洞,第一种需要专业的黑客知识和丰富的经验,准确找到漏洞所在和滥用方式,和系统管理员斗智斗勇;第二种,则不需要任何高超的黑客技巧或复杂的外接设备,连小学生都能轻松掌握。


很遗憾,今天苹果留在 macOS 里的这个漏洞,属于第二种。


硅星人可以确定,这一漏洞其实不是有意而为之,应该实属负责这部分的程序员(也可能是实习生)脑子进水。因为,macOS 里其实隐藏了一个最高权限的账户,用户名就是 root,是留给苹果维修人员和 IT 人士的,一般用户不会看到。而今天这个漏洞应该是苹果自动打开了该账户,留了空的密码,还没告诉用户。


它如何影响用户?比如说你正在电脑上做一份机密文件,中午锁屏/睡眠/关机去吃饭,别人可以开机并直接登陆你的电脑。注意,root 是 macOS 里最高的权限账户,就算你的电脑有不同分区,理论上坏人登陆进去后所有文件都能一览无遗。


再复杂一点。如果你曾经开过屏幕共享,或者让公司 IT 远程控制给你修过电脑的话,你的远程控制端口是开着的。这意味着坏人可以远程登陆你的电脑。



最开始报告漏洞的,也就是上面那条截图推文的作者 Ergin,说是自己公司的同事在帮助用户登陆账户时,偶遇了这个情况。同事告诉了他,他又在自己的电脑上试了下,能够复现,于是赶快发了推昭告世人。


虽然有很大的运气或者说是偶然成分,但这个漏洞的糟糕程度仍然令人担忧:用户名 root,密码不是简单,而是压根就没有。这不是别的公司,是封闭、安全出了名的苹果……可真是滑天下之大稽了。


有用户吐槽:四年前我建议推出「零步验证」,没想到苹果真做出来了。



(解释一下这个梗:两步验证就是用户名密码+短信/验证器随机密码,对应的是普通/一步验证,用户名+密码。零步验证……就是苹果的新功能:不需要密码。)


没过多久,有人开始利用这个漏洞「搞事情」了:


Twitter 用户 @Viss 打开了苹果自家推出的网络管理工具 RDP 以及其它网络嗅探工具,用 root 用户名和空密码组合,开始暴力盲试网络上所有安装了 macOS High Sierra,并且打开了远程控制端口的电脑。


经过几次转换思路,这次试验取得了令人震惊的结果。@Viss 成功刷出了大量的潜在「受害者」。在 RDP 里,他能够看到这些电脑的名字、IP 地址、登陆的用户名、正在使用的 App,以及使用状态(闲置了多久时间,等等)。



网友们将这个漏洞命名为 #iamroot。


苹果方面表示正在开发新的软件更新以解决此问题。现在才开始解决,已经迟到了多久?


2017 年 6 月 5 日,macOS High Sierra 正式推出并免费向绝大多数 Mac 用户推送。而根据硅星人的查证,最早在今年 6 月 7 日,也就是新系统推出两天后,就有用户在苹果开发者论坛留言:


升级到 macOS High Sierra,系统里原来的两个管理员账户全都变成普通用户了。



同一条帖子里,在 11 月 13 号,也就是两个星期前,就有其他用户留言,建议使用 root 用户名+密码空,跟本次 #iamroot 漏洞完全相同的操作方式来获取管理员权限。



这是什么意思?硅星人猜测,或许用户的电脑(不一定所有人,至少在这个例子里)升级到 macOS High Sierra 时,系统本身就进行了一个很蹊跷的动作:低现有管理员用户的权限,然后静默创建一个新的管理员用户。


系统为什么要这样做?或许,这是苹果想为公司 IT 设置的捷径,方便他们远程管理员工的电脑;也有可能,这是苹果想给自己留的捷径,以便推送一切重要的安全更新。


如果 macOS 像 iOS 那样也设有捉虫悬赏 (bug bounty),这种糟糕的漏洞没准能够更早发现 ,而且用一种不像现在这么丢人的方式报告给苹果。很遗憾,macOS 并没有相关安全漏洞发现汇报的鼓励机制。


最后,当然要兑现一开始的承诺,告诉大家怎样修复这个漏洞。


弱智的漏洞只需要简单的方法就能填上。


开始之前,先试一下能否在自己电脑上复现 #iamroot 漏洞的情况,也就是用 root+空密码试一下登陆。确认后再进行下一步。



如果你背后发凉,好像有人已经在偷窥你的电脑,断网后进行所有操作可能会让你感觉好一点。


首先,你需要关闭访客登陆。进入系统偏好设置—用户和群组—点击客人用户(访客),反选所有的选项。如果你已经是管理员的话,需要点击左下角的锁按钮,输入自己的用户名密码再进行更改,下同。



然后,你需要给这个你从来不知道的 root 账户,增加一个密码。


还是系统偏好设置——用户和群组,点击左下角的登陆选项,再点击网络账户服务器旁边的「加入」按钮:



在弹出的菜单中点击「打开目录实用工具」。在新弹出的窗口里点以下锁按钮,输入用户名密码,以进行修改。



最后,在屏幕顶部的菜单栏中找到编辑—更改 Root 密码,输入一个复杂的密码。


你会看到,截图里更改 Root 密码一项是灰色的,因为硅星人已经关闭了 Root 账户。不过苹果在官方回应里没有建议用户关掉 Root 账户


We are working on a software update to address this issue. In the meantime, setting a root password prevents unauthorized access to your Mac. To enable the Root User and set a password, please follow the instructions here. If a Root User is already enabled, to ensure a blank password is not set, please follow the instructions from the ‘Change the root password’ section.


当然,除了上述操作外,更保险的是苹果官方对漏洞的修复。就在昨晚,苹果在App Store里推送了一项安全更新,赶快升级吧。


本内容为作者独立观点,不代表虎嗅立场。未经允许不得转载,授权事宜请联系hezuo@huxiu.com
如对本稿件有异议或投诉,请联系tougao@huxiu.com
正在改变与想要改变世界的人,都在 虎嗅APP
赞赏
关闭赞赏 开启赞赏

支持一下   修改

确定