dirtyc0w_Linux提权


漏洞编号:

CVE-2016-5195

漏洞名称:

Dirty COW

漏洞危害:

低权限用户利用该漏洞可以在众多Linux系统上实现本地提权

影响范围:

Linux kernel >= 2.6.222007年发行,到今年1018日才修复)

漏洞概述:

该漏洞具体为,Linux内核的内存子系统在处理写入时复制(copy-on-write, COW)时产生了竞争条件(race condition)。恶意用户可利用此漏洞,来获取高权限,对只读内存映射进行写访问。(A race condition was found in the way the Linux kernel’s memory subsystem handled the copy-on-write (COW) breakage of private read-only memory mappings.)

竞争条件,指的是任务执行顺序异常,可导致应用崩溃,或令攻击者有机可乘,进一步执行其他代码。利用这一漏洞,攻击者可在其目标系统提升权限,甚至可能获得root权限。

根据官方发布的补丁信息,这个问题可以追溯到2007年发布的Linux内核。现在还没有任何证据表明,2007年后是否有黑客利用了这个漏洞。不过安全专家Phil Oester称发现一名攻击者利用该漏洞部署攻击,并向Red Hat通报了最近的攻击事件。

修复方法:

进行Linux内核维护的Greg Kroah-Hartman宣布针对Linux 4.8、4.74.4 LTS内核系列的维护更新(更新后为Linux kernel 4.8.3、4.7.94.4.26 LTS),修复了该漏洞。目前新版本已经登录各GNU/Linux发行版库,包括Arch Linux(测试中)、Solus和所有受支持版本的Ubuntu。Debian开发人员前天也宣布稳定版Debian GNU/Linux 8 “Jessei”系列内核重要更新——本次更新总共修复4个Linux内核安全漏洞,其中也包括了脏牛。

各操作系统供应商应该即刻下载Linux kernel 4.8.3Linux kernel 4.7.9Linux kernel 4.4.26 LTS,为用户提供稳定版渠道更新。

软件开发人员可以通过https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619 重新编译Linux修复此漏洞。

EXP

http://ys-k.ys168.com/575740248/l6J277L3I4JLH7TjsKkJ/dirty.zip

内核版本

编译

gcc -pthread dirty.c -o dirty -lcrypt

运行

 chmod 777 dirty


./dirty yourpassword

由于需要竞争,所以执行提权exp之后需要等待一段时间。

原来的权限:

用脏牛提权后的权限:

uid = 0 root权限

如果是在反弹的 shell 里执行 直接连接 ssh

别忘了恢复原来的passwd 文件

总结:

  • 学会了脏牛漏洞提权linux的方法