• # défauts et qualités

    Posté par . En réponse au journal Gé(né)rer ses mots de passe. Évalué à 3.

    La méthode proposée par l'auteur du journal ressemble beaucoup à celle que j'utilisais avant ! Avantage : jamais de blocage devant une fenêtre de password "compatible", on prend vite l'habitude de générer rapidement le mot de passe de n'importe-quel service même ceux qu'on utilise rarement. Inconvénient : Tous les sites ne supportent pas les caractères spéciaux, les majuscules, plus de 8 lettres. etc., et un attaquant pourra facilement déduire la logique du mot de passe, surtout s'il réussit à en obtenir plusieurs.

    Passer tout ça au hachoir comme le propose ouasse résout le second problème mais l'obligation de passer par un logiciel pour générer le mot de passe rend l'utilisation peu pratique pour les services plus rarement utilisés (les autres, on finit par retenir la chaîne), avec le risque qu'à terme le mot de passe transite par le presse papier, ou d'oublier un terminal ouvert à la vue de tous avec le résultat de la commande. Pour ceux qui voudrait quand-même utiliser cette méthode je me permet de proposer une petite amélioration, passer par read pour taper le mot de passe 'sel' permet d'éviter de l'enregistrer malencontreusement dans l'historique du terminal :

    #!/bin/sh
    prg_name=`basename 0ドル`
    if [ $# -ne 2 ] ; then
     echo "usage: $prg_name user domain"
     exit 1
    fi
    read -rsp "type master password: " m_pwd
    echo
    echo "${1}${m_pwd}${2}" | openssl dgst -sha1 -binary | base64 | cut -c 1-8
    
    

    Je passe rapidement sur remplacer les caractères par des mots à la xkcd, vu que ça ne change rien au problème, si tu utilises le même partout tu vas t'en rappeler facilement, mais avec un différent par site ça va vite être lourd à moins d'utiliser une méthode pour déduire le mot de passe à partir du nom du service, mais du coup mêmes problèmes qu'avec la solution n° 1…

    Finalement j'utilise actuellement un mélange de la solution N°1 avec la N°2 le tout combiné avec des cartes de code.

    Je déduis le chemin sur la carte de code à partir du nom d'utilisateur et du nom du service comme avec la solution N°1, la carte peut contenir des caractères spéciaux et génère un mot de passe totalement aléatoire comme avec la solution N°2, mais si le service l’exige je peux faire une carte qu'avec des caractères minuscules voir avec seulement des chiffres. Si la longueur de mot de passe est limité, je peux le noter sur ma carte pour me rappeler qu'il ne faut parcourir que la moitié du chemin.

    Vu que je stocke mes cartes au format papier sur un agenda rotatif modifié, je suis obligé de recopier les mots de passes à la main, pas de risque qu'ils se retrouvent dans l'historique du terminal ou dans le presse-papier.

    Un attaquant distant ne pourra pas générer mes autres mots de passe s'il en obtiens un car il n'a pas le jeu de cartes (une par service) celui qui volera ou copiera mon jeu de carte devra encore trouver le cheminement de mon esprit taré pour générer les mots de passes, mais je reconnais que là est le point faible de cette méthode !

    Éviter les mots de passe à la "toto", ou d'utiliser le même mot de passe partout, on se retrouve vite avec son compte mail pro piraté suite à une inscription sur un site de boules russe. Après y'a des dizaines de façons de faire, plus ou moins sécures, plus ou moins chiantes, suivant votre degrés de paranoïa, la geekitude de votre entourage et la sensibilité de vos données car pour le simple piratage du gmail d'un inconnu, dans 99,999% le pirate stoppera sans même réfléchir si ça passe pas avec le mot de passe qu'il a récupéré dans la base de données du site de boules russe, même si seulement une lettre diffère entre les deux !