Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/sahiloj/cve-2023-33730
المصادقة والترخيصتصعيد الامتيازاتالاستطلاعهجمات كلمات المرورتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراقالأوراق والأبحاثالتعلم والتعليم
11منذ 6 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
GitHub
sahiloj/cve-2023-33730

CVE-2023-33730

يحتوي eScan Management Console الإصدار 14.0.1400.2281 على ثغرة تصعيد امتيازات عبر دالة `GetUserCurrentPwd` تتيح للمهاجمين استرجاع كلمة مرور أي مستخدم كنص عادي.

عرض المستودع

CVE-2023-33730 — تصعيد الصلاحيات في وحدة تحكم إدارة eScan

الخطورة: حرجة
معرّف CVE: CVE-2023-33730
تاريخ الإفصاح: 30 مايو 2023
الباحث: Sahil Ojha


جدول المحتويات

  • نظرة عامة
  • تفاصيل الثغرة
  • الأثر
  • التحليل الفني
  • إثبات المفهوم
  • المعالجة
  • المراجع
  • إخلاء المسؤولية

نظرة عامة

وحدة تحكم إدارة eScan هي حل مركزي لإدارة الأمان طوّرته شركة Microworld Technologies. تتيح لمسؤولي تقنية المعلومات في المؤسسات نشر وكلاء eScan لمكافحة الفيروسات/حماية نقاط النهاية وإدارتهم ومراقبتهم عبر الشبكة بالكامل من وحدة تحكم ويب واحدة.

الإصدار 14.0.1400.2281 من هذه الوحدة يحتوي على ثغرة تصعيد صلاحيات حرجة. بسبب غياب التحقق من التفويض في نقطة نهاية واجهة برمجة التطبيقات GetUserCurrentPwd، يمكن لأي مستخدم مصادق — بغض النظر عن مستوى صلاحياته — استرداد كلمات المرور بنصها الصريح لـكل حساب مسجّل في وحدة التحكم، بما في ذلك حسابات المسؤولين. وهذا يتيح فورًا السيطرة الكاملة على وحدة التحكم في الإدارة، وبالتالي على جميع نقاط النهاية المُدارة على الشبكة.


تفاصيل الثغرة


الأثر

لهذه الثغرة أثر حرج على أرض الواقع:

  • تصعيد الصلاحيات الأفقي — يمكن للمستخدم العادي (منخفض الصلاحيات) استرداد كلمات المرور النصية الصريحة لجميع المستخدمين العاديين الآخرين، مما يتيح الاستيلاء على الحسابات عبر نفس مستوى الصلاحيات.
  • تصعيد الصلاحيات الرأسي — من خلال التلاعب بمعامل عنوان URL واحد (UsrId)، يمكن للمستخدم منخفض الصلاحيات نفسه استرداد كلمة مرور حساب المسؤول بنصها الصريح، مما يمنحه سيطرة إدارية كاملة على وحدة تحكم إدارة eScan.
  • كشف هائل للبيانات الاعتمادية — تُخزَّن جميع كلمات مرور المستخدمين وتُرجَع بنص صريح، ما يعني أن استدعاء واجهة برمجة تطبيقات واحدًا يمكنه تعداد البيانات الاعتمادية لكل حساب في النظام في الوقت نفسه.
  • اختراق كامل للشبكة — نظرًا لأن وحدة تحكم إدارة eScan تتحكم في وكلاء مكافحة الفيروسات/نقاط النهاية عبر شبكة المؤسسة بالكامل، فإن الوصول الإداري إلى وحدة التحكم قد يسمح للمهاجم بتعطيل حماية نقاط النهاية، أو نشر برمجيات خبيثة، أو التنقل إلى أنظمة أخرى على الشبكة.

التحليل الفني

