28 连击！打倒 Linux 大魔王
只需要一次次敲下退格键就够了！
grub 救援 安全
218.78.189.250
哦，怪不得这两天grub更新了，原来是补漏洞
来自上海的 Firefox 43.0|Ubuntu 用户
2015-12-18T17:42:19.000
117.15.161.192
危害性不大，需要物理接触
来自天津的 Vivaldi 1.0|GNU/Linux 用户
2015-12-18T20:04:07.000
117.15.161.192
危害性不大，需要物理接触
来自天津的 Vivaldi 1.0|GNU/Linux 用户
2015-12-18T20:04:11.000
124.163.206.69
奇葩漏洞
experience [Chrome 47.0|GNU/Linux]
2015-12-18T20:26:38.000
223.79.35.107
哦。
绿色圣光 [Iceweasel 38.2|GNU/Linux]
2015-12-19T00:15:30.000
117.151.65.202
CentOS 7.0 没有这个问题。
来自湖北的 Chrome 47.0|Windows 10 用户
2015-12-19T04:38:46.000
119.254.210.129
不会啊，GRUB2 2.02 是当前最新的。除非你打上了补丁，或者没启用验证。
linux [Chrome 47.0|Mac 10.11]
2015-12-19T08:42:33.000
106.45.159.204
涨姿势了～～～
yang.yusi [Firefox 43.0|Ubuntu]
2015-12-19T15:36:29.000
121.15.230.42
这都退了28步了
文剑一飞 [Chrome 47.0|Windows 7]
2015-12-19T18:17:43.000
117.151.65.202
你这个验证，是指的啥？ 为用户设置密码吗？
来自湖北的 Chrome 47.0|Windows 10 用户
2015-12-19T19:14:42.000
117.151.65.202
(GRUB) 2.02~beta2 这是我机子上面的版本。
来自湖北的 Chrome 47.0|Windows 10 用户
2015-12-19T19:16:47.000
119.254.210.129
看来你没用过 GRUB2 里面验证。本文中有链接说明。
linux [Chrome 47.0|Mac 10.11]
2015-12-19T22:52:02.000
183.33.157.212
你在GRUB引导有密码保护么？<br />
然……<br />
你不会是在linux登录的时候按退格键吧……
来自广东珠海的 Chrome 47.0|GNU/Linux 用户
2015-12-22T00:22:43.000
119.254.210.129
前两天发的，最新的 CentOS 7.0 1511 是补了。
linux [Chrome 47.0|Mac 10.11]
2015-12-22T01:05:22.000
59.57.204.47
没设置密码。。。。。。。。。。。。。。
来自福建厦门的 Firefox 43.0|Windows 7 用户
2015-12-23T08:43:19.000
122.194.13.251
真想试一下
来自江苏南京的 Firefox 43.0|Windows 10 用户
2015-12-24T21:21:40.000
219.236.51.223
物理接触，进入系统的方法太多了。。。
来自北京的 Chrome 48.0|GNU/Linux 用户
2016-01-18T13:10:37.000
只需要一次次敲下退格键就够了！

> 
> 只需要一次次敲下退格键就够了！
> 
> 
> 


![BACKSPACE](/data/attachment/album/201512/18/172713vndez88mnme1e48x.jpg)


两位西班牙的安全研究人员[发现了](http://hmarco.org/bugs/CVE-2015-8370-Grub2-authentication-bypass.html) Linux 的一个奇怪的零日安全漏洞，如果你的 Linux 使用了 GRUB2 [密码保护](https://help.ubuntu.com/community/Grub2/Passwords)，在输入用户名时，**连击 28 个退格键**就可以直接进入 GRUB2 <ruby> 救援模式 <rp>  （ </rp> <rt>  rescue shell </rt> <rp>  ） </rp></ruby>。


![28 HITS！进入 grub 救援模式](/data/attachment/album/201512/18/172715ksyyygffggcf81fg.png)


救援模式可是一个具有强大权限的外壳，从而再加上一些其它手段，你就可以直接获得该 Linux 的全部访问权力了。


![通过救援模式，跳过验证进行正常模式](/data/attachment/album/201512/18/172716yt4jjtkzhn0hg47k.png)


具体的技术细节在此就不详述了，可以参考该零日漏洞的[详细描述](http://hmarco.org/bugs/CVE-2015-8370-Grub2-authentication-bypass.html)（[中文](http://www.freebuf.com/vuls/90048.html)）。


受影响的 GRUB2 跨度很大，从 2009 年发布的版本 1.98 到 2015 年发布的 2.02 均受影响。要想判断你的 GRUB2 是否受影响，可以在 GRUB2 引导提示 GRUB 用户名时，连续输入 28 个退格键即可，如果系统重启了或者出现了 GRUB 救援 shell，那说明就存在该漏洞。


![你输入的退格键清空了某个内存空间](/data/attachment/album/201512/18/172716id4srdsejr21jw6w.png)


需要说明的，该漏洞的利用需要几个条件：


* 需要能物理接触到你的 Linux 主机
* Linux 主机使用了受到漏洞影响的 GRUB2 软件
* GRUB2 使用了密码保护（如果你的 GRUB2 没有设置密码，本来就存在引导时被本地攻击的风险，包括进入单用户模式、救援模式等可直接绕过 Linux 正常启动后的用户验证）


这两位安全研究人员已经为此发布了[紧急补丁](http://hmarco.org/bugs/CVE-2015-8370-Grub2-authentication-bypass.html#fix)， [Ubuntu](https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-December/003218.html)、[Red Hat](https://rhn.redhat.com/errata/RHSA-2015-2623.html) 和 [Debian](https://security-tracker.debian.org/tracker/CVE-2015-8370) 也都发布了他们的补丁。


所以，这个事情提醒我们：“退一步，海阔天空” :D

