平台
python
组件
weasyprint
修复版本
68.0.1
68.0
CVE-2025-68616 描述了 WeasyPrint 的 defaulturlfetcher 中的服务器端请求伪造 (SSRF) 保护绕过漏洞。该漏洞允许攻击者访问内部网络资源,即使开发人员已经实施了自定义 url_fetcher 来阻止此类访问。受影响的版本包括 WeasyPrint 67.0 及更早版本。建议升级至 68.0 版本以解决此问题。
攻击者可以利用此 SSRF 漏洞绕过 WeasyPrint 中实施的任何自定义 URL 验证机制。这意味着他们可以发起请求到内部网络资源,这些资源通常对外部用户不可见。例如,攻击者可以访问 localhost 上的服务,或者通过访问云元数据端点来获取敏感的云配置信息。这种攻击可能导致信息泄露、权限提升,甚至可能允许攻击者控制受影响的系统。由于 WeasyPrint 经常用于生成 PDF 文档,攻击者可能能够通过恶意 PDF 文件将此漏洞引入到其他应用程序中,从而扩大攻击范围。
目前没有公开的漏洞利用程序 (PoC),但该漏洞的本质使其容易受到攻击。由于 SSRF 漏洞通常被认为是高风险,因此预计可能会出现公开的 PoC。该漏洞已于 2026-01-20 公布。CISA 尚未将其添加到 KEV 目录,但其高 CVSS 评分表明存在中等至高的利用概率。
Organizations using WeasyPrint to generate documents from untrusted sources are particularly at risk. This includes applications that process user-supplied URLs or data that is subsequently used in document generation. Shared hosting environments where multiple applications share the same WeasyPrint instance are also vulnerable, as a compromise in one application could potentially be leveraged to exploit this SSRF vulnerability in others.
• python / server:
import requests
from urllib.parse import urlparse
def check_redirects(url):
try:
response = requests.get(url, allow_redirects=True)
parsed_url = urlparse(response.url)
if parsed_url.netloc != urlparse(url).netloc:
print(f"Potential SSRF bypass detected: URL redirected to {response.url}")
except requests.exceptions.RequestException as e:
print(f"Error checking URL: {e}")
# Example usage (replace with WeasyPrint-related URLs)
check_redirects("http://localhost:8000/internal")• generic web:
curl -I 'http://your-weasyprint-server/some/url' | grep 'Location:'disclosure
漏洞利用状态
EPSS
0.06% (18% 百分位)
CISA SSVC
CVSS 向量
最有效的缓解措施是升级到 WeasyPrint 68.0 或更高版本,该版本修复了此漏洞。如果无法立即升级,可以考虑以下临时缓解措施:首先,仔细审查并加强自定义 url_fetcher 的实现,确保它能够正确地验证和过滤所有 URL。其次,限制 WeasyPrint 应用程序的网络访问权限,只允许其访问必要的资源。最后,实施 Web 应用防火墙 (WAF) 规则,以检测和阻止可疑的 SSRF 请求。升级后,请确认通过测试自定义 URL 验证逻辑,确保新的版本不再允许绕过。
升级 WeasyPrint 到 68.0 或更高版本。这可以修复 SSRF 漏洞,防止通过 HTTP 重定向绕过保护。可以使用 Python 包管理器 pip 执行命令 `pip install --upgrade weasyprint` 进行升级。
漏洞分析和关键警报直接发送到您的邮箱。
CVE-2025-68616 是 WeasyPrint 67.0 及更早版本中的服务器端请求伪造 (SSRF) 保护绕过漏洞,允许攻击者访问内部网络资源。
如果您正在使用 WeasyPrint 67.0 或更早版本,则可能受到此漏洞的影响。请立即升级到 68.0 或更高版本。
升级到 WeasyPrint 68.0 或更高版本是修复此漏洞的最佳方法。如果无法升级,请加强自定义 URL 验证逻辑并限制网络访问权限。
目前没有公开的漏洞利用程序,但由于 SSRF 漏洞的严重性,预计可能会出现。
请查阅 WeasyPrint 官方安全公告,以获取有关此漏洞的更多信息和修复指南。
上传你的 requirements.txt 文件,立即知道是否受影响。