
ثغرة ssh-keysign-pwn (CVE-2026-46333): لما يقدر أي مستخدم عادي يقرأ ملفات الـ root في لينكس
السلام عليكم ورحمة الله وبركاتة
مساء الخير للجميع
وش القصة باختصار؟
طلعت ثغرة جديدة في نواة لينكس (Linux kernel) اسمها الشعبي ssh-keysign-pwn ورقمها الرسمي CVE-2026-46333. اللي يخوّف فيها إنها كانت موجودة ومدفونة في الكيرنل من نوفمبر 2016 يعني لها حوالي تسع سنوات محد انتبه لها، لين جا فريق Qualys وكشفها في مايو 2026.
الفكرة ببساطة: أي شخص عنده حساب عادي على السيرفر (مو root، مجرد مستخدم محدود) يقدر يستغلها عشان يقرأ ملفات حساسة ما المفروض يشوفها زي مفاتيح SSH السرية للسيرفر (SSH host keys) أو ملف كلمات المرور /etc/shadow. ومن هنا يقدر يوصّلها لين صلاحيات root كاملة.
طيب وش اللي صار بالضبط؟
تخيّل معي إنه فيه برامج في لينكس تشتغل بصلاحيات عالية لثواني معدودة عشان تسوي شغلة معينة، وبعدها تطفّي نفسها. مثال:
ssh-keysign— يقرأ مفاتيح السيرفر السرية.chage— يقرأ ملف/etc/shadow.
المشكلة في التوقيت (لذلك يسمونها exit-race — سباق وقت الإغلاق). فيه لحظة خاطفة بين ما البرنامج يبدأ يطفّي نفسه وبين ما يقفل ملفاته فعلياً. في هاللحظة الكيرنل ينسى يطبّق الحماية اللي تمنع المستخدم العادي من التلصص. والمهاجم اللي يكون مستني، يستغل هاللحظة وياخذ نسخة من الملفات المفتوحة قبل ما ترجع تتقفل.
التفاصيل التقنية (للي يبي يفهم الثغرة)
- الخلل في دالة
__ptrace_may_access()داخل الكيرنل، وتحديدًا في منطقget_dumpable(). - لما العملية (process) تبدأ تنتهي، الـ
memory descriptorحقها يصيرNULLقبل ما يتقفل جدول الـ file descriptors. في هالنافذة، فحصptraceيتخطّى حماية الـ dumpable لأن الـmmصار فاضي. - المهاجم يستخدم
pidfd_getfd(2)(واجهة دخلت من لينكس 5.6) عشان يستنسخ الـ file descriptors المفتوحة من العملية المميّزة وهي طالعة، ويسحب محتواها. - الإصلاح في الـ commit رقم
31e62c2ebbfdبعنوان "ptrace: slightly saner get_dumpable() logic"، دفعه Linus Torvalds بنفسه يوم 14 مايو 2026.
وش حجم المخاطرة؟
- تقييم الخطورة CVSS 7.8 من 10 (عالية) حسب Qualys و CloudLinux. (ملاحظة: قاعدة NVD صنّفتها أقل في البداية، بس عمليًا الاستغلال مثبت وخطير.)
- ما يحتاج المهاجم صلاحيات خاصة — مجرد shell عادي على الجهاز يكفي.
- فيه Proof-of-Concept (PoC) منشور للعامة، يعني الاستغلال مو نظري، صار عملي و متاح.
- بعد ما ياخذ مفاتيح SSH السرية أو
/etc/shadow، يقدر يتوسّع لين تنفيذ أوامر كـ root.
مين المتأثر؟
أغلب توزيعات لينكس على إعداداتها الافتراضية، ومنها:
- Red Hat Enterprise Linux 6, 7, 8, 9, 10
- CloudLinux 8 LTS, 9, 10
- AlmaLinux وغيرها من العائلة
- Debian (تم ترقيعها — التفاصيل تحت)
أي توزيعة تشغّل كيرنل من v4.10 (نوفمبر 2016) لين الإصدارات الأخيرة قبل الترقيع تعتبر معرّضة.
التسلسل الزمني
| التاريخ | الحدث |
|---|---|
| نوفمبر 2016 | الثغرة دخلت الكيرنل (v4.10-rc1) — بدون ما أحد يدري |
| 11 مايو 2026 | Qualys بلّغت فريق أمان الكيرنل بشكل خاص |
| 14 مايو 2026 | الإصلاح اتدفع للعلن (commit 31e62c2ebbfd) |
| 15 مايو 2026 | الكشف العام على قائمة oss-security + ترقيعات التوزيعات |
كيف تحمي نفسك؟
الحل الوحيد الجذري: حدّث الكيرنل. ما فيه حل سحري ثاني.
على Debian / Ubuntu:
sudo apt update && sudo apt upgrade
sudo reboot # ضروري عشان يشتغل على الكيرنل المرقّع
الإصلاح في Debian 13 (trixie) جا في نواة 6.12.88-1، وفي Debian 12 (bookworm) في 6.1.172-1.
على RHEL / AlmaLinux / CloudLinux:
sudo dnf update kernel
sudo reboot
تتأكد إنك مرقّع؟ شوف نسخة الكيرنل الشغّالة عندك وقارنها بنسخة الإصلاح:
uname -r
لو لسا على نواة قديمة، حدّث وأعد التشغيل. والأهم: تأكد إنك مقلع فعلًا على النواة الجديدة، مو بس مثبّتها.
الخلاصة
ssh-keysign-pwn درس إن الثغرات تقدر تنام تسع سنوات في كود مفتوح يشوفه آلاف الناس. الخطورة فيها إنها سهلة الاستغلال وفيها PoC جاهز، بس الحمدلله الترقيع بسيط: حدّث وأعد التشغيل. لو عندك سيرفرات إنتاج، خلها أولوية، خصوصًا اللي عليها مستخدمين متعددين.
المصادر (روابط)
- Qualys — التحليل الأصلي والكشف الكامل (CVE-2026-46333)
- NVD — صفحة الثغرة الرسمية
- Debian Security Tracker — حالة الترقيع
- AlmaLinux — إعلان الترقيع
- CloudLinux — التخفيف وتحديث الكيرنل
- Cyber Kendra — تغطية إخبارية (الثغرة بعمر 9 سنوات)
>