Credentials exposed in URLs
Informations d'identification exposées dans les URL
Description
Les informations d'identification dans les URL peuvent être stockées à différents endroits, y compris sur l'appareil de l'utilisateur, le serveur web et tout serveur proxy direct ou inverse situé entre les deux points de terminaison. Les URL peuvent également être affichées à l'écran, ajoutées aux favoris ou envoyées par e-mail par les utilisateurs. Elles peuvent être divulguées à des tiers via l'en-tête Referer lorsqu'un lien externe est suivi. Placer des jetons de session dans l'URL augmente le risque qu'ils soient interceptés par un attaquant.
Recommandation
Pour éviter de divulguer des informations d'identification dans les journaux d'application et/ou les journaux des serveurs backend, envisagez les actions suivantes :
- Éviter de Stocker les Informations d'Identification dans les URL : Abstenez-vous de placer des informations sensibles, telles que des jetons de session, directement dans les URL chaque fois que cela est possible.
- Utiliser une Gestion de Session Sécurisée : Implémentez des techniques de gestion de session sécurisées qui ne reposent pas sur l'intégration d'informations d'identification dans les URL. Utilisez plutôt des méthodes telles que les cookies de session avec des configurations de sécurité appropriées.
- Chiffrer les Données Sensibles en Transit : Utilisez des protocoles de chiffrement tels que HTTPS pour garantir que les données sensibles, y compris les URL contenant des informations d'identification, sont chiffrées lors de la transmission entre l'appareil de l'utilisateur et le serveur web.
- Implémenter la Rédaction d'URL : Implémentez des mécanismes pour masquer ou obfusquer automatiquement les informations sensibles, telles que les informations d'identification, à partir des URL affichées à l'écran ou journalisées afin de minimiser les risques d'exposition.
Liens
- CWE-200: Information Exposure
- CWE-598: Information Exposure Through Query Strings in GET Request
- CWE-384: Session Fixation
- CWE-359: Exposure of Private Information ("Privacy Violation")
Normes
- OWASP_MASVS_L1:
- MSTG_AUTH_3
- OWASP_MASVS_L2:
- MSTG_AUTH_3
- PCI_STANDARDS:
- REQ_2_2
- REQ_6_2
- OWASP_MASVS_v2_1:
- MASVS_AUTH_1
- SOC2_CONTROLS:
- CC_2_1
- CC_4_1
- CC_7_1
- CC_7_2
- CC_7_4
- CC_7_5
- HIPAA_CONTROLS:
- SECURITY252
- SECURITY212
- SECURITY213