CVE-2026-40072
web3.py 受 CCIP Read(EIP-3668)OffchainLookup URL 处理中的 SSRF 影响
- 已发布
- 2026年4月9日
- 已更新
- 2026年4月9日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月17日
初级CVSS
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X低 · 未来 30 天
- 百分位
- 13.9%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
# web3.py SSRF 漏洞(CVE-2025-XXXX) web3.py 允许你使用 Python 与以太坊区块链进行交互。从 6.0.0b3 到 7.15.0 之前以及 8.0.0b2 之前,web3.py 通过向智能合约在 `offchain_lookup_payload["urls"]` 中提供的 URL 发起 HTTP 请求来实现 CCIP Read / OffchainLookup(EIP-3668)。该实现直接使用这些由合约提供的 URL(在完成 `{sender}` / `{data}` 模板替换之后),且不进行任何目标地址验证。CCIP Read 默认启用(所有提供者上的 `global_ccip_read_enabled = True`),这意味着任何使用 web3.py 的 `.call()` 方法的应用程序都会在未明确选择加入的情况下暴露于该风险。当 web3.py 用于后端服务、索引器、API 或任何对不受信任或用户提供的合约地址执行 `eth_call` / `.call()` 的环境中时,会导致服务器端请求伪造(SSRF)。恶意合约可以强制 web3.py 进程向任意目标发起 HTTP 请求,包括内部网络服务和云元数据端点。该漏洞已在 7.15.0 和 8.0.0b2 中修复。
来源
1CVE-2026-40072 的动手实验 — 通过 CCIP Read (EIP-3668) 利用 web3.py 中的 SSRF 漏洞
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。