
نسخ الفشل (CVE-2026-31431) استغلال رفع الامتيازات المحلي (LPE). إعادة تنفيذ نظيفة ومتعددة البنى بلغة بايثون تستهدف ثغرة ذاكرة التخزين المؤقت للصفحات في نواة لينكس AF_ALG.
تصعيد محلي للصلاحيات على أنوية لينكس من الإصدار 4.11 حتى (وليس بما في ذلك) إصدارات 6.18 المُصحّحة.
الخلل يكمن في واجهة مقبس AF_ALG في النواة—وتحديداً في كيفية تعامل authencesn مع قوائم scatter-gather أثناء فك تشفير AEAD في المكان. النتيجة: يمكن لمستخدم غير مميَّز الكتابة فوق 4 بايتات في كل مرة في ذاكرة التخزين المؤقت للصفحات لأي ملف قابل للقراءة.
اكتب فوق ثنائي setuid مثل /usr/bin/su بكود شل، شغّله، وستصبح root. لا سباق، لا رموز نواة، لا إعادة ترجمة. نفس حمولة AArch64 المكوّنة من 172 بايت (أو 160 لـ x86-64، و126 لـ i386، و138 لـ ARMv7) تعمل عبر التوزيعات.
تم اكتشاف الثغرة بواسطة Taeyang Lee & Theori / Xint Code ونُشرت في 29 أبريل 2026. هذا المستودع هو إعادة تنفيذ مستقلة قائمة على الفئات مخصصة للاختبار المصرّح به.
| فحص الثغرة | الاستغلال والحصول على صلاحيات root |
|---|---|
![]() | ![]() |
allowPrivilegeEscalation: true (الافتراضي في Kubernetes) يمكنها الخروج.أي شيء يعمل بنواة بين 4.11 وحوالي 6.17.x، بما في ذلك:
الأنوية المُصحّحة: mainline ≥ 6.18.22 / 6.19.12 / 7.0، بالإضافة إلى backports للأشجار المستقرة.
# تحقق مما إذا كان النظام عرضة للثغرة
python3 exploit.py --check
# تشغيل الاستغلال (يتطلب مستخدماً غير root)
python3 exploit.py
os.splice الأصلي من 3.10)authencesn(hmac(sha256),cbc(aes))/usr/bin/su هو الافتراضي؛ استخدم --scan للعثور على بدائل)إذا اشتكى الفحص من الخوارزمية، حمّل الوحدات المطلوبة:
sudo modprobe algif_aead authencesn hmac cbc
بعض التوزيعات تشحن حظراً مؤقتاً (/etc/modprobe.d/disable-algif_aead.conf). السكربت يزيله تلقائياً عند تشغيله كـ root، أو يمكنك حذفه يدوياً.
دائم: حدّث نواتك. على Ubuntu/Debian:
sudo apt update && sudo apt upgrade linux-image-generic
حل مؤقت (لا يؤثر على IPsec/XFRM):
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead 2>/dev/null
ملاحظة: IPsec/XFRM ليس متأثراً بهذا الحظر لأنه يستخدم واجهة برمجة تطبيقات التشفير في النواة مباشرة، وليس AF_ALG.
الحاويات:
التخفيف الأساسي هو حظر مقبس AF_ALG بملف تعريف seccomp. بالإضافة إلى ذلك، اضبط allowPrivilegeEscalation: false في سياق أمان البود الخاص بك لتفعيل no_new_privs، مما يمنع النواة من احترام بتات setuid عند execve().
هذه الأداة مخصصة للاختبار الأمني التعليمي والمصرّح به. لا تشغّلها على أنظمة لا تملكها أو ليس لديك إذن كتابي لاختبارها.