漏洞来源

这个安全问题来源于Cryptsetup存在的一个漏洞(CVE-2016-4484)。Cryptsetup是在Linux统一密钥设置(Linux Unified Key Setup, LUKS)中用来加密磁盘的软件,而LUKS则是Linux系统中标准的磁盘加密。

   

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

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

西班牙安全研究员Hector Marco和Ismael Ripoll发现了这一漏洞,影响范围覆盖几乎所有的Linux发行版,包括Debian, Ubuntu, Fedora, Red Hat Enterprise Linux (RHEL)和SUSE。

   

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

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

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

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

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

攻击者也可以替换内核和initrd镜像。
信息泄露:

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

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

这个漏洞的影响范围包括Debian, Ubuntu, Fedora和其他一些Linux发行版本。Arch Linux和Solus用户不受影响。
解决方案

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

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

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

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

# sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="/GRUB_CMDLINE_LINUX_DEFAULT="panic=5 /' /etc/default/grub# grub-install

●本文编号137,以后想阅读这篇文章直接输入137即可。

●输入m可以获取到文章目录

Linux爆新漏洞,长按回车键70秒即可获得root权限的更多相关文章

  1. 替换linux系统文件etc下passwd文件的字段获取真正的root权限

    sudo与root 很多人都知道使用linux可以利用sudo来执行一些root权限执行的事情,但是sudo和root还是有很大的区别的. 区别一:sudo可以执行的命令是root账户利用/etc/s ...

  2. Linux 曝出严重安全漏洞,受限用户亦可提权至 Root 身份运行任意命令!(内附解决方案)

    本文首发于:微信公众号「运维之美」,公众号 ID:Hi-Linux. 「运维之美」是一个有情怀.有态度,专注于 Linux 运维相关技术文章分享的公众号.公众号致力于为广大运维工作者分享各类技术文章和 ...

  3. linux 添加用户并赋予root权限

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy   //修改密码Changing pass ...

  4. linux下添加用户并赋予root权限

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy   //修改密码Changing pass ...

  5. Linux创建用户并赋予Root权限

    添加普通用户 [root@server ~]# useradd test //添加一个名为test的用户[root@server ~]# passwd test //修改密码Changing pass ...

  6. linux下如何添加一个用户并且让用户获得root权限 备用

    (2010-12-02 09:58:30) 转载▼ 标签: 帐号 权限 杂谈 分类: Linux 测试环境:CentOS 5.5 1.添加用户,首先用adduser命令添加一个普通用户,命令如下: # ...

  7. linux 下如何添加一个用户,并给予用户root权限

    分类专栏: Linux   1.添加用户,首先用adduser命令添加一个普通用户,命令如下: adduser tommy //添加一个名为tommy的用户 passwd tommy //修改密码 C ...

  8. linux下如何添加一个用户并且让用户获得root权限

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户 #passwd tommy //修改密码 Changing pass ...

  9. MySQL 0Day漏洞出现 该漏洞可以拿到本地Root权限

    2016年9月12日, legalhackers.com网站发布了编号为CVE-2016-6662的0day漏洞公告 .由于该漏洞可以获得MySQL服务器的Root权限,且影响MySql5.5.5.6 ...

随机推荐

  1. dev gridcontrol纵向合并单元格设置

    1.要设置gridcontrol中指定列(columns中选中指定列)的AllowMerge属性为true; 2.要设置gridview中AllowCellMerge的属性为true; 3.如果只合并 ...

  2. js基础知识温习:构造函数与原型

    构造函数 构造函数主要用于初始化新对象.按照惯例,构造函数名第一个字母都要大写. 构造函数有别于其它函数在于它使用new操作符来调用生成一个实例对象.换句话说,如果一个函数使用new操作符来调用,则将 ...

  3. Sentinel-Redis高可用方案(一):主从复制

    引言 大概是因为Redis是个人开发的产品,所以Redis的高可用方案是被分成了几块来实现:主从复制.主从切换以及虚拟IP或客户端方案. 从Redis 2.8开始加入对Sentinel机制从而实现了服 ...

  4. Nginx 负载均衡

    Nginx简单实现网站的负载均衡 地址:http://www.cnblogs.com/alvin_xp/p/4161162.html

  5. C语言strcat()函数:连接字符串

    头文件:#include <string.h> strcat() 函数用来连接字符串,其原型为:    char *strcat(char *dest, const char *src); ...

  6. MVC———用自定义扩展类实现验证

    废话少说,直接上图 →_→ NO.1 NO.2 NO.3 NO.4 NO.5 NO.6 NO.7 NO.8 NO.9 NO.10 NO.11 NO.12 NO.13 NO.14 NO.15 NO.16 ...

  7. 安装rpm包时遇到Header V3 DSA signature: NOKEY时解决办法

    安装rpm包,特别是没有GPGkey校验,原因是rpm版本过低导致的. 代码如下: warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY ...

  8. alarm

    AlarmManager的使用机制有的称呼为全局定时器,有的称呼为闹钟.通过对它的使用,它的作用和Timer有点相似.都有两种相似的用法:(1)在指定时长后执行某项操作 (2)周期性的执行某项操作 在 ...

  9. RabbitMQ 主题(Topic)

    我们进步改良了我们的日志系统.我们使用direct类型转发器,使得接收者有能力进行选择性的接收日志,,而非fanout那样,只能够无脑的转发. 虽然使用direct类型改良了我们的系统,但是仍然存在一 ...

  10. MyBatis学习--查询缓存

    简介 以前在使用Hibernate的时候知道其有一级缓存和二级缓存,限制ORM框架的发展都是互相吸收其他框架的优点,在Hibernate中也有一级缓存和二级缓存,用于减轻数据压力,提高数据库性能. m ...