
Un projet final pour le cours "Sécurité réseau" à NYCU (National Yang Ming Chiao Tung University, Taiwan). Exploitation d'une CVE dans le logiciel "EasyAppointments".
Ce document présente l'analyse détaillée de CVE-2022-0482, une vulnérabilité de sécurité critique identifiée dans le logiciel de planification Easy!Appointments. Cette faille, liée à une autorisation incorrecte (CWE-863), permet un accès non autorisé à des informations personnelles identifiables sans authentification appropriée, posant des risques significatifs pour la confidentialité et l'intégrité des données.
Mija Pilkaite
CVE-2022-0482 affecte les versions d'Easy!Appointments antérieures à 1.4.3. Elle a été signalée pour la première fois par Francesco Carlucci le 30 janvier 2022. Cette vulnérabilité permet à des utilisateurs non autorisés d'accéder à des données sensibles gérées par le logiciel et de potentiellement les exploiter.
Pour analyser cette vulnérabilité, un environnement isolé a été créé en suivant les étapes suivantes :
Utilisez Ubuntu 22.04 Server dans une machine virtuelle ou un conteneur Docker. Téléchargez la version vulnérable (1.4.2 ou antérieure) d'Easy!Appointments depuis le dépôt GitHub officiel.
Modifiez la version PHP vers 8.0 dans docker/server/Dockerfile. Configurez config.php conformément à la documentation.
Commandes d'installation :
docker compose up -d
docker exec -it <container_name> bash
apt install git
apt install npm
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Installation des dépendances :
npm install
php composer.phar install
L'exploitation implique les étapes suivantes :
Lancez l'application et configurez un profil administrateur en vous connectant à http://localhost/index.php/backend.
La vulnérabilité existe en raison de l'absence de contrôles de sécurité adéquats sur le point de terminaison /index.php/backend_api/ajax_get_calendar_events. Un attaquant peut l'exploiter en envoyant des requêtes POST avec « startDate », « endDate » et « csrfToken » pour récupérer les détails des rendez-vous au format JSON.
Des détails complets sur tous les clients, les spécificités des rendez-vous et les informations des prestataires de services, y compris les mots de passe hachés, peuvent être exposés.
cve-2022-0482.py [-h] [--startDate STARTDATE] [--endDate ENDDATE] hostname
Mise à jour corrective : Il est crucial de mettre à niveau vers la version 1.4.3 ou ultérieure, qui corrige cette vulnérabilité. Bonnes pratiques de sécurité : Implémentez des contrôles d'authentification et d'autorisation robustes, en particulier pour les points de terminaison sensibles.
Ces sources fournissent des informations supplémentaires et des détails techniques sur la vulnérabilité CVE-2022-0482 et sont essentielles pour une compréhension plus approfondie et des recherches supplémentaires sur ce problème.