تقع الثغرة في دالة GetUserCurrentPwd التي تعرضها واجهة الويب لوحدة تحكم إدارة eScan. صُممت نقطة النهاية هذه للسماح للمستخدم باسترداد كلمة المرور الخاصة به لأغراض تعديل الملف الشخصي. غير أن التنفيذ يعاني من خلل التفويض المكسور على مستوى الكائن (BOLA / IDOR):

  1. لا يوجد تحقق من الملكية — تقبل نقطة النهاية معامل UsrId لكنها لا تتحقق من أن المستخدم الطالب يملك الحساب المطابق لهذا المعرّف.
  2. لا يوجد تحقق من الصلاحيات — يُسمح لأي جلسة مصادقة، بغض النظر عن الدور، باستدعاء نقطة النهاية هذه لأي قيمة UsrId.
  3. تخزين/استجابة كلمات المرور بنص صريح — تُرجَع كلمات المرور بنصها الصريح في نص استجابة HTTP، متجاوزةً أي حماية بالتشفير أو التجزئة قد تكون موجودة.

نمط الطلب المُعرَّض:

root@kitploit:~
GET /eScanWebConsole/webpages/...?action=GetUserCurrentPwd&UsrId=<TARGET_USER_ID> HTTP/1.1
Host: <escan-console-host>
Cookie: <valid-session-cookie>

من خلال التكرار على قيم UsrId المتتالية، يمكن للمهاجم تفريغ بيانات اعتماد كل مستخدم في النظام في مسح آلي واحد.


إثبات المفهوم

ملاحظة: توضح الخطوات التالية الثغرة في بيئة مختبرية خاضعة للتحكم. لا تحاول إعادة إنتاج ذلك ضد أي نظام لا تملكه أو ليس لديك إذن كتابي صريح لاختباره.

الخطوة 1 — إنشاء مستخدم منخفض الصلاحيات

سجّل الدخول إلى وحدة تحكم إدارة eScan باستخدام بيانات اعتماد مسؤول صالحة وأنشئ حساب مستخدم جديد بمستوى صلاحيات عادية (منخفضة).

الخطوة 1 – إنشاء مستخدم عادي


الخطوة 2 — تسجيل الدخول كمستخدم منخفض الصلاحيات

سجّل الخروج من جلسة المسؤول وسجّل الدخول باستخدام بيانات اعتماد المستخدم العادي الذي أُنشئ حديثًا.

الخطوة 2 – تسجيل الدخول كمستخدم عادي


الخطوة 3 — التقاط طلب GET لتعديل الملف الشخصي

أثناء تسجيل الدخول كمستخدم عادي، انتقل إلى قسم تعديل الملف الشخصي / تغيير كلمة المرور. اعترض حركة HTTP الصادرة باستخدام Burp Suite (أو وكيل HTTP مشابه). حدد طلب GET الخاص بـ GetUserCurrentPwd والتقطه كما هو موضح أدناه.

الخطوة 3 – التقاط طلب GET في Burp Suite


الخطوة 4 — إعادة توجيه الطلب وملاحظة كلمة المرور النصية الصريحة

أرسل الطلب الملتقط إلى Burp Suite Repeater وأعد توجيهه. لاحظ أن استجابة الخادم تحتوي على كلمة مرور المستخدم العادي الحالي بنصها الصريح — دون الحاجة إلى صلاحيات مسؤول لاستردادها.

الخطوة 4 – إرجاع كلمة المرور النصية الصريحة في الاستجابة


الخطوة 5 — التصعيد إلى المسؤول بتعديل UsrId

في Burp Suite Repeater، عدّل معامل UsrId إلى معرّف حساب المسؤول (أو أي حساب آخر). أعد توجيه الطلب المعدَّل. يستجيب الخادم بـكلمة مرور المسؤول النصية الصريحة، بالإضافة إلى كلمات مرور أي مستخدم آخر يوفَّر معرّف UsrId الخاص به.

الخطوة 5 – كشف كلمة مرور المسؤول عبر IDOR


