Violation de Gestion d’authentification et de Session Fait par Alexandre Martin
Usurpation d’identité, voilà ce que c’est ! Scénario d’applications mal protégées : Permet le Brute Force Accès à la base de donnée des mots de passe Identifiants de connexion/mots de passe non « hasher » dans la BD Mauvaise désactivation des jetons d’authentification Indication de l’élément erroné à la connexion : « Mot de passe incorrect » Utilisateur déjà existant à la création d’un compte Transition des mots de passes/IDs de session par des canaux non chiffrés. [Exposition de données sensibles ] Identifiants de session exposés dans l'URL
Tous ! Environnements affectés ? Que votre code soit en PHP, C#, ASP.NET, PHP Qu’il soit hébergé sur un serveur IIS ou non QU’il soit utilisé sur Mac, Windows ou Linux
Comment faire pour éviter cette faille ? Hasher les informations de connexion de l’utilisateur Protéger la base de donnée (Mot de passe, la rendre inaccessible à l’utilisateur( Ne pas indiquer à l’usager l’information erronée ni aucune information personnelle sans être connecté Ne jamais mettre de SessionID, mot de passe ou utilisateur dans l’URL http://example.com/sale/saleitems;jsessionid= 2P0OC2JSNDLPSKHCJUN2JV?dest=Hawaii Mettre des « captchas », un nombre limite d’essai sur un compte pendant un certain temps
Conclusion Plusieurs vont penser que faire son propre système d’authentification est préférable en tout point. Pourtant, il y a beaucoup de choses à vérifier et oublier un seul de ces éléments peut être fatal pour la compagnie à qui appartient ce site. (Perte d’une somme d’argent importante, informations confidentielles distribuées sur le web, moins de crédibilité pour l’entreprise.) C’est pour ça qu’il est préférable d’utiliser un système déjà existant éprouvé, testé et qualifié.