
Hands-on lab for CVE-2026-40072 — web3.py の CCIP Read (EIP-3668) を介した SSRF 脆弱性
web3.py の CVE-2026-40072 を実演し、Burp Suite で SSRF の影響を確認し、公式修正を検証するためのハンズオンローカルラボです。
このリポジトリには、web3.py の CCIP Read / OffchainLookup 処理に関連するサーバーサイドリクエストフォージェリ (SSRF) の問題である CVE-2026-40072 の、安全なローカルのみの概念実証が含まれています。このラボでは、Kali Linux、Python 仮想環境、偽の内部サービスとしての Flask、そして送信リクエストを傍受する Burp Suite を使用します。
このラボは、許可されたローカルでの教育目的のみに使用してください。すべてを自身の分離された環境で実行してください。所有していない、または評価する許可を得ていないシステムに対してテストを行わないでください。
python3 -m venv ~/ssrf-lab
source ~/ssrf-lab/bin/activate
pip install -r requirements.txt
Kali がシステム全体への pip をブロックする場合は、上記の venv を使い続けてください。
source ~/ssrf-lab/bin/activate
python3 lab/fake_internal_server.py
このターミナルは開いたままにしてください。機密性の高い内部エンドポイントをシミュレートします。
127.0.0.1:8080 で実行されていることを確認します。source ~/ssrf-lab/bin/activate
python3 lab/ssrf_demo.py
リクエストが Burp に表示され、偽のサービスがデモの資格情報文字列を返すはずです。
修正リリースにアップグレードします:
pip install "web3==7.15.0"
次に、バージョンを確認します:
pip show web3 | grep Version
チェックスクリプトを実行します:
python3 lab/ssrf_fixed_check.py
修正された環境を確認し、SSRF リクエストが発生しなくなったことを文書化してください。
MIT