运行在“Ring -3” 的 MINIX

你可能不知道,但是在你的英特尔系统里,除了你的主操作系统之外,还有一个操作系统在运行,这就是 MINIX。

早在今年 5月,EFF 就发布了一篇文章,介绍了自 2008 年以来,这十年间英特尔发布的所有处理器都运行了一个修改版的 MINIX 3,它被称之为“管理引擎(ME)”。这个由计算机科学教授 Andrew Tanenbaum (对,就是那位早期曾经和 Linus Torvalds 论战过的教授)作为一个教育工具开发的类 Unix 操作系统内置于每一款新英特尔处理器内。

MINIX 运行在你的 CPU 的 “Ring -3”(负数 3) 层上,虽然是你的 CPU,但是你无权访问它。你能够实际访问的最低的 “Ring” 是 “Ring 0”,你的操作系统(比如 Linux)内核就运行在这一层,而大多数用户程序则运行在 “Ring 3”(正数 3)上。

这个运行在 “Ring -3” 的 MINIX 包括如下功能:

完整网络堆栈、文件系统、许多驱动程序 (包括 USB、网络等),以及一个 Web 服务器!

没错,Web 服务器。在你的 CPU 里面有一个秘密的 Web 服务器,您是不允许访问的,而且,显然,英特尔并不希望你知道。我们不知道这个 Web 服务器究竟有什么用途,也许是 CPU 厂商会用它来访问一些数据或者进行一些控制。但是这一切,你都不知道。

据称,Google 正在积极从其内部服务器上移除这个管理引擎,显然 Google 对其安全风险感到忧虑。

这个事情有两个有趣或者说疯狂的地方:

首先,由于英特尔 CPU 的流行,所以,世界上最流行的操作系统恐怕不是 Windows,也不是 Linux,而是这个 MINIX——我们都是 MINIX 用户!

其次,由于你根本没权限访问到“Ring -3”,而这个 MINIX 却能够完全访问你的整个系统——这就是一个巨大的安全风险,运行权限极大,但是从不更新。

MINIX 作者表态

在过去几天多家媒体报道了这一消息,以至于惊动了 Andrew 本人。他在个人网站上发表了公开信,强调自己并没有直接参与这个项目,如果这个系统有后门的话,这与他无关(他对此并没有明说只是暗示)。

Andrew Tanenbaum 称,MINIX 3 在 2000 年决定采用 BSD 授权,原因是企业不喜欢 GPL 许可证,认为 GPL 会让他们花费许多时间精力金钱去修改代码,然后免费提供给竞争对手。他说,英特尔的工程团队在几年前接触了他,询问了 MINIX 3 大量的技术问题,要求他对 MINIX 3 进行大量改变,减少内存占用,选择性的关闭不需要的功能。

在短暂的活跃之后双方进入了静默,直到现在媒体报道英特尔处理器都运行了 MINIX 3 他才知道。他对此感到吃惊,但并不在意,因为该操作系统是 BSD 授权,英特尔不需要付钱给他。他只是希望英特尔在部署了 MINIX 3 之后能通知他一下,这只是礼貌问题。

参考:solidotnetworkworld

添加新评论