天天看点

Linux 爆新漏洞,长按回车 70 秒可获得 root 权限

Linux 爆新漏洞,长按回车 70 秒可获得 root 权限

按住回车70秒,黑客就能在linux系统绕过认证,进而获取root权限,并能远程控制经过加密的linux系统。

漏洞来源

这个安全问题来源于cryptsetup存在的一个漏洞(cve-2016-4484)。cryptsetup是在linux统一密钥设置(linux unified key setup, luks)中用来加密磁盘的软件,而luks则是linux系统中标准的磁盘加密。

Linux 爆新漏洞,长按回车 70 秒可获得 root 权限

漏洞其实是出现在系统后cryptsetup处理密码输入错误的时候,它会允许用户多次重试输入密码。而当用户输入错误93次后,程序就会给用户一个带root权限的shell(busybox)。

也就是说,如果你重复93次输错密码,或者持续按回车键大概70秒,你就能够获得root initramfs (initial ram filesystem) shell。获取shell之后,你就可以复制、修改或者破坏整个硬盘,或者也可以使用网络传输数据。

漏洞能被远程利用

西班牙安全研究员hector marco和ismael ripoll发现了这一漏洞,影响范围覆盖几乎所有的linux发行版,包括debian, ubuntu, fedora, red hat enterprise linux (rhel)和suse。

Linux 爆新漏洞,长按回车 70 秒可获得 root 权限

研究人员在今年奥地利维也纳举行的deepsec会议上演示了细节:

“黑客可以从受影响系统中获取root initramfs shell。并且漏洞的成功率非常高,因为他不依赖某个特定的系统或者某个配置……这个漏洞在图书馆、atm机、机场、实验室等场景下特别有用,因为在这些场景下,开机的过程受到(加密)保护,而我们只有键盘/鼠标。”

看到这里,你可能会认为漏洞只能在攻击者有物理接触的情况下才有可能发生。但实际上,漏洞也可以被远程触发。如果你使用的是基于linux的云服务,就可以在没有物理接触的条件下利用漏洞。

漏洞到底有多严重

值得注意的是,攻击者无法利用这个漏洞来获取加密磁盘的内容,但能进行下面的这些操作:

权限提升:

由于boot分区一般都是不加密的,因此利用漏洞黑客可以用setuid存储一个可执行文件,然后再用本地用户身份执行进行提权。

攻击者也可以替换内核和initrd镜像。

信息泄露:

虽然攻击者无法直接读取加密的磁盘,但他能做的事还是很多的。比如,他可以把磁盘复制到外部设备,之后进行暴力破解,

dos攻击:

黑客可以删除磁盘上的内容。

这个漏洞的影响范围包括debian, ubuntu, fedora和其他一些linux发行版本。arch linux和solus用户不受影响。

解决方案

尽管漏洞能轻易触发并且影响范围大,但它的修复方案也异常简单:

首先,在luks密码提示窗处按压回车键70秒,检查系统是否存在漏洞。

如果存在漏洞,检查下你所使用的linux是否发布了补丁。

如果官方没有发布补丁,你可以自行修改cryptroot文件:

Linux 爆新漏洞,长按回车 70 秒可获得 root 权限

继续阅读