Bien que @gowenfawr touche les points principaux, j'en ai quelques-uns à ajouter:
La plupart des systèmes, mais pas tous , cachent les mots de passe réels dans / etc / ombre
. Pour voir si votre système est vulnérable, vérifiez un compte d'utilisateur réel. Si cela ressemble à
stighemmer: x: ...
Alors vos mots de passe sont sûrs.
Si cela ressemble à
stighemmer:kjsaashgdkwqvbm:...
Alors vos mots de passe ne sont PAS sûrs.
Oui, le mot de passe est obscurci à l'aide d'une fonction de hachage à sens unique, mais cela ne suffit pas. Avoir ce fichier permet au pirate de vérifier si un utilisateur donné a un certain mot de passe sans vraiment essayer de se connecter.
En 1970, cette vérification était lente et les choses étaient raisonnablement sûres. Aujourd'hui, un hacker peut vérifier des millions de mots de passe par seconde. Si l'un de vos utilisateurs possède un mot de passe devinable, le compte de cet utilisateur sera piraté. Et la limite pour ce qui est "devinable" est repoussée à chaque génération de processeur.
Vous avez maintenant vérifié et constaté que vos mots de passe sont stockés en toute sécurité dans / etc / shadow
. Bien, problème résolu.
Pas tout à fait. / etc / passwd
contient plus d'informations.
Il contient le nom complet de chaque utilisateur. Ceci est très utile pour les attaques d'ingénierie sociale.
Il contient une liste d'utilisateurs du système, qui indique quel logiciel est installé.
Donc, je reçois un e-mail qui me dit "Hey Stig, je avez oublié le mot de passe postgres. Pouvez-vous me le rappeler? Signé, autre utilisateur réel ". Étant donné que mon client de messagerie utile n'affiche pas l'adresse e-mail complète, je ne remarquerai pas que cet e-mail provient d'un pays distant. Je réponds: "C'est" S3CR37 "". Oups, la base de données de l'entreprise vient d'être piratée.
Bien sûr, ce n'est pas la seule façon dont les noms complets sont exposés, vous devez quand même enseigner aux utilisateurs les attaques d'ingénierie sociale.