Question:
Sécurité par mot de passe
Robert
2013-12-31 01:58:32 UTC
view on stackexchange narkive permalink

On m'a demandé sur la page de connexion d'un site Web de changer d'abord mon mot de passe. Après avoir saisi un nouveau mot de passe, la page Web m'a indiqué que le nouveau mot de passe ne différait pas suffisamment du précédent. Cela signifie-t-il que l'entreprise qui gère le site Web ne stocke pas les mots de passe de manière sûre? Ou y a-t-il un moyen de stocker les mots de passe hachés tout en étant capable de comprendre que le mot de passe précédent ne diffère que d'un caractère du nouveau?

Quatre réponses:
apsillers
2013-12-31 02:22:14 UTC
view on stackexchange narkive permalink

Puisque vous venez d'entrer votre ancien mot de passe pour vous connecter, un site peut conserver ce mot de passe à des fins de comparaison - très brièvement - jusqu'à ce que vous ayez terminé le changement de mot de passe sur la page suivante. C'est un principe assez sûr, et c'est ainsi que l'utilitaire UNIX passwd détecte les nouveaux mots de passe trop similaires.

Parce qu'il est généralement nécessaire pour demander le mot de passe actuel de l'utilisateur lors du changement de mot de passe, cette approche de la détection de similarité peut être facilement appliquée dans la plupart des scénarios de changement de mot de passe.

Pour être complet, voici d'autres possibilités moins probables :

  1. Le site stocke votre mot de passe en texte clair.

  2. Le site utilise un hachage avec une sorte de faiblesse qui permet des des comparaisons (par exemple, des estimations de la distance de Levenshtein) de mots de passe hachés. Si tel est le cas, c'est une faiblesse substantielle, et pas beaucoup mieux que de stocker votre mot de passe en texte clair.

  3. Alternativement, le mot de passe peut être stocké dans une transformation réversible, par exemple, chiffrement. Ce n'est pas un bon moyen de sécuriser les mots de passe: cela ouvre la possibilité de compromettre le mot de passe par le biais de la compromission de clé, et cela n'offre pas un avantage significatif car il n'est pas nécessaire de rendre les transformations de mot de passe sécurisées réversibles (c'est pourquoi nous utilisons généralement des hachages).

  4. Lorsque vous entrez un nouveau mot de passe, le site hache un ensemble de transformations mineures de votre nouveau mot de passe pour voir si l'une d'entre elles correspond à votre ancien hachage de mot de passe. Cela pourrait éventuellement être fait en toute sécurité.

    Par exemple, supposons que le site connaisse votre ancien hachage de mot de passe, Q . Lorsque vous saisissez un nouveau mot de passe p , le site calcule des hachages de mots de passe très proches de p . En supposant que votre nouveau mot de passe soit xyzzy , le site peut essayer de hacher ayzzy , byzzy , cyzzy , etc., pour voir si l'un d'entre eux correspond à l'ancien hachage Q .

    Cela semble être un effort substantiel, en particulier si le site utilise un algorithme de hachage bien adapté aux mots de passe (c'est-à-dire, en particulier, un algorithme lent à calculer). Ainsi, même si ce cas était vrai, cela semble suggérer que le site utilise un algorithme de hachage peu adapté à la sécurisation des mots de passe.

Bien sûr, on ne peut pas savoir lequel de ces possibilités est vraie - toutes pourraient facilement entraîner le comportement que vous décrivez.

étant donné que le site prend la peine de détecter des différences insuffisantes entre les nouveaux et anciens mots de passe, il semble fort probable que votre numéro 4 puisse bien en être la raison.
Le numéro 4 doit être le numéro 1. C'est l'option la plus probable.
@Ben C'est une bien meilleure idée; terminé.
Il convient également de noter qu'il est raisonnable d'exiger que le mot de passe existant soit ressaisi lors du passage à un nouveau mot de passe (confirme que l'utilisateur connaît le mot de passe existant et que l'ordinateur n'a pas été utilisé temporairement par un autre utilisateur). Cela fournirait les deux mots de passe pour permettre des comparaisons.
@jamiescott Ajout de votre suggestion avec un lien vers une question Secuirty.SE connexe.
Une réponse excellente et approfondie!
CodeExpress
2013-12-31 02:22:05 UTC
view on stackexchange narkive permalink

Cela signifie-t-il que l'entreprise qui gère le site Web ne stocke pas les mots de passe de manière sûre?

Une façon possible de le faire est de comparer votre nouveau mot de passe avec l'ancien mot de passe que vous avez fourni sur la même (ou la précédente) page pour vous connecter à ce site. Notez que même si le site Web stocke le hachage du mot de passe, votre mot de passe en texte brut est soumis au site Web chaque fois que vous vous connectez. Pour la fonctionnalité de changement de mot de passe, ils pourraient l'enregistrer temporairement en session pour faire ces calculs de `` à quelle distance les mots de passe sont-ils séparés ''.

Si c'est ainsi qu'ils le font, je ne le fais pas voir tous les problèmes avec cela. Cependant, s'ils inversent vraiment les mots de passe d'une manière ou d'une autre, ils ne le font certainement pas de la bonne manière.

Ou y a-t-il un moyen de stocker les mots de passe hachés et toujours être en mesure de comprendre que le mot de passe précédent ne diffère que d'un caractère du nouveau?

Non, il n'y a aucun moyen de récupérer le mot de passe en texte brut ou de calculer la longueur du texte brut à partir de son hachage (étant donné son hachage en utilisant un bon algorithme de hachage et ne peut pas être forcé brutalement)

GdD
2013-12-31 02:20:09 UTC
view on stackexchange narkive permalink

Le hachage est un processus où le moindre changement donne un résultat complètement différent et n'est pas réversible. La seule façon dont ils pourraient comparer votre ancien mot de passe à votre nouveau mot de passe serait de stocker vos mots de passe sans être hachés.

Cela ne signifie pas qu'ils stockent vos mots de passe de manière non sécurisée: le hachage n'est qu'une méthode de stockage sécurisé des mots de passe. Les mots de passe hachés ne sont de toute façon pas une garantie de sécurité, avec les tables de hachage et les tables arc-en-ciel, les mots de passe hachés peuvent être piratés avec une relative facilité. Tant qu'ils sont stockés cryptés et que leurs contrôles sont sains, vous êtes aussi en sécurité que l'on peut raisonnablement s'y attendre.

Tout dépend de la façon dont l'entreprise en question a développé son produit, et cela ne peut pas être répondu ici.

Rubber Duck
2013-12-31 02:18:43 UTC
view on stackexchange narkive permalink

Il y a de fortes chances que les mots de passe soient cryptés. En fonction de l'implémentation du cryptage, votre mot de passe est sécurisé. Donc, non, étant donné ces informations, vous ne pouvez pas conclure que vos mots de passe sont stockés dans un domaine dangereux.

Théoriquement, au moins, le serveur ne peut stocker que le hachage. Ensuite, lorsque vous venez avec votre nouveau mot de passe, ils hachent les variantes de votre mot de passe pour voir si elles atteignent votre hachage de mot de passe d'origine. C'est un peu exagéré, mais c'est certainement possible.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...