
PoC Rust pour CVE-2025-32463 (sudo chroot "chwoot" Local PrivEsc)
AVERTISSEMENT
Ce code est fourni uniquement à des fins éducatives et de recherche.
Ne l'utilisez pas sur des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas l'autorisation de tester.
L'auteur n'est pas responsable de toute utilisation abusive, de tout dommage ou des conséquences juridiques résultant de l'utilisation de ce code.
Il s'agit d'une implémentation de l'exploitation de la vulnérabilité sudo chroot (CVE-2025-32463) que j'ai écrite en Rust, basée sur l'avis de sudo et l'avis de Stratascale. L'exploit vous permet d'exécuter du code arbitraire sous la forme d'une bibliothèque partagée en raison d'un bogue dans la manière dont sudo gère chroot.
Lorsque vous passez l'option chroot à sudo, vous pouvez fournir un fichier /etc/nsswitch.conf malveillant dans le répertoire chroot qui indique à sudo de charger un objet partagé arbitraire. Ce PoC abuse de cela afin d'accorder un accès root à un utilisateur non privilégié.
En utilisant les binaires fournis sous Releases, exécutez simplement la commande suivante pour obtenir un accès root :
./sudo_chroot_exploit
Cela utilise une charge utile de bibliothèque partagée qui se contente de lancer un shell root.
Le code de la charge utile (C) est fourni dans /payload. Un Makefile est également fourni pour compiler le code. Vous pouvez modifier ou remplacer la charge utile comme bon vous semble.
Pour spécifier une charge utile différente de celle par défaut, exécutez la commande suivante :
./sudo_chroot_exploit -i custom_payload.so