这是一篇关于我的Firstleaks靶场的扩展,因为我在那个靶场最后使用了脏牛提权
这里正好说一下他为什么叫脏牛(dirty cow)其中cow有母牛的意思,但是在这里 他的意思为copy on write,写时复制机制
他的影响非常广泛,使用 uname -a 查看你需要提权的Linux的内核版本
Linux kernel >= 2.6.22 (从2007年,到2016年10月18日才修复)
他的适用版本
Ubuntu
4.8.0-26.28 for Ubuntu 16.10
4.4.0-45.66 for Ubuntu 16.04 LTS
3.13.0-100.147 for Ubuntu 14.04 LTS
3.2.0-113.155 for Ubuntu 12.04 LTS
Debian
3.16.36-1+deb8u2 for Debian 8
3.2.82-1 for Debian 7
4.7.8-1 for Debian unstable
Arch
4.4.26-1 for ArchLinux (linux-lts package)
4.8.3 for ArchLinux (linux package)
他的危害也就是我在FirstLeaks靶场使用的低权限用户可以进行提权
使用
脏牛的使用非常简单,只有两句话,由于它是由C编写的,所以我们需要先进行编译
执行
gcc -pthread dirty.c -o dirty -lcrypt
这样会生成可执行的dirty文件
注意这篇文章中的所有图片截取自我的Firstleaks靶场文章
之后就是设置我们的firefart的密码,因为dirty cow 将会创建firefart用户并把它提升为root用户,所以我们执行
./dirty 密码 我们也可以不设置密码,那就会是默认密码,root
这里稍微说一下这里为什么,因为他是修改了原本已被废弃的passwd的X,修改为我们想要的密码,并提升为root
原理
他的原理我暂时还是分析不太了这里我粘一篇大佬的分析
https://www.anquanke.com/post/id/84851
和官方的视频讲解,这个视频听了两遍我还是朦朦胧胧,所以就不误导大家了
https://www.youtube.com/watch?v=kEsshExn7aE
Views: 7