
Dirty Cow exploit - CVE-2016-5195
Dirty COW 是 Linux 内核中一种已知的 本地权限提升 (LPE) 漏洞,编号为 CVE-2016-5195。 :contentReference[oaicite:0]{index=0}
一般来说,Dirty COW 影响 Linux 内核 2.x 到 4.x 且低于 4.8.3 的版本。 :contentReference[oaicite:1]{index=1}
一些发行版已反向移植补丁,因此内核版本看起来“旧”,但可能已经安全。
Dirty COW 已在以下内核版本(及更新版本)中修复:
检查目标内核版本:
uname -r
此漏洞利用以 dirtycow 漏洞的 pokemon 利用作为基础,并自动生成新的 passwd 行。 运行二进制文件时,系统会提示用户输入新密码。 然后,原始的 /etc/passwd 文件会被备份到 /tmp/passwd.bak,并用生成的行覆盖 root 账户。 运行漏洞利用后,你应该能够使用新创建的用户登录。
要使用此漏洞利用,请根据你的需要修改用户值。
默认创建的用户是 toor。
原始漏洞利用(dirtycow 的 ptrace_pokedata “pokemon” 方法): https://github.com/dirtycow/dirtycow.github.io/blob/master/pokemon.c
编译方法:
gcc -pthread dirty.c -o dirty -lcrypt
然后通过以下方式运行新创建的二进制文件:
./dirty
或
./dirty my-new-password
之后,你可以 su toor 或 ssh toor@...
运行漏洞利用后别忘了恢复 /etc/passwd!
mv /tmp/passwd.bak /etc/passwd
漏洞利用由 Christian "firefart" Mehlmauer 改编