声明
请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。
一、漏洞描述
它是自 5.8 以来 Linux 内核中的一个漏洞,它允许覆盖任意只读文件中的数据。这会导致权限提升,因为非特权进程可以将代码注入根进程。
CVE-2022-0847-DirtyPipe-Exploit CVE-2022-0847 是存在于 Linux内核 5.8 及之后版本中的本地提权漏洞。攻击者通过利用此漏洞,可覆盖重写任意可读文件中的数据,从而可将普通权限的用户提升到特权 root。CVE-2022-0847 的漏洞原理类似于 CVE-2016-5195 脏牛漏洞(Dirty Cow),但它更容易被利用。漏洞作者将此漏洞命名为“Dirty Pipe”
二、影响版本
Linux内核5.8 及之后版本
5.8 <= Linux 内核版本 < 5.16.11 / 5.15.25 / 5.10.102
三、漏洞复现
镜像站:
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/
https://mirrors.aliyun.com/ubuntu-releases/
uname -r #查看内核版本
利用一:
查看具有suid权限的可执行文件
可使用如下两个命令来查看
find / -user root -perm /4000 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
拉取POC:
https://haxx.in/files/dirtypipez.c
利用二:
使用POC将 root 用户密码将被重置为空,可无密码登录
#恢复原来的密码
rm -rf /etc/passwd
mv /tmp/passwd /etc/passwd
四、修复建议
更新升级 Linux 内核到以下安全版本:
- Linux 内核 >= 5.16.11
- Linux 内核 >= 5.15.25
- Linux 内核 >= 5.10.102
五、参考链接
https://mp.weixin.qq.com/s/6PgfmetDmySiAA36_gP-XA
https://mp.weixin.qq.com/s/kdwr2Fxr9wqCQYHs5Jp59Q
https://mp.weixin.qq.com/s/cHuO8TO4IvGgslvipJGQ2A