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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-51482-ZoneMinder-v1.37.-1.37.64-SQL-Injection-POC — ZoneMinder Time-Based SQL Injection (CVE-2024-51482) Exploit POC | Kitploit
أدوات/GitHubGitHub/ravi-lk/cve-2024-51482-zoneminder-v1.37.-1.37.64-sql-injection-poc
Password CrackingVulnerability AnalysisExploitationWeb Application ExploitationCTFPenetration TestingLearning & Education
GitHubravi-lk/cve-2024-51482-zoneminder-v1.37.-1.37.64-sql-injection-poc

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2024-51482-ZoneMinder-v1.37.-1.37.64-SQL-Injection-POC

ZoneMinder Time-Based SQL Injection (CVE-2024-51482) Exploit POC

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

حقن SQL القائم على الزمن في ZoneMinder (CVE-2024-51482)

📌 نظرة عامة على الثغرة

  • معرّف CVE: CVE-2024-51482
  • إشعار أمني: GHSA-qm8h-3xvf-m7j3
  • الإصدارات المتأثرة: ZoneMinder 1.37.* حتى (بما في ذلك) 1.37.64
  • الإصدار المصلح: 1.37.65

📖 الوصف

يحتوي هذا المستودع على استغلال إثبات مفهوم (PoC) عالي الأداء ومتوازٍ (Exploit.py) لثغرة حقن SQL أعمى (Blind SQL Injection) موجودة في إصدارات ZoneMinder 1.37.* حتى 1.37.64.

السبب الجذري للثغرة وتأثيرها

وفقًا لـ GHSA-qm8h-3xvf-m7j3، تنشأ هذه الثغرة في web/ajax/event.php عند معالجة إجراء removetag. تتم قراءة المعامل tid (TagId) من الطلب ويتم دمجه بشكل غير آمن مباشرةً في عبارة SQL:

root@kitploit:~
$tagId = $_REQUEST['tid']; 
// ...
$sql = "SELECT * FROM Events_Tags WHERE TagId = $tagId";
$rowCount = dbNumRows($sql);

نظرًا لأن $tagId لا يُمرَّر عبر معاملات قبل إرساله إلى dbNumRows()، يمكن لمهاجم مصادق إدخال أوامر SQL عشوائية باستخدام تقنيات حقن SQL القائمة على القيم المنطقية (boolean-based) أو القائمة على الزمن (time-based) (يستخدم إثبات المفهوم المقدم هنا الدالة SLEEP()).

يسمح ذلك بتحكم كامل في قواعد بيانات SQL، مما يؤدي إلى فقدان سرية البيانات وسلامتها، وربما الحرمان من الخدمة (DoS) عبر أوامر إيقاف مؤقت (sleep) مستمرة.

المعالجة

اعتبارًا من الإصدار 1.37.65، أصبحت استعلامات SQL تُبنى باستخدام معاملات بشكل صحيح. تم إصلاح الجزء المعرض للثغرة لإنشاء استعلام آمن:

root@kitploit:~
$sql = "SELECT * FROM Events_Tags WHERE TagId = ?"; 
$rowCount = dbNumRows($sql, $tagId);

سكربت الاستغلال

يعمل سكربت FAST EXPLOIT بإصدار v2.0 على تسريع استخراج البيانات بشكل كبير يصل إلى 5 أضعاف باستخدام تعدد الخيوط (multi-threading)، وبحث محسّن لتردد الأحرف، ومعايرة ديناميكية للعتبة الزمنية لاستخراج بيانات اعتماد المستخدمين (Username:Password) من جدول قاعدة البيانات zm.Users بشكل عدواني.

🚀 تفاصيل الاستغلال (Exploit.py v2.0 FAST EXPLOIT)

الميزات

  • استخراج متوازٍ: يستخدم ThreadPoolExecutor (5 عمال افتراضيًا) لاستخراج عدة أحرف في وقت واحد، مما يقلل بشكل كبير من إجمالي وقت الاستخراج مقارنةً بحقن SQL الأعمى التسلسلي التقليدي.
  • بحث محسّن بالتردد: يفحص الأحرف الأكثر شيوعًا إحصائيًا في كلمات المرور والأحرف الإنجليزية أولاً قبل اللجوء إلى البحث الثنائي، مما يقلل متوسط عدد الطلبات لكل حرف.
  • كشف أُسّي للطول: يستخدم بحثًا خطويًا أُسّيًا سريعًا يتبعه بحث ثنائي لتحديد الطول الدقيق للسلسلة المستهدفة قبل بدء الاستخراج المتوازي.
  • معايرة ديناميكية للعتبة: يقوم تلقائيًا بمعايرة زمن الاستجابة الأساسي (العتبة) عند بدء التشغيل للتمييز بدقة بين تأخر الشبكة وفترات تنفيذ SQL الشرعية.
  • تفريغ انتقائي: يدعم استخراج بيانات اعتماد مستخدم محدد أو تفريغ جدول zm.Users بالكامل بشكل تسلسلي.

نقطة النهاية المعرضة للثغرة والمعاملات

  • الرابط (URL): الافتراضي http://<target>/zm/index.php
  • المعاملات: view=request&request=event&action=removetag
  • المعامل المعرض للثغرة: tid

🛠️ تحليل الاستخدام

root@kitploit:~
python3 Exploit.py

عند التشغيل، يعمل السكربت في وضع تفاعلي ويطالب بالمعلومات التالية:

  1. رابط الهدف (Target URL): المسار إلى ملف ZoneMinder index.php (مثل http://zoneminder.local/zm/index.php).
  2. قيمة كعكة ZMSESSID: يتطلب هذا الاستغلال مصادقة. قدّم كعكة ZMSESSID صالحة تمثل جلسة نشطة.
  3. اسم المستخدم الهدف (اختياري): أدخل مستخدمًا محددًا لاستخراج بيانات اعتماده، أو اتركه فارغًا لاكتشاف وتفريغ جدول zm.Users بالكامل.

يتم إنشاء ملف باسم extracted_data.txt تلقائيًا يحتوي على بيانات الاعتماد المفرّغة (بتنسيق Username:Password). يعرض السكربت أيضًا إحصائيات تنفيذ لحظية بما في ذلك إجمالي الوقت المنقضي وإجمالي عدد طلبات HTTP المرسلة.

🔗 المراجع

  • إشدار الأمان على GitHub GHSA-qm8h-3xvf-m7j3
  • إدخال NVD – CVE-2024-51482
  • الموقع الرسمي لـ ZoneMinder

إخلاء مسؤولية: يهدف هذا السكربت الاستغلالي إلى الأغراض التعليمية واختبار الاختراق المصرح به فقط. لا تستخدم هذه الأداة ضد أنظمة لا تملكها أو لا تملك إذنًا صريحًا لاختبارها.

تنزيل الأداة