Énumération des utilisateurs

Énumération des utilisateurs

Deux erreurs différentes indiquent à un attaquant quels e-mails sont réels.

Qu'est-ce que Énumération des utilisateurs?

L'énumération des utilisateurs est votre application confirmant quelles adresses ont des comptes. Il nécessite une différence observable : une chaîne d'erreur différente, un code d'état différent, une réponse plus lente. Vous enverrez deux sondes de connexion et obtiendrez « Aucun compte trouvé » par rapport à « Mot de passe incorrect », plus un écart de latence, car bcrypt ne s'exécute que lorsqu'il existe un hachage à comparer. Le correctif renvoie une erreur générique et exécute toujours la comparaison avec un hachage factice fixe lorsqu'aucun utilisateur n'existe. L'inscription et la réinitialisation du mot de passe donnent la même réponse.

Ce que vous apprendrez dans Énumération des utilisateurs

Énumération des utilisateurs — Étapes de la formation

  1. Une liste qui a besoin d'un filtre

    Bob détient un vidage de paires d'e-mails et de mots de passe provenant d'une violation sans rapport. La plupart de ces personnes n'ont jamais entendu parler de Larksong, donc afficher la liste complète sur la page de connexion serait lent et bruyant. Il veut d’abord savoir lesquels de ces e-mails sont en réalité des comptes Larksong. Il ouvre la page de connexion de Larksong dans son navigateur, avec DevTools prêt, pour voir comment il répond à un échec de connexion.

  2. Essayez un e-mail qui n'est pas enregistré

    Bob commence avec une base de référence. Il se connecte avec une adresse qui n'a presque certainement pas de compte Larksong et un mot de passe jetable, et regarde la réponse atterrir dans le panneau Réseau.

  3. La réponse de base

    Le formulaire affiche une erreur de connexion, et le vrai détail se trouve dans le panneau Réseau : un 401 avec un corps de réponse et un temps de réponse. Voici à quoi ressemble un échec de connexion avec un e-mail non enregistré. Bob le note comme sa référence.

  4. Essayez un e-mail qu'il pense être réel

    Maintenant, Bob réessaye avec une adresse de sa décharge qui, selon lui, appartient à un véritable auditeur, marcus.delgado@gmail.com, toujours avec un mot de passe jetable. Si le point final traite les deux cas de la même manière, la réponse correspondra à la ligne de base. Si ce n’est pas le cas, la différence représente la totalité du prix.

  5. Une réponse différente

    La réponse a changé. Même mot de passe erroné, mais le corps de la réponse est différent. Bob ne s'est jamais connecté, mais le point de terminaison de connexion vient de lui dire que cet e-mail est un vrai compte Larksong.

  6. Vérifiez les délais de réponse

    Le libellé est un révélateur. Le panneau Réseau en contient un deuxième, plus silencieux : la durée de chaque requête.

  7. Contrôle des connaissances

    Avant que Bob ne développe cela, soyez précis sur la raison pour laquelle le compte réel était tellement plus lent.

  8. Récoltez la liste

    Bob pointe un script sur le point de terminaison de connexion et lui transmet chaque e-mail de son dump, une requête chacun. Chaque fois que la réponse est le lent Mot de passe incorrect , cette adresse figure sur sa liste confirmée. Sur 50 000 candidats, 8 400 sont de véritables comptes Larksong. Désormais, l'exécution de bourrage d'informations d'identification qui suit uniquement les adresses cibles dont il sait qu'elles existent, elle reste donc petite, silencieuse et bien en dessous des limites de débit qui signaleraient une pulvérisation aveugle.

  9. L'alerte de sécurité

    Vous possédez le service de connexion de Larksong. Du jour au lendemain, la détection a signalé un modèle étrange sur le point de terminaison de connexion et vous a envoyé le résultat par courrier électronique. Lisez ce qu'il a détecté, puis ouvrez le code.

  10. Ouvrez le gestionnaire de connexion

    La route de connexion réside dans le service d'authentification. Ouvrez le gestionnaire et regardez comment il décide ce qu'il faut renvoyer en cas d'échec d'une connexion.

Couverture des référentiels de sécurité

OWASP Top 10

  • A07:2025 Authentication Failures
  • A07:2021 Identification and Authentication Failures

CWE

  • CWE-204 Observable Response Discrepancy
  • CWE-208 Observable Timing Discrepancy

CIS Controls

  • CIS 16 Application Software Security

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security