
إثبات مفهوم لاستغلال CVE-2026-31431، وهي ثغرة تصعيد صلاحيات محلية في نواة لينكس. تُفسد ذاكرة التخزين المؤقت للصفحات الخاصة بالملفات الثنائية setuid عبر AF_ALG و splice() للحصول على صلاحيات الجذر. لأغراض البحث التعليمي والدفاعي فقط.
هذا هو إثبات مفهوم (PoC) عام لثغرة CVE-2026-31431 ("Copy Fail")، وهي ثغرة تصعيد صلاحيات محلية في نواة لينكس (CVSS 7.8) تؤثر على معظم التوزيعات الرئيسية منذ حوالي عام 2017. تقوم بإفساد ذاكرة التخزين المؤقت للصفحات (page cache) لملف ثنائي setuid (مثل /usr/bin/su) باستخدام واجهة AF_ALG البرمجية للتشفير في النواة مع splice()، مما يسمح للمستخدمين غير المصرح لهم بالحصول على صلاحيات الجذر (root). ⚠️ تحذير الخطر
هذا يعدّل ذاكرة التخزين المؤقت للصفحات في الذاكرة لملف /usr/bin/su (وليس الملف الموجود على القرص). تشغيله على نظام إنتاجي قد يكسر su، أو يترك ملفًا ثنائيًا مخترقًا في الذاكرة المؤقتة، أو يطلق تنبيهات أمنية. اختبره فقط في جهاز افتراضي قابل للتخلص. أعد تثبيت الحزمة المتأثرة بعد ذلك (مثل apt reinstall sudo أو ما يعادله). العديد من التوزيعات أصدرت تصحيحات؛ تحقق من نواتك وقم بتحديثها.
إثبات مفهوم تعليمي لثغرة نواة لينكس CVE-2026-31431.
هذا المستودع مخصص للأغراض التعليمية والبحثية والأمن الدفاعي فقط.
/usr/bin/su (أو ملف ثنائي setuid آخر). قد يكسر أدوات النظام ويترك ملفًا ثنائيًا معدلًا في الذاكرة.sudo، util-linux) لاستعادة الملفات الثنائية النظيفة.echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif-aead.confهذه ليست أداة مسلحة. حافظ على الأخلاقيات.