Dirty Frag: ثغرة رفع صلاحيات جديدة في نواة لينكس عبر النسخ الصفري
Dirty Frag: سلسلة ثغرات على مسار النسخ الصفري في نواة لينكس تسمم كتابة ذاكرة التخزين المؤقت للصفحة، لتربط بين ثغرات xfrm-ESP و RxRPC. تؤثر على جميع التوزيعات الرئيسية تقريباً منذ 2017 وتسمح برفع الصلاحيات إلى جذر دون كلمة مرور.
هنا نذهب مجدداً
لأكون صريحاً، لم أعتقد أنني سأكتب منشوراً آخر عن رفع صلاحيات النواة بهذه السرعة.
لقد مرت فقط ثمانية أيام منذ مقال Copy Fail. ثمانية أيام! القائمة السوداء algif_aead من Copy Fail بالكاد كُتبت في الطرفية، التصحيح لم يكن حتى دافئاً، ثم — Dirty Frag انكشف.
الأكثر عبثية هو أن تخفيفات Copy Fail غير فعالة تماماً ضد Dirty Frag. هذه المرة، الهجوم يستهدف أنظمة نواة مختلفة تماماً — مسارات تشفير xfrm-ESP و RxRPC — لذا سواء عطّلت algif_aead أم لا لا يحدث أي فرق على الإطلاق.
الجدول الزمني
| التاريخ | الحدث |
|---|---|
| 2017-01 | ثغرة xfrm-ESP أُدخلت مع commit cac2661c53f3 (بقيت 9 سنوات) |
| 2023-06 | ثغرة RxRPC أُدخلت مع commit 2dc334f1a63a |
| 2026-04-29 | الباحث الكوري Hyunwoo Kim يبلغ عن ثغرة RxRPC واستغلال كامل لـ security@kernel.org |
| 2026-05-07 | تفاصيل الثغرة أُرسلت للقائمة البريدية linux-distros بحظر 5 أيام متفق عليه |
| 2026-05-07 | نفس اليوم، طرف ثالث ينشر علناً تفاصيل ثغرة ESP(xfrm) واستغلالها، الحظر كُسر فوراً |
تحليل التأثير
| المقياس | التفاصيل |
|---|---|
| CVE | لا يوجد بعد |
| نوع الثغرة | خطأ منطقي حتمي، ليس سباقاً |
| معدل نجاح الاستغلال | 100%، مضمون النجاح من أول تنفيذ |
| النطاق المتأثر | جميع توزيعات لينكس الرئيسية تقريباً منذ 2017 |
| بصمة القرص | لا تعديل دائم — يلوث ذاكرة التخزين المؤقت فقط |
| يتجاوز تخفيف Copy Fail | تعطيل algif_aead غير فعال تماماً |
المبدأ التقني: لماذا “Dirty Frag”؟
برد() يزرع مرجع ذاكرة تخزين مؤقت لملف للقراءة فقط في فتحة frag لمخزن الإرسال المؤقت للشبكة (skb) → نواة الاستقبال تنفذ عمليات تشفير في المكان على frag → ما كان يجب أن يكون عملية فك تشفير يصبح أداة كتابة مباشرة لذاكرة التخزين المؤقت للصفحة → استبدال كود su الآلي بـ ELF لقشرة جذر.
الاستجابة الطارئة: تعطيل الوحدات الضعيفة مؤقتاً
حتى 8 مايو 2026، تصحيحات النواة الرسمية لم تُصدر بعد. حتى تتوفر التصحيحات، التخفيف الوحيد المؤقت هو تفريغ ومنع الوحدات الثلاث الضعيفة:
lsmod | grep -E 'esp4|esp6|rxrpc'sudo sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf"sudo rmmod esp4 esp6 rxrpc 2>/dev/nullecho 3 | sudo tee /proc/sys/vm/drop_cachesالآثار الجانبية: تعطيل esp4/esp6 سيقطع أنفاق VPN IPsec. تعطيل rxrpc له تأثير ضئيل ما لم تستخدم AFS.