Un site Web "s'est cassé" après que j'ai changé mon mot de passe en quelque chose comme "NÌÿÖÏï £ Ø ¥ üQ ¢ ¨¼Ü9¨ÝIÇÅbÍm". Je n'ai pas pu me connecter et le service client a supprimé mon compte et m'a fait en créer un nouveau. Cela implique-t-il des failles de sécurité dans le code du site? Dois-je m'inquiéter de mes informations d'identification?
Évidemment, j'utilise un gestionnaire de mots de passe, et le site Web ne me permet que de réserver des places dans un cinéma, donc les informations d'identification n'ont pas beaucoup de valeur.
Votre description est que le site ne valide pas correctement leur entrée. Cela implique (faiblement) une faille profonde dans leur code. Si votre entrée avait simplement étouffé leur routine qui appelle PBKDF2()
, alors le hachage de votre mot de passe pourrait ne pas être reproductible; mais je suppose qu'une simple réinitialisation du mot de passe aurait dû suffire à résoudre ce problème. La suppression de votre compte peut indiquer que l'enregistrement de votre compte était corrompu; cependant, la suppression de comptes peut simplement être leur réponse à toute personne qui a un problème de mot de passe en raison d'une entrée utilisateur inattendue. Ils pourraient même essayer de contrecarrer activement les pirates avec cette réponse.
De plus, un défaut ne signifie pas nécessairement que leur site est vulnérable. Le code défectueux devrait être exploitable, et vous n'en avez pas fourni la preuve. Ces preuves peuvent inclure un comportement erratique ou des valeurs inexplicablement modifiées.
Si vous décidez d'appuyer davantage, en testant peut-être des caractères de mot de passe individuels pour isoler le glyphe qui a amené leur site à verrouiller votre compte, sachez qu'ils seraient en droit de considérer ces tentatives comme une attaque de piratage. Demandez l'autorisation du propriétaire du site avant d'expérimenter.
Notez que si, au lieu d'utiliser des caractères à jeu de bits élevé, vous construisez votre mot de passe à partir de 16 caractères cryptographiques aléatoires, à bit élevé, standard, ordinaires, imprimables ASCII caractères alphanumériques, la différence pratique pour la sécurité de votre mot de passe ne sera pas pertinente.
Cela signifie très probablement que (comme la plupart des programmes écrits par des Américains), il n'a jamais été testé avec des caractères Unicode et que vous avez exposé un bogue dans leur code. Ce n'est pas une priorité élevée pour eux de résoudre, alors ils ont juste contourné le problème en vous disant de ne pas le faire.
Il est étrange que le service client ait supprimé et recréé votre compte au lieu de réinitialiser le mot de passe, mais pas incroyablement inquiétant. Il se peut qu'ils soient mal formés pour faire face à cette situation et c'est juste l'approche qu'ils ont adoptée. Il se peut également que le bogue soit également présent dans la fonction de changement de mot de passe pour une raison quelconque (peut-être qu'ils stockent quelque chose de crypté avec votre mot de passe comme clé, et qu'ils doivent le décrypter puis recrypter avec le nouveau mot de passe?).
Un site avec ces types de problèmes d'ingénierie et de test est susceptible d'avoir également une faille de sécurité ou deux, mais c'est une corrélation statistique, pas quelque chose directement impliqué par le bogue observé.
Le traitement des mots de passe doit être un module qui ne produit ni ne vérifie plus qu'un hachage. Les seuls moyens de ne pas pouvoir réentrer un mot de passe complexe sont deux morceaux de code distincts censés faire la même chose mais pas, ou pire, les mots de passe sont stockés en texte brut.
Plus le traitement ou le stockage des mots de passe est clair, plus le site est vulnérable aux attaques d'extraction de mots de passe ou aux attaques générales sur le système.
Il y a un xkcd comic sur le traitement des mots de passe dépassant sa portée immédiate.
Et bien sûr, cela rappelle aussi petites tables Bobby .
Résumé des deux bandes dessinées: désinfectez les entrées avant de les stocker n'importe où et ne traitez pas trop les mots de passe.
Je suis désolé si mes références sont toutes de Randall Munroe mais ses explications sont tellement graphiques ...
C'est probablement un bug. Une règle d'or est de ne jamais faire confiance à un site Web tiers, car tout est possible. Ne présumez pas que quelque chose est impossible, mais utilisez certainement un mot de passe complexe mais avec ASCII caractères uniquement.