
WordPressのコアで発生する脆弱性CVE-2026-87902を悪用するためのエクスプロイト
WordPress 4.7.0 – 7.1.1 に対する未認証エクスプロイト (LFI → RCE) · 修正: 7.1.2
git clone https://github.com/Maalfer/CVE-2026-87902-exploit.git
cd CVE-2026-87902-exploit
# 1) LFI を検証する (サーバーには何も書き込まない)
python3 exploit.py --url http://objetivo/ --validate-only
# 2) RCE
python3 exploit.py --url http://objetivo/ -c "id"
# 3) 対話型コンソール
python3 exploit.py --url http://objetivo/ -c id --shell
4 つすべてが同時に満たされる必要があります。3 が欠けている場合、LFI は存在しません。
get_page_template() にあり、validate_file() がありません。7.1.2 以降ではパッチ済みです。page_id が必要です (REST 経由で自動検出されます)。page-* ディレクトリ — 必須: file_exists() は存在しないコンポーネントを通過しないため、../ は最初の区間がディスク上に存在する場合にのみ上昇できます。Twenty Twelve (page-templates/) にはこれがありますが、ほとんどのブロックテーマ (Twenty Twenty-Three) にはありません。親テーマにも影響します。pearcmd.php が読み取り可能 + register_argc_argv=On — LFI は読み取りのみを行い、実行には PEAR の polyglot config-create を使用します。register_argc_argv=Off の場合、または PEAR がインストールされていない場合は、LFI はありますが RCE はありません。4 番目がない場合、結果は純粋な LFI です: システム上の任意の .php を読み取ることができ、例えば page-templates/../../../wp-config.php (DB のハッシュとソルト) などです。
自身のシステム、または書面による許可がある場合にのみ使用してください。