
تدوينة بحثية حول CVE-2017-7921 — ثغرة تجاوز مصادقة حرجة بدون مصادقة في كاميرات Hikvision IP وأجهزة DVR/NVR، تغطي السبب الجذري، مسار الاستغلال، الاكتشاف، والمعالجة.
مصادقة غير سليمة — تصعيد الامتيازات عبر معامل استعلام مُصمَّم خصيصًا
| معرّف CVE | CVE-2017-7921 |
| فئة الثغرة | CWE-287: مصادقة غير سليمة |
| الدرجة الأساسية CVSS v3.0 | 10.0 (حرجة) — AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| درجة CVSS v2.0 | 7.5 (عالية) — AV:N/AC:L/Au:N/C:P/I:P/A:P |
| تاريخ الإفصاح | 2017 (نشرة ICS-CERT ICSA-17-124-01) |
| المورّد | Hikvision Digital Technology Co., Ltd. |
| الحالة | تم التصحيح — أصدرت Hikvision برنامجًا ثابتًا مصححًا؛ ولا تزال الأجهزة غير المُصححة وأجهزة "السوق الرمادية" معرَّضة للخطر |
| مؤلف إثبات المفهوم / الاستغلال | Jared Brits (K3ysTr0K3R) |
| مؤلف التحليل | MK-ULTRA (github.com/MK-ULTRA-project-monarch) |
تُعد CVE-2017-7921 ثغرة حرجة من نوع المصادقة غير السليمة تؤثر على مكوِّن خادم الويب في البرنامج الثابت (firmware) لمجموعة واسعة من كاميرات الشبكة وأجهزة DVR وNVR من Hikvision. تتيح هذه الثغرة لمهاجم خارجي غير مُصادَق تجاوز آلية تسجيل الدخول في الجهاز بالكامل عبر إلحاق معامل استعلام مُعرَّف بشكل ثابت ومُصمَّم خصيصًا بمسارات طلبات HTTP معيّنة. ولأن فحص المصادقة يثق بهذا المعامل بدلاً من التحقق من جلسة أو مجموعة بيانات اعتماد، فإن أي طلب يحمله يُعامَل كما لو كان صادرًا من عملية داخلية متمتعة بصلاحيات.
يمنح الاستغلال الناجح وصولاً إداريًا كاملاً إلى واجهة الويب الخاصة بالجهاز، بما في ذلك بث الفيديو المباشر والمسجَّل، وإعدادات الجهاز، وبيانات حسابات المستخدمين، وعلى العديد من فروع البرنامج الثابت القدرة على تنزيل ملف إعدادات الجهاز الكامل، الذي يحتوي بدوره على بيانات اعتماد مخزّنة بتشفير ضعيف. لا تتطلب الثغرة أي تفاعل من المستخدم، ولا أي مصادقة مسبقة، ولا موقعًا شبكيًا غير قياسي، وهو ما جعلها — إلى جانب الحجم الهائل لقاعدة تركيبات Hikvision — هدفًا دائمًا لتجنيد الروبوتات (مثل نشاط عائلة Reaper/IoTroop) وجمع خلاصات المراقبة منذ الإفصاح عنها.
تم تأكيد الثغرة عبر عدة عائلات منتجات من Hikvision تعمل بفروع برنامج ثابت تسبق التصحيح الأمني لعام 2017. تشمل خطوط الإنتاج المتأثرة التمثيلية:
كما أشارت Hikvision إلى تعقيد قائم خاص بهذه الثغرة: عدد كبير من أجهزة "السوق الرمادية" التي تُباع خارج قنوات التوزيع المعتمدة تعمل ببرنامج ثابت معدَّل وغير تابع لـ Hikvision. لا تعالج تحديثات البرنامج الثابت القياسية هذه الوحدات بشكل موثوق، وفي بعض الحالات تعيد الواجهة إلى حالتها السابقة بدلاً من تصحيحها.
تعتمد مصادقة أجهزة Hikvision القياسية على مصادقة HTTP Basic/Digest لحماية واجهة الإدارة عبر الويب. ومع ذلك، في البرنامج الثابت المعرَّض للثغرة، تحتوي مجموعة فرعية من نقاط نهاية معالجة الطلبات الداخلية على مسار مصادقة ثانوي غير موثّق مخصص للاستخدام الداخلي/التصحيح. لا يقوم هذا المسار بإجراء بحث عن بيانات الاعتماد — بل يفحص الطلب للتحقق من وجود رمز مميز (token) ثابت ومضمَّن في الكود، وإذا وُجد، يعامل الطلب كطلب مُصادَق مسبقًا، متجاوزًا فحوصات التحكم في الوصول المستند إلى الأدوار (RBAC) بالكامل.
الرمز المميز هو تمثيل بترميز Base64 لزوج بيانات اعتماد افتراضي ثابت مضمَّن في البرنامج الثابت نفسه. ولأنه قيمة ثابتة وليست قيمة جلسة مشتقة، فهو متطابق عبر كل جهاز معرَّض للثغرة بغض النظر عن كلمة مرور المسؤول المكوَّنة فعليًا على تلك الوحدة — فتغيير كلمة مرور المسؤول لا يخفف من الثغرة.
على مستوى عالٍ، يتبع الاستغلال هذا التسلسل:
لا يتضمن الأمر أي إفساد للذاكرة أو تجاوز سعة المخزن المؤقت أو تفاعل من جانب العميل؛ الهجوم بأكمله هو طلب HTTP واحد مُصمَّم وعديم الحالة، وهذا ما يجعله قابلاً للبرمجة النصية بسهولة وصديقًا للماسحات الضوئية.
ثلاثة عوامل تفسر الذيل الطويل غير المعتاد للتعرض الواقعي لهذه الثغرة:
| المقياس | الأثر |
|---|---|
tenable_ot_hikvision_CVE-2017-7921.nasl، ونشرة CISA/ICS-CERT ICSA-17-124-01.تمت كتابة إثبات مفهوم (PoC) عملي لـ CVE-2017-7921 بواسطة Jared Brits (K3ysTr0K3R) ويُحتفظ به في github.com/K3ysTr0K3R/CVE-2017-7921-EXPLOIT. واتساقًا مع ممارسة الإفصاح المسؤول، لا يتضمن هذا التحليل كود الاستغلال أو مخرجات أهداف حية أو بيانات اعتماد/لقطات تم التقاطها.
[ محجوز للقطات شاشة إثبات المفهوم ضد جهاز تملكه أو مخوَّل لك صراحةً اختباره — مثل جهاز افتراضي/كاميرا معزولة في مختبر منزلي دون proxychains، دون أهداف تابعة لأطراف ثالثة، ودون لقطات حية من بيئة نشر حقيقية. ]
tenable_ot_hikvision_CVE-2017-7921.nasl.أُعدَّ لتوثيق الأبحاث التعاونية. يغطي هذا التحليل آليات الثغرة وأثرها واكتشافها ومعالجتها كمرجع لأغراض دفاعية وتعليمية؛ ولا يتضمن كود استغلال جاهزًا للتشغيل أو أدلة من أهداف غير مصرَّح بها.
| كاملة — يتم كشف الفيديو المباشر/المسجَّل وإعدادات الجهاز وبيانات الاعتماد المخزّنة (ضعيفة التشفير). |
| السلامة | كاملة — يمكن للمهاجم تعديل إعدادات الجهاز وحسابات المستخدمين وإعدادات البث. |
| التوافر | كاملة — يمكن للمهاجم تعطيل التسجيل أو إعادة التشغيل أو تعطيل تشغيل الجهاز بأي طريقة أخرى. |
| النطاق | متغيّر (CVSS v3) — غالبًا ما يتيح اختراق الجهاز الانتقال إلى الشبكة الأوسع أو تجنيده في روبوتات موزعة. |