9 votes

Comment puis-je répertorier tous mes mots de passe stockés dans Keychain Access ?

J'essaie d'utiliser la commande 'security find-internet-password' pour afficher mes mots de passe. Je veux écrire un script pour parcourir en boucle mon trousseau et lister tous mes mots de passe. J'ai lu la page de manuel de security et essayé les exemples mais je n'arrive pas à obtenir le retour d'aucun de mes mots de passe.

Voici la commande tirée de la page du manuel :

find-internet-password [-h] [-a account] [-s server] [options...] [-g] [keychain...]
            -a account      Match account string
            -c creator      Match creator (four-character code)
            -C type         Match type (four-character code)
            -d securityDomain
                            Match securityDomain string
            -D kind         Match kind string
            -j comment      Match comment string
            -l label        Match label string
            -p path         Match path string
            -P port         Match port number
            -r protocol     Match protocol (four-character code)
            -s server       Match server string
            -t authenticationType
                            Match authenticationType (four-character code)
            -g              Display the password for the item found
            -w              Display the password(only) for the item found

J'ai essayé plusieurs syntaxes pour la commande, y compris en laissant la valeur du trousseau vide. Dans les exemples ci-dessous, admin est un nom de compte pour l'un de mes comptes Internet. Je préférerais être capable d'obtenir tous les mots de passe en une seule fois, mais lorsque je vide le trousseau de clés, cela donne un texte illisible avec beaucoup de balises que je ne peux pas analyser. Existe-t-il une

$ security find-internet-password -a admin -g 
$ security find-internet-password -a admin -g login
$ security fine-internet-password -a admin -g user
$ security find-internet-password -a admin -g /Users/Chilly/Library/Keychains/user

Je préférerais pouvoir obtenir tous les mots de passe en une seule fois, mais lorsque je vide le trousseau de clés, cela donne un texte illisible avec de nombreuses balises que je ne peux pas analyser. Existe-t-il une documentation sur le web concernant le format de ce fichier dump ou la manière de l'analyser ? Les suggestions que j'ai vues disent de simplement 'grep' le fichier mais j'ai besoin de documentation pour savoir ce qu'il faut chercher. (et de lire un manuel sur grep, awk et sed, mais ceux-ci sont largement disponibles :-)

4voto

Richard Marquez Points 387

Cela va vider vos mots de passe de connexion :

sudo security dump-keychain -d login.keychain > keychain.txt

Et voici un script qui peut le convertir en un format lisible par l'homme : https://gist.github.com/rwest/1583781

NB : Le script de Ruby n'a fonctionné pour moi qu'après avoir supprimé la ligne contenant  .gsub!('htps', 'https'); .

Et, en option, voici un applescript qui cliquera automatiquement pour vous la boîte de dialogue de confirmation de sécurité de l'OS : https://apple.stackexchange.com/a/137336/66812 .

1 votes

Vérifier ce commentaire pour un script ruby fonctionnant sans supprimer de lignes !

2 votes

Il convient de noter qu'il ne s'agit que des mots de passe de connexion. la plupart des mots de passe intéressants se trouvent dans les mots de passe iCloud...

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X