CVE-2021-46075
Titre de l'exploit : Vehicle Service Management System - 'Multiple' escalade de privilèges menant à des opérations CRUD
Auteur de l'exploit : SANU P.L
CVE : CVE-2021-46075
CVSS : 7.2 ÉLEVÉ
Références :
Description :
Une vulnérabilité d'escalade de privilèges existe dans Sourcecodester Vehicle Service Management System 1.0. Les utilisateurs du compte Staff peuvent accéder aux ressources administrateur et effectuer des opérations CRUD.
1. Vehicle Service Management System - 'Liste des utilisateurs' (/admin/?page=user/list) (/admin/?page=user/manage_user)
Exploitation :
- Visitez le panneau d'administration http://localhost/vehicle_service/admin
- Connectez-vous au compte Admin dans le navigateur A (Chrome)
- Connectez-vous au compte Staff dans le navigateur B (Firefox)
- Dans le compte Admin (Chrome), accédez à la section Liste des utilisateurs et cliquez sur le bouton Créer un nouveau.
- Copiez le lien de Créer un nouvel utilisateur http://localhost/vehicle_service/admin/?page=user/manage_user
- Dans le compte Staff (Firefox), il n'y a pas de section Liste des utilisateurs car le compte Staff n'a pas les droits pour créer un utilisateur.
- Collez le lien copié dans le navigateur B (Firefox)
- Nous pouvons désormais accéder à la page Créer un utilisateur.
- Saisissez les détails requis et cliquez sur le bouton Enregistrer.
- Dans le compte Admin (Chrome), accédez à la section Liste des utilisateurs http://localhost/vehicle_service/admin/?page=user/list
- Le nouvel utilisateur a été créé avec succès.
- Le compte Staff peut accéder à la page Liste des utilisateurs et à la page Créer un utilisateur.
- Le compte Staff peut créer, lire, mettre à jour et supprimer les utilisateurs.
2. Vehicle Service Management System - 'Liste des catégories' (/admin/?page=maintenance/category) (/admin/?page=maintenance/manage_category)
Exploitation :
- Visitez le panneau d'administration http://localhost/vehicle_service/admin
- Connectez-vous au compte Admin dans le navigateur A (Chrome)
- Connectez-vous au compte Staff dans le navigateur B (Firefox)
- Dans le compte Admin (Chrome), accédez à la section Liste des catégories et cliquez sur le bouton Créer un nouveau.
- Copiez le lien de Créer une nouvelle catégorie http://localhost/vehicle_service/admin/?page=maintenance/manage_category
- Dans le compte Staff (Firefox), il n'y a pas de section Liste des catégories car le compte Staff n'a pas les droits pour créer une catégorie.
- Collez le lien copié dans le navigateur B (Firefox)
- Nous pouvons désormais accéder à la page Créer une catégorie.
- Saisissez les détails requis et cliquez sur le bouton Enregistrer.
- Dans le compte Admin (Chrome), accédez à la section Liste des catégories http://localhost/vehicle_service/admin/?page=maintenance/category
- La nouvelle catégorie a été créée avec succès.
- Le compte Staff peut accéder à la page Liste des catégories et à la page Créer une catégorie.
- Le compte Staff peut créer, lire, mettre à jour et supprimer les catégories.
3. Vehicle Service Management System - 'Liste des services' (/admin/?page=maintenance/services) (/admin/?page=maintenance/manage_service)
Exploitation :
- Visitez le panneau d'administration http://localhost/vehicle_service/admin
- Connectez-vous au compte Admin dans le navigateur A (Chrome)
- Connectez-vous au compte Staff dans le navigateur B (Firefox)
- Dans le compte Admin (Chrome), accédez à la section Liste des services et cliquez sur le bouton Créer un nouveau.
- Copiez le lien de Créer un nouveau service http://localhost/vehicle_service/admin/?page=maintenance/manage_service
- Dans le compte Staff (Firefox), il n'y a pas de section Liste des services car le compte Staff n'a pas les droits pour créer un service.
- Collez le lien copié dans le navigateur B (Firefox)
- Nous pouvons désormais accéder à la page Créer un service.
- Saisissez les détails requis et cliquez sur le bouton Enregistrer.
- Dans le compte Admin (Chrome), accédez à la section Liste des services http://localhost/vehicle_service/admin/?page=maintenance/services
- Le nouveau service a été créé avec succès.
- Le compte Staff peut accéder à la page Liste des services et à la page Créer un service.
- Le compte Staff peut créer, lire, mettre à jour et supprimer les services.
4. Vehicle Service Management System - 'Paramètres' (/admin/?page=system_info)
Exploitation :
- Visitez le panneau d'administration http://localhost/vehicle_service/admin
- Connectez-vous au compte Admin dans le navigateur A (Chrome)
- Connectez-vous au compte Staff dans le navigateur B (Firefox)
- Dans le compte Admin (Chrome), accédez à la section Paramètres.
- Copiez le lien de la section Paramètres http://localhost/vehicle_service/admin/?page=system_info
- Dans le compte Staff (Firefox), il n'y a pas de section Paramètres car le compte Staff n'a pas les droits pour accéder aux Paramètres.
- Collez le lien copié dans le navigateur B (Firefox)
- Nous pouvons désormais accéder à la page Paramètres.
- Saisissez les détails requis et cliquez sur le bouton Enregistrer.
- Dans le compte Admin (Chrome), accédez à la section Paramètres http://localhost/vehicle_service/admin/?page=system_info
- Les détails ont été mis à jour avec succès.
- Le compte Staff peut accéder à la page Paramètres.
- Le compte Staff peut mettre à jour les Paramètres.
Impact :
Un attaquant distant obtient un accès élevé à des ressources qui devraient normalement être indisponibles. Les utilisateurs du compte Staff peuvent accéder aux ressources administrateur et effectuer des opérations CRUD.
Atténuation :
Il est recommandé de mettre en œuvre ce qui suit :
- Gestion appropriée des comptes privilégiés
- Surveiller et gérer toutes les sessions privilégiées
- Politiques et application de mots de passe forts
- Assainir les entrées utilisateur et sécuriser les bases de données