
استغلال لتصعيد الصلاحيات محليًا لثغرة CVE-2019-13272، وهي ثغرة في ptrace بنواة لينكس، تتيح للمستخدمين غير المصرح لهم الحصول على صلاحيات الجذر عبر pkexec. يتضمن الكود المصدري للإثبات (PoC) وتعليمات التجميع.
⚠️ لأغراض تعليمية وبحوث أمنية مصرّح بها فقط
شكر جزيل للمؤلف الأصلي لـ PoC BCOLES
في نواة Linux قبل الإصدار 5.1.17، تتعامل ptrace_link في kernel/ptrace.c بشكل غير صحيح مع تسجيل بيانات اعتماد العملية التي تريد إنشاء علاقة ptrace، مما يسمح للمستخدمين المحليين بالحصول على وصول جذر من خلال استغلال سيناريوهات معينة تتعلق بعلاقة عملية أصل بفرعها، حيث تسقط العملية الأصل صلاحياتها وتستدعي execve (ما قد يسمح للمهاجم بالتحكم). من العوامل المساهمة مشكلة في عمر الكائن (قد تسبب أيضًا انهيارًا للنظام). ومن العوامل المساهمة الأخرى وضع علامة غير صحيحة على علاقة ptrace باعتبارها متميزة، وهو ما يمكن استغلاله عبر (على سبيل المثال) أداة pkexec المساعدة في Polkit مع PTRACE_TRACEME. ملاحظة: قد يكون deny_ptrace من SELinux حلاً بديلاً قابلاً للاستخدام في بعض البيئات.

ثبّت git، ثم استنسخ السكربت من مستودع github:
sudo apt install git -y
git clone https://github.com/asepsaepdin/CVE-2019-13272.git
قم بترجمة الملف poc.c باستخدام gcc عبر الأمر:
cd CVE-2019-13272
gcc -s poc.c -o become_root
قم بتشغيل السكربت باستخدام الأمر:
./become_root