Pourquoi devrais-je utiliser «HashKnownHosts yes» dans ssh_config?

19

J'ai des serveurs avec oui, d'autres sans ici (je n'ai découvert cette option qu'aujourd'hui).

Les avantages de HashKnownHosts ne sont pas que je peux gérer le fichier known_hosts plus facilement.

Quels sont les avantages factuels de l'utilisation de HashKnownHosts oui?

Thibaut Barrère
la source

Réponses:

8

Le fichier known_hosts représente un petit risque de sécurité. Il contient une liste pratique de tous les serveurs auxquels vous vous connectez. Un attaquant qui aurait eu accès à votre mot de passe ou à votre clé privée non chiffrée aurait simplement besoin de parcourir la liste jusqu'à ce que vos informations d'identification soient acceptées. Le hachage résout ce problème ou du moins masque la liste.

oneodd1
la source
5
Cette réponse semble avoir été copiée sans attribution de vitalvector.com/blog/2009/02/ssh-tip-hash-known-hosts.html
Martey
22

Avec un texte clair known_hosts, les attaquants sauraient facilement à quels serveurs vous vous connectez. Il y a un article et un article du MIT sur un ver ssh potentiel utilisant un lisible known_hosts. Bien sûr, il existe généralement d'autres façons, encore plus lourdes, de déterminer vos connexions ssh quotidiennes, telles que l'historique de votre shell, qu'un attaquant pourrait utiliser.

Notez que vous pouvez toujours travailler avec votre hachage known_hostsà l'aide du ssh-keygenprogramme utilitaire:

ssh-keygen -F myhost         # shows myhosts's line in the known_hosts file
ssh-keygen -l -F myhost      # additionally shows myhost's fingerprint
ssh-keygen -R myhost         # remove myhost's line from known_hosts

Cela, en particulier la dernière commande, devrait être suffisant pour 99% des cas auxquels les utilisateurs ont vraiment besoin d'accéder known_hosts. Bien sûr, vous perdrez l'achèvement de l'onglet hôte ssh.

Notez également que les options de ligne de commande ssh-keygensont sensibles à la casse

Il y a aussi une question pertinente sur unix.SE.

quazgar
la source