الخطوة 6 — الاستيلاء الكامل على الحساب

استخدم كلمة مرور المسؤول المستردة لتسجيل الدخول إلى وحدة التحكم كمسؤول، وحقق صلاحيات إدارية كاملة على وحدة تحكم إدارة eScan وجميع نقاط النهاية المُدارة على الشبكة.


المعالجة

ينبغي على Microworld Technologies تطبيق التخفيفات التالية:

  1. فرض تفويض على مستوى الكائن — قبل إرجاع أي كلمة مرور (أو أي حقل حساس)، يجب على الخادم التحقق من أن UsrId في الطلب يطابق معرّف مالك الجلسة. يجب رفض الطلبات المتعلقة ببيانات مستخدمين آخرين برمز HTTP 403 Forbidden.
  2. عدم إرجاع كلمات المرور بنص صريح أبدًا — يجب تجزئة كلمات المرور قبل التخزين (على سبيل المثال، باستخدام bcrypt أو Argon2)، ويجب أبدًا إرجاعها إلى العميل بأي شكل. إذا كان تأكيد "كلمة المرور الحالية" مطلوبًا، اطلب من المستخدم إعادة إدخال كلمة المرور والتحقق من تجزئتها من جهة الخادم.
  3. تنفيذ تحكم وصول قائم على الأدوار (RBAC) بشكل صحيح — يجب أن تكون وظائف واجهة برمجة التطبيقات الإدارية الحساسة متاحة فقط للجلسات ذات مستوى الصلاحيات المناسب.
  4. تطبيق تحديد المعدل واكتشاف الشذوذ — حدد المعدل الذي يمكن به استدعاء نقطة نهاية GetUserCurrentPwd لكل جلسة، ونبّه على أنماط الوصول الشبيهة بالتعداد.
  5. الترقية إلى أحدث إصدار — يجب على المستخدمين ترقية وحدة تحكم إدارة eScan إلى أحدث إصدار متاح يعالج هذه الثغرة، وفقًا لتوجيهات Microworld Technologies.

المراجع

  • NVD — CVE-2023-33730
  • MITRE CVE — CVE-2023-33730
  • Microworld Technologies eScan
  • OWASP — تفويض مكسور على مستوى الكائن (API1:2023)
  • OWASP — مرجع مباشر غير آمن للكائنات (IDOR)

إخلاء المسؤولية

يُوفَّر هذا المستودع ومحتوياته لأغراض تعليمية وبحثية فقط. يُفصَح عن تفاصيل الثغرة وخطوات إثبات المفهوم وفقًا لمبادئ الإفصاح المسؤول لمساعدة المدافعين على فهم المشكلة ومعالجتها.

لا تستخدم هذه المعلومات لمهاجمة أي نظام أو اختراقه أو الحصول على وصول غير مصرح به إليه. الاختبار غير المصرح به ضد أنظمة لا تملكها أو ليس لديك إذن كتابي صريح لاختبارها غير قانوني وغير أخلاقي.

لا يتحمل المؤلف والمساهمون أي مسؤولية عن أي إساءة استخدام للمعلومات الواردة في هذا المستودع.

تنزيل الأداة
الحقلالقيمة
معرّف CVECVE-2023-33730
المنتجMicroworld Technologies eScan Management Console
الإصدار المُعرَّض14.0.1400.2281
نوع الثغرةتصعيد صلاحيات / تفويض مكسور على مستوى الكائن (BOLA / IDOR)
متجه الهجومالشبكة (مستخدم مصادق بصلاحيات منخفضة)
المصادقةمطلوبة (أي حساب مستخدم صالح)
درجة CVSSحرجة
تاريخ الإفصاح30 مايو 2023
الباحثSahil Ojha
الصفحة الرئيسية للبائعhttps://www.escanav.com
البرنامج المتأثرhttps://cl.escanav.com/ewconsole.dll
بيئة الاختبارWindows