
Bash 脚本,用于检查并利用 Linux 漏洞 CVE-2022-0847(“Dirty Pipe”)
此脚本允许易受攻击系统上的非特权用户执行以下操作:
本仓库包含 2 个利用脚本:
将 root 密码替换为 “piped”,并将原始 /etc/passwd 文件备份到 /tmp/passwd.bak。然后,该利用脚本提供一个提权后的 root shell,并在退出 shell 时恢复原始 passwd 文件。

向以 root 身份运行的只读 SUID 进程内存中注入并覆盖数据。

克隆此仓库并进入工作目录
git clone https://github.com/rexpository/linux-privilege-escalation.git
cd linux-privilege-escalation
检查当前目标系统是否易受攻击
./check.sh
安装 GCC 以编译利用脚本
sudo apt-get install gcc
编译并运行 bash 脚本以自动编译两个利用脚本
chmod +x compile.sh
./compile.sh
运行所需的利用二进制文件
./exploit-1
或
./exploit-2 /usr/bin/sudo
此漏洞存在于进程间单向通信的 pipe 工具中,因此得名 “Dirty Pipe”。
非特权本地用户可利用此漏洞覆盖 Linux 内核中本应为只读的文件,从而提升其在系统上的权限。
此漏洞的原因是:在构建 pipe 缓冲区结构时,使用了部分未初始化的内存。新结构体成员的零初始化缺失导致 flags 值残留,攻击者可利用这一点获得对缓存页面的写入权限,即便这些页面原本被标记为 只读。
为确保基础设施免受此类威胁: