
Exploit d'énumération de noms d'utilisateur pour Medicine Tracker System 1.0 exploitant les écarts de temps de réponse dans la fonctionnalité de connexion pour identifier les noms d'utilisateur valides.
Titre de l'exploit : Medicine Tracker System 1.0 - Discrepance observable : énumération de nom d'utilisateur via le temps de réponse
Date : 22 avril 2023
Auteur de l'exploit : William David Mathisen (d34dun1c02n)
Page d'accueil du vendeur : https://www.sourcecodester.com/php/16308/medicine-tracker-system-php-oop-and-mysql-db-source-code-free-download.html
Lien du logiciel : https://www.sourcecodester.com/download-code?nid=16308&title=Medicine+Tracker+System+in+PHP+%28OOP%29+and+MySQL+DB+Source+Code+Free+Download
Version : v1.0
Testé sur : Kali Linux, XAMPP, MySQL
CVE : 2023-30458
Description de l'exploit : Un problème d'énumération de nom d'utilisateur a été découvert dans Medicine Tracker System 1.0. La fonctionnalité de connexion permet à un utilisateur malveillant de deviner un nom d'utilisateur valide en raison d'un temps de réponse différent pour les noms d'utilisateur invalides.
Vecteur d'attaque manuel :
Chemin d'attaque manuel : URL : http://localhost/php-mts/app/login.php
Avec Burp en cours d'exécution, soumettez un nom d'utilisateur et un mot de passe invalides, puis envoyez la requête POST /php-mts/app/login.php à Burp Repeater.
Remarquez que lorsque le nom d'utilisateur est invalide, le temps de réponse est à peu près le même. Cependant, lorsque vous entrez un nom d'utilisateur valide, le temps de réponse augmente en fonction de la longueur du mot de passe que vous avez saisi.
Envoyez cette requête à Burp Intruder et sélectionnez le type d'attaque sniper. Effacez les positions de payload par défaut et sélectionnez la position du nom d'utilisateur.
Depuis l'onglet des payloads, sélectionnez "add from list" des noms d'utilisateur et ajoutez manuellement un nom d'utilisateur dans la liste que vous savez légitime (mcooper, etc.). Sélectionnez start attack.
Lorsque l'attaque se termine, en haut de la boîte de dialogue, cliquez sur Columns et sélectionnez les options Response received et Response completed. Ces deux colonnes sont maintenant affichées dans la table des résultats.
Remarquez que le nom d'utilisateur valide prend nettement plus de temps que les autres.