
دليل باللغة الإسبانية وسكربت Bash للتحقق مما إذا كان مضيف Linux معرّضًا لـ CVE-2026-99999 (PwnEscape)، وهو هروب من نواة الجهاز الافتراضي إلى المضيف، مع التحقق من التصحيح وخطوات التخفيف.
دليل عملي باللغة الإسبانية لمعرفة ما إذا كان خادم Linux معرّضًا لـ CVE-2026-99999 ("PwnEscape") وكيفية التخفيف منه. يتضمن سكربتًا يفحص الجهاز ويعطي حكمًا مع السبب.
| الحقل | القيمة |
|---|---|
| CVE | CVE-2026-99999 |
| الاسم | PwnEscape |
| المكوّن | نواة Linux، معالجة checksums الخاصة بـ IPv4 (skb_checksum_help()) |
| الخطورة | CVSS 3.1 9.3 (حرجة) — AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| التأثير | يمكن لآلة افتراضية خبيثة قراءة ذاكرة المضيف وإسقاطه، وفي المختبر، السيطرة عليه بصلاحيات root |
| المتجه | محلي: يحتاج المهاجم إلى تنفيذ تعليمات برمجية داخل آلة افتراضية |
| اكتُشفت بواسطة | Paulos Yibelo (pwn.ai)، خلال Sandbox Challenge من Vercel |
| تاريخ النشر | 15 أكتوبر 2026 |
| الإصلاح في المنبع | Commit 6785011f8b16 (Michael S. Tsirkin, Red Hat) |
| الاستغلال النشط | غير مُبلَّغ عنه · ليس في كتالوج KEV الخاص بـ CISA |
تخيّل مبنى سكنيًا:
┌──────────────────────────────────────┐
│ HOST (servidor físico + hipervisor) │ ← aquí está la falla
│ Linux con KVM / QEMU / Firecracker │
│ │
│ ┌─────────┐ ┌─────────┐ ┌────────┐ │
│ │ VM A │ │ VM B │ │ VM C │ │
│ │ │ │(atacante)│ │ │ │
│ └─────────┘ └─────────┘ └────────┘ │
└──────────────────────────────────────┘
يكمن العيب في المضيف (host)، وليس في الأجهزة الافتراضية (VMs). لذلك:
يسمح Linux لحزم الشبكة بحمل بيانات وصفية (metadata) تشير إلى أين يبدأ الـ checksum وأين تُكتب نتيجته. هذا تحسين مشروع لـ checksum offloading.
المشكلة تكمن في ترتيب العمليات:
يتحقق الإصلاح من أن بداية الـ checksum لا يمكن أن تشير إلى داخل ترويسة IPv4 تمت معالجتها بالفعل. ويُطبَّق على خمسة مسارات شبكة متأثرة.
الكود الثغرة موجود منذ النواة 2.6.27 (2008).
| الفرع | أول إصدار مصحح |
|---|---|
| 5.10 | 5.10.272 |
| 5.15 | 5.15.223 |
| 6.1 | 6.1.190 |
| 6.6 | 6.6.159 |
| 6.12 | 6.12.113 |
| 6.18 | 6.18.57 |
| 7.2 | 7.2.11 |
| Mainline | 7.3-rc7 |
⚠️ تستخدم Ubuntu وRHEL/Rocky/Alma وSUSE وProxmox ترقيمًا خاصًا بها (على سبيل المثال
5.15.0-125-genericأو5.14.0-503.el9). في هذه التوزيعات لا يكفي رقم الإصدار وحده: يجب مراجعة إشعار الأمان الخاص بالتوزيعة أو سجل التغييرات (changelog) الخاص بالنواة.الفروع خارج هذه القائمة (6.8، 6.19، 7.0، 7.1…) لم تعد مدعومة من المنبع (upstream) ولم تتلقَّ الإصلاح.
curl -O https://raw.githubusercontent.com/alvaroguzmancode/CVE-2026-99999/refs/heads/main/check-pwnescape.sh
sudo bash check-pwnescape.sh
يفحص السكربت ثلاثة أشياء:
مثال على المخرجات في VPS:
== VEREDICTO ==
Rol: Este equipo ES una máquina virtual; no hospeda otras VMs.
Kernel: VULNERABLE — la versión del kernel es anterior a la corregida.
NO EXPUESTO DIRECTAMENTE.
La falla solo se explota desde una VM hacia el servidor que la hospeda.
Este equipo no hospeda VMs, así que no hay a quién atacar desde aquí.
Ojo: el que SÍ debe estar parchado es el host que aloja esta VM
(tu proveedor de nube o tu servidor Proxmox/KVM). Confírmalo con ellos.
| رمز الخروج | المعنى |
|---|---|
0 | غير قابل للاستغلال أو غير معرّض |
1 | قابل للاستغلال |
2 | تعذّر التأكيد، يجب المراجعة يدويًا |
1. هل أنا جهاز افتراضي أم مضيف؟
systemd-detect-virt # "kvm", "xen", etc. = eres una VM; "none" = físico
pgrep -a qemu-ga # si aparece, eres una VM (QEMU Guest Agent)
lsmod | grep -E 'kvm|vhost' # módulos de virtualización cargados
cat /sys/module/kvm_intel/refcnt 2>/dev/null || cat /sys/module/kvm_amd/refcnt # >0 = hay VMs usando KVM
virsh list --all 2>/dev/null # VMs de libvirt
pgrep -a '^(qemu-system|firecracker)' # VMs / microVMs corriendo
2. هل نواة نظامي تحتوي على التصحيح؟
uname -r
# Debian / Ubuntu
zgrep -i "CVE-2026-99999" /usr/share/doc/linux-image-$(uname -r)/changelog.Debian.gz
# RHEL / Rocky / Alma / Fedora
rpm -q --changelog kernel-core-$(uname -r) | grep -i "CVE-2026-99999"
3. هل يلزم إعادة التشغيل؟
[ -f /var/run/reboot-required ] && echo "Falta reiniciar" # Debian / Ubuntu
needs-restarting -r # RHEL
# Debian / Ubuntu / Proxmox
sudo apt update && sudo apt full-upgrade
# RHEL / Rocky / Alma / Fedora
sudo dnf update kernel
يوصي مشرفو النواة بتثبيت الإصدار المستقر الكامل من توزيعتك، وليس تطبيق الـ commit المنفرد.
sudo reboot
# después:
uname -r
sudo bash check-pwnescape.sh
تثبيت الحزمة لا يكفي: النواة الجديدة لا تدخل حيز الاستخدام إلا بعد إعادة التشغيل. في العناقيد، تحقق من كل برنامج مراقبة افتراضية.
تحديث النواة داخل الأجهزة الافتراضية لا يزيل الخطر، لأن الخلل موجود في المضيف. إذا كنت عميلاً لخادم VPS، تأكد مع مزوّدك من أنه رقّع مضيفاته بالفعل.
إذا كان الجهاز يحمّل KVM لكنه لا يستضيف أجهزة افتراضية، يمكنك تقليل سطح الهجوم:
sudo modprobe -r kvm_intel kvm_amd kvm 2>/dev/null
echo -e "blacklist kvm_intel\nblacklist kvm_amd\nblacklist kvm" | sudo tee /etc/modprobe.d/no-kvm.conf
هذه الإجراءات لا تُصلح الثغرة، لكنها تحدّ مما قد يحققه مهاجم ينجح في الهروب من إحدى الآلات الافتراضية:
لا توجد مؤشرات اختراق (IOCs) عامة (تجزئات hash، نطاقات، عناوين IP) لأنه لا تُعرف أي حملة نشطة. الكشف يتم عبر السلوك على المضيف: