CVE-2026-40072
web3.py が CCIP Read (EIP-3668) の OffchainLookup URL 処理を介して SSRF の影響を受ける
- 公開済み
- 2026/04/09
- 更新済み
- 2026/04/09
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/08/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/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
# web3.py のSSRF脆弱性(CVE-2025-41592) web3.py を使用すると、Python で Ethereum ブロックチェーンと対話できます。6.0.0b3 から 7.15.0 未満、および 8.0.0b2 において、web3.py は CCIP Read / OffchainLookup(EIP-3668)を、`offchain_lookup_payload["urls"]` 内のスマートコントラクトが提供する URL に対して HTTP リクエストを実行することで実装しています。この実装は、コントラクトが提供するこれらの URL を(`{sender}` / `{data}` テンプレート置換後)宛先検証なしで直接使用します。CCIP Read はデフォルトで有効になっており(すべてのプロバイダーで `global_ccip_read_enabled = True`)、web3.py の `.call()` メソッドを使用するアプリケーションは、明示的なオプトインなしでこの脆弱性にさらされることを意味します。これにより、web3.py がバックエンドサービス、インデクサー、API、または信頼できない・ユーザー指定のコントラクトアドレスに対して `eth_call` / `.call()` を実行するあらゆる環境で使用される場合、Server-Side Request Forgery(SSRF)が発生します。悪意のあるコントラクトは、web3.py プロセスに内部ネットワークサービスやクラウドメタデータエンドポイントを含む任意の宛先への HTTP リクエストを強制できます。この脆弱性は 7.15.0 および 8.0.0b2 で修正されています。
ソース
1Hands-on lab for CVE-2026-40072 — web3.py の CCIP Read (EIP-3668) を介した SSRF 脆弱性
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。