2025 年 7 月,sudo 工具中新披露的两个漏洞——CVE-2025-32463 和 CVE-2025-32462——使众多 Linux 发行版面临风险。其中更为严重的 CVE‑2025‑32463 的 CVSS 评分为 9.3,可实现本地权限提升并可能导致系统完全沦陷。漏洞利用代码已在野外出现。请尽快修补。
sudo 是几乎所有 Unix 系统上的核心工具,允许用户以另一个用户(通常是 root)的身份运行命令。它是 Linux 上特权访问控制的核心。
如果 sudo 被攻破,后果将极为严重——任何本地用户都可能获得系统的root 级访问权限。
sudoers 策略解析逻辑中存在不安全的路径扩展和输入清理缺失。拥有低权限的攻击者可以利用一个配置错误的 sudoers 规则,该规则在命令路径中使用了通配符(*)。通过构造恶意二进制文件并诱使 sudo 执行它(借助通配符),攻击者能够获得 root shell。
🔥 在一个概念验证 (PoC) 中,攻击者利用了:
Cmnd_Alias EXPLOIT = /usr/bin/cp /etc/* /dev/null
通过将他们的载荷植入 /etc/passwd,他们立即提升了特权。
所有包含受影响 sudo 版本的主流发行版均受影响:
截至 2025 年 7 月 15 日,每个发行版都已发布了紧急补丁。
请关注以下内容:
/etc/sudoers 或包含的策略文件中的通配符规则。
/tmp、/dev/shm、/home/*/.local 等目录中的未知二进制文件或脚本。
类似以下的日志条目:
sudo: unknown user root executed /tmp/payload
立即更新 Sudo
1.9.17p1 或更高版本修复了这两个 CVE。
示例(Ubuntu):
sudo apt update && sudo apt install sudo
审计 sudoers 规则
避免在 sudoers 中使用通配符条目:
# Dangerous
myuser ALL=(ALL) NOPASSWD: /usr/bin/cp /etc/* /tmp/
使用 sudo 的 secure_path 指令
$PATH 值。文件完整性监控
myuser ALL=(ALL) NOPASSWD: /usr/bin/cp /etc/passwd /tmp/passwd.backup
除非必要,否则避免使用通配符(*)和目录级权限。
这个漏洞再次提醒我们:“能力越大,安全责任越大。” sudo 的灵活性使其成为一个强大的工具,但配置不当也会带来危险。
组织应将 sudo 策略的健康视为关键基础设施,而非事后才考虑的事。自动化审计。应用最小权限原则。并且,始终快速修补——因为攻击者已经在行动了。