
توثيق بحثي في مختبر معزول لخادم VMware vCenter Server CVE-2021-21972، يغطي رفع ملفات عشوائية دون مصادقة وصولًا إلى تنفيذ التعليمات البرمجية عن بُعد (RCE)، والكشف القائم على Nmap، وسلسلة الاستغلال، والإجراءات التخفيفية.
المؤلف: نيرانجان بوخرل
مشروع بحثي مستقل يعيد إنتاج وتوثيق ثغرة حرجة ومُعلنة علنًا في VMware vCenter Server داخل مختبر منزلي معزول، بهدف فهم فئة الثغرة، ومسار الاستغلال، والإجراءات الدفاعية للتخفيف منها.
| CVE | CVE-2021-21972 |
| درجة CVSSv3 الأساسية | 9.8 (حرجة) |
| نشرة البائع الأمنية | VMSA-2021-0002 |
| المنتج المتأثر | VMware vCenter Server 6.5 / 6.7 / 7.0 |
| فئة الثغرة | رفع ملفات تعسفي بدون مصادقة ← تنفيذ كود عن بُعد |
| الحالة | تم إصلاحها بواسطة VMware (نوفمبر 2020 – فبراير 2021). استخدم المختبر إصدارات قديمة ومعزولة عمدًا لأغراض البحث فقط. |
يُعد vCenter Server لوحة التحكم المركزية للبنية التحتية الافتراضية في VMware — فاختراقه قد يعني اختراق مركز بيانات افتراضي بالكامل. هذه الثغرة مثال نموذجي على كيف يمكن لغياب فحص المصادقة على نقطة نهاية إضافة واحدة أن يتصاعد إلى سيطرة كاملة على المضيف. بنيت هذا المختبر للانتقال من مجرد قراءة نشرة CVE إلى الفهم الفعلي لسطح الهجوم، وسلسلة الاستغلال، والأهم من ذلك — كيف كان يجب منعها وكيفية اكتشافها دفاعيًا.
تقع الثغرة في vSphere Client (HTML5)، وتحديدًا في إضافة vCenter Server التي تعرض نقطة نهاية لرفع الملفات (/ui/vropspluginui/rest/services/uploadova) دون اشتراط المصادقة. يمكن للمهاجم الذي لديه وصول شبكي إلى المنفذ 443 إرسال طلب POST مُصمم خصيصًا إلى هذه النقطة ورفع ملفات تعسفية — بما في ذلك قشرة ويب — إلى دليل يمكن الوصول إليه عبر الويب على نظام التشغيل الأساسي. يمنح هذا المهاجم تنفيذ كود بصلاحيات خدمة vCenter، أي سيطرة كاملة فعليًا على الجهاز.
على مستوى عالٍ، سلسلة الهجوم هي:
بُني بالكامل في شبكة افتراضية معزولة وغير متصلة بالإنترنت وبدون أي بيانات إنتاجية:
(تم حذف عناوين IP المحددة وبيانات الاعتماد وتفاصيل البنية التحتية من البناء الأصلي عمدًا من هذا التوثيق العام.)
يمكن تأكيد وجود الثغرة دفاعيًا (أي بواسطة الفريق الأزرق أو المدقق) من خلال التحقق مما إذا كانت نقطة رفع الملفات على الهدف تستجيب بطريقة تتوافق مع الثغرة غير المُصلحة — وهذا هو نفس النوع من الفحص الذي قد يشغّله ماسح الثغرات أو فريق الأمن الداخلي لتحديد حالات vCenter المكشوفة وغير المُصلحة على شبكاتهم قبل أن يفعل المهاجم ذلك.
يتوفر سكربت Nmap NSE عام لكشف هذه الثغرة عبر عدة مستودعات أمنية مفتوحة المصدر؛ ولم يُعاد إنتاجه هنا، التزامًا بتركيز هذا README على التوثيق بدلاً من توزيع أدوات فحص/استغلال جاهزة. في المختبر، تم وضع علامة على الهدف الضعيف كـ VULNERABLE (قابل للاستغلال) في مخرجات الفحص، وهو ما يُعد مؤشرًا على إعطاء الأولوية للتصحيح الفوري.
يتوفر إثبات مفهوم عملي لهذه الثغرة علنًا منذ عام 2021، بعد اكتشافها بواسطة ميخائيل كليوتشنيكوف من Positive Technologies؛ وحفاظًا على عدم توزيع حمولة RCE جاهزة للتشغيل من هذا الملف الشخصي، لن أعيد إنتاج كود الاستغلال هنا — تركيز هذا التوثيق على الفهم وليس الأدوات. باختصار، يقوم الاستغلال العام بأتمتة الخطوتين 2–3 أعلاه: فهو يغلف قشرة ويب JSP في تنسيق الرفع المتوقع، ويرسلها عبر POST إلى النقطة الضعيفة، ويتأكد من وصولها إلى مسار يمكن الوصول إليه عبر الويب، ثم يستخدمها لتشغيل قشرة عكسية إلى المهاجم.
أُجري هذا المشروع في بيئة مختبر معزولة تمامًا وغير إنتاجية لأغراض تعليمية وتطوير مهني. لم يتم الوصول إلى أي أنظمة غير مصرح بها.