CVE-2024-57522 - Vulnérabilité XSS stockée dans Users.php - SourceCodester Packers and Movers Management System 1.0
Description
Ce dépôt contient une preuve de concept (PoC) pour une vulnérabilité Cross-Site Scripting (XSS) stockée dans le Packers and Movers Management System 1.0 de SourceCodester. La vulnérabilité est présente dans l'endpoint Users.php, où un attaquant peut injecter un script malveillant dans le champ nom d'utilisateur ou nom lors de la création d'un utilisateur. Le script est ensuite stocké dans la base de données et exécuté lorsqu'un administrateur consulte la page de liste des utilisateurs, ce qui peut entraîner des actions malveillantes.
Détails de la vulnérabilité
- CVE-2024-57522
- Produit concerné : Packers and Movers Management System 1.0
- Composant concerné : endpoint Users.php
- Type d'attaque : à distance
- Impact : Exécution de scripts malveillants, détournement de session, hameçonnage, redirections malveillantes
- Implications en matière de sécurité : L'attaquant peut injecter et exécuter du code JavaScript arbitraire dans le contexte du navigateur d'un administrateur. Le script injecté reste persistant, permettant le détournement de session, le hameçonnage et d'autres activités malveillantes lorsqu'un administrateur consulte la page de liste des utilisateurs.
Preuve de concept (PoC)
Ce dépôt comprend une vidéo de preuve de concept, CVE-2024-57522.mkv, démontrant comment un attaquant peut exploiter la vulnérabilité XSS. La preuve de concept montre comment un attaquant peut créer un nouvel utilisateur administrateur avec une charge utile dans le champ nom (par exemple, <script>alert(1);</script>). Lorsque l'administrateur visite la page de liste des utilisateurs, le script malveillant s'exécute, affichant une alerte avec le message « 1 ».
Vecteurs d'attaque
- L'attaquant conçoit un exploit CSRF pour créer un utilisateur administrateur avec un script malveillant injecté dans le champ nom. En utilisant CVE-2024-57523
- Le script malveillant est stocké dans la base de données et exécuté lorsqu'un administrateur visite la page de liste des utilisateurs.
Recommandations d'atténuation
Pour atténuer cette vulnérabilité, les mesures de sécurité suivantes sont recommandées :
- Protection CSRF : Implémenter des jetons CSRF dans tous les formulaires effectuant des actions de changement d'état, telles que la création d'utilisateurs, afin d'empêcher les requêtes non autorisées.
- Validation et assainissement des entrées : Assainir et échapper correctement les entrées utilisateur, en particulier pour des champs comme les noms d'utilisateur ou les noms, afin d'empêcher l'injection de scripts malveillants.
- Politique de sécurité du contenu (CSP) : Implémenter une CSP pour réduire l'impact potentiel des vulnérabilités XSS en restreignant les sources à partir desquelles les scripts peuvent être chargés.
- Échappement du contenu généré par l'utilisateur : S'assurer que le contenu généré par l'utilisateur est validé et échappé avant de le rendre dans le navigateur afin d'empêcher l'exécution de scripts.
Versions concernées
- Packers and Movers Management System 1.0
Découvreur
- Madhav Shah - Chercheur en sécurité
Références