
Exploit PoC ACE pour glibc cpio 2.13 via corruption des métadonnées de chunk mmap (CVE-2021-38185)
Ceci est un POC ACE d'un bug de dépassement d'entier dans cpio. Cet exploit contourne toutes les protections binaires sauf le RELRO complet. Cet exploit utilise cpio 2.13 et libc 2.31. Démonstration vidéo : https://youtu.be/F0yKJhu7Vak
Nous avons fourni un Dockerfile Kali pour exécuter l'exploit. Le même exploit devrait fonctionner en dehors du conteneur Docker, mais les offsets peuvent être différents.
sudo docker build -t cpiopwn .sudo docker run --mount type=bind,source=$(pwd),destination=/cpiopwn -it cpiopwn /bin/bashcd cpiopwndocker_fengshui.py et appellera cpio avec un grand nombre d'arguments en ligne de commande.
python3 exploit.pyEt voilà ! Après avoir construit le fichier de motif malveillant, une invite apparaîtra et elle commencera à traiter les commandes après un petit moment.
L'exploit peut prendre environ une minute après l'apparition de l'invite avant de commencer à répondre aux commandes. Nous avons fourni une vidéo de son exécution pour montrer ce qui devrait se passer.
De plus, l'exploit peut ne fonctionner que sur des ordinateurs avec au moins 12 Go de RAM, car il force cpio à lire des gigaoctets d'entrée. Nous avons eu quelques problèmes avec des serveurs manquant de RAM avec des versions précédentes de l'exploit - la version actuelle a été testée sur des ordinateurs avec 12 et 16 Go de RAM, mais pas sur des configurations plus petites.
|\__/,| (`\
_.|o o |_ ) )
-(((---(((--------