
CVE-2026-31431
تصعيد امتيازات محلي بسيط بشكل مدهش ولكنه قاتل في نواة لينكس
CVE-2026-31431 (المُلقب بـ "Copy Fail") هو ثغرة تصعيد امتيازات محلية في النظام الفرعي للتشفير بنواة لينكس، وتؤثر تحديدًا على واجهة algif_aead.
يمكن لمستخدم محلي غير مميَّز استغلال هذا الخلل للقيام بـكتابة محكومة من 4 بايتات في ذاكرة التخزين المؤقت للصفحات (page cache) لأي ملف قابل للقراءة على النظام — بما في ذلك الملفات الثنائية setuid — مما يسمح في النهاية بـتنفيذ تعليمات برمجية عشوائية بصلاحيات الجذر (root).
أُدخلت الثغرة في عام 2017 عبر الالتزام 72548b093ee3 ("crypto: algif_aead - support in-place operations").
افترضت النواة بشكل غير صحيح أن طلبات AEAD يمكن تشغيلها بأمان في نفس المكان (in-place) (req->src == req->dst). ومع ذلك، عند استخدام مقابس AF_ALG مع splice() من ملفات عادية، غالبًا ما توجد مخازن المصدر والوجهة في تعيينات ذاكرة مختلفة.
أدى هذا التباين إلى خطأ منطقي سمح بتلف ذاكرة محكوم في ذاكرة التخزين المؤقت للصفحات.
الاستغلال بسيط للغاية. يمكن لبرهان مفهوم (PoC) بلغة بايثون من ~10 أسطر الحصول على صلاحيات الجذر بشكل موثوق على الأنظمة غير المحدَّثة.
| المقياس | القيمة |
|---|---|
| درجة CVSS v3 | 7.8 (عالية) |
| تقييم Red Hat | مهم (Important) |
a664bf3 (أو النقل الخلفي المكافئ (backports))الإجراء الموصى به: حدِّث نواتك فورًا.
يعيد الإصلاح الرسمي التراجع عن تحسين العمل الموضعي (in-place) الإشكالي في crypto/algif_aead.c.
# Ubuntu / Debian
sudo apt update && sudo apt upgrade -y
# RHEL / Fedora / Rocky / Alma
sudo dnf update kernel -y
# Check kernel version
uname -r
حل مؤقت (إذا لم يكن التصحيح الفوري ممكنًا):
AF_ALG عبر seccomp أو AppArmor/SELinuxتتوفر بالفعل أدوات استغلال عامة، بما في ذلك برهان مفهوم صغير جدًا وموثوق بلغة بايثون.
⚠️ تحذير: الأنظمة التي تُترك دون تصحيح بعد الإفصاح تكون عرضة للخطر بشدة.
ابقَ آمنًا. حدِّث مبكرًا. حدِّث باستمرار.
صُنع بـ ❤️ لمجتمع لينكس
| تقييم Ubuntu | عالٍ (High) |
| نوع الهجوم | تصعيد امتيازات محلي |