Blog

Comment éviter l'énumération de noms d'utilisateur | Secure Code Warrior

October 9, 2017
Pieter De Cremer
Écran de connexion avec champs pour le nom d'utilisateur et le mot de passe, ce dernier étant masqué par des astérisques.

Une attaque par canal auxiliaire survient lorsqu'un pirate recueille des informations à partir de l'implémentation physique d'un système logiciel, plutôt que d'exploiter une faiblesse théorique de l'algorithme ou un bug dans le code.

Un exemple que j'aime utiliser pour clarifier ce concept est celui de l'énumération de noms d'utilisateur. Si vous voulez savoir ce qu'est l'énumération de noms d'utilisateur ou pourquoi elle est dangereuse, visitez notre site web pour une explication vidéo ou lancez-vous un défi pour voir si vous pouvez l'identifier dans le code.

Pour comprendre comment l'énumération de noms d'utilisateur peut être réalisée via une attaque par canal auxiliaire, vous devez comprendre comment les mots de passe sont (ou devraient être) gérés dans les applications web modernes. Une bonne application web ne connaît pas votre mot de passe et ne le stocke nulle part. Comment sait-elle alors que ce que vous avez saisi est correct ? Votre mot de passe est haché.

Une fonction de hachage est une opération mathématique facile à effectuer dans un sens, mais très difficile à inverser. Pour les bons algorithmes, le résultat est unique selon l'entrée. Lors de votre inscription, ce hash est stocké en toute sécurité, pas votre mot de passe. À chaque connexion, l'application hache votre saisie et compare le résultat au hash stocké. Pour en savoir plus sur le stockage sécurisé des mots de passe, consultez notre plateforme.

Hacker in hooded sweatshirt accessing a screen showing user data with passwords and credit card numbers.

Le hachage prend du temps et les développeurs cherchent toujours à optimiser leurs programmes pour une expérience fluide. Une astuce consiste à ignorer le hachage si nécessaire. Par exemple, si le nom d'utilisateur n'existe pas, ils peuvent répondre immédiatement sans effectuer le calcul lent du hachage. Si le nom d'utilisateur est correct, ils hachent le mot de passe saisi et le comparent au hash stocké.

Vous avez peut-être deviné où le bât blesse. Bien que le hachage ne prenne que quelques millisecondes, un pirate peut utiliser ce délai pour savoir si le nom d'utilisateur saisi est correct, car une réponse sera légèrement plus rapide si aucun hachage n'est effectué. Ce type d'attaque par canal auxiliaire est une attaque temporelle, illustrant comment des exigences non fonctionnelles peuvent s'opposer : le code ne peut parfois pas être à la fois rapide et sécurisé.

Même si les mots de passe sont parfaitement gérés et que le message d'erreur est générique, le système reste vulnérable. La solution est simple : hachez toujours le mot de passe ou retardez la réponse du temps nécessaire au hachage.

Les informations obtenues peuvent permettre à un attaquant d'établir une liste d'utilisateurs du système. Ces données peuvent ensuite servir à attaquer l'application web, par exemple via une attaque par force brute ou en testant des identifiants par défaut.

https://www.owasp.org/index.php/Testing_for_User_Enumeration_and_Guessable_User_Account_(OWASP-AT-002)

Slogan

Gouvernez le développement assisté par IA avant la mise en production

Évaluez les risques liés à l'IA, appliquez des politiques de codage sécurisé dès le commit et accélérez la livraison sécurisée tout au long de votre cycle de développement.

Réserver une démo
Bibliothèque de ressources

Explorer plus d'articles

Accédez à du contenu expert sur le codage sécurisé, la gouvernance de l'IA et la gestion des risques logiciels.

tout parcourir
Étude de cas
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

En savoir plus
Étude de cas
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

En savoir plus
Étude de cas
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Une culture de la sécurité : comment Sage a bâti son programme de champions

Découvrez comment Sage a renforcé sa sécurité grâce à une approche flexible axée sur les relations humaines, formant plus de 200 champions de la sécurité et obtenant une réduction mesurable des risques.

En savoir plus
Blog
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Mois de la sensibilisation à la cybersécurité 2026 : comprendre la sécurité de l'IA est essentiel à la défense de l'entreprise

Nous avons atteint un point où la plupart des grandes entreprises d'IA ont publiquement appelé à un ralentissement mondial du développement de l'IA afin de permettre aux garde-fous de sécurité de rattraper leur retard. Pourtant, la réalité est que de graves problèmes de sécurité se sont déjà concrétisés. Cela place d'innombrables responsables de la sécurité et équipes de direction dans une situation d'urgence, alors que les coûts financiers et les risques liés à la mise en œuvre de l'IA ne cessent de s'accumuler.

En savoir plus
Blog
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Levier 8 : Valoriser votre programme

Un programme de codage sécurisé a besoin de plus qu'un contenu de qualité pour réussir. Le levier 8 montre comment l'image de marque transforme la participation en une expérience convoitée, axée sur le statut.

En savoir plus
Blog
Libellé du filtre
Ceci est un texte à l'intérieur d'un bloc div.

Chaque employé est désormais en première ligne de la cybersécurité IA

Le paysage technologique des entreprises évolue à une vitesse que peu avaient anticipée avant qu'il ne soit trop tard. Nous avons officiellement franchi le cap du code écrit par l'humain et de l'assistance basique par copilote pour entrer dans l'ère du cycle de vie de développement agentique (ADLC). Si les agents IA autonomes promettent une efficacité sans précédent dans de multiples fonctions, ils apportent également une toute nouvelle catégorie de risques en matière de sécurité et de réglementation.

En savoir plus

Sécurisez le développement piloté par l'IA avant le déploiement

Identifiez les risques de développement, appliquez vos politiques et prévenez les vulnérabilités tout au long du cycle de vie de vos logiciels.

Réserver une démo
trust score
Aucun élément trouvé.