55 votes

Comment puis-je confirmer que cet avertissement SSH n'est pas une véritable attaque man in the middle ? "AVERTISSEMENT : L'IDENTIFICATION DE L'HÔTE DISTANT A CHANGÉ !"

Je suis novice dans ce domaine et je veux exclure toute attaque de type "man-in-the-middle".

Je me connecte depuis un PC Windows 10 à un Raspberry Pi 4 via SSH, au sein de mon réseau local et j'obtiens ce message. Je suis l'administrateur système, donc il n'y a personne avec qui vérifier.

J'ai trouvé beaucoup de messages sur la façon de résoudre le problème, mais je veux savoir ce que je dois faire pour exclure (ou confirmer) une attaque avant de la résoudre.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:0xgFiU5j9W2WgyurDOgORf+qeFQoHf0YE6G92KnrduY.
Please contact your system administrator.
Add correct host key in C:\\Users\\JamesAlesi/.ssh/known_hosts to get rid of this message.
Offending RSA key in C:\\Users\\JamesAlesi/.ssh/known_hosts:2
ECDSA host key for 192.168.1.123 has changed and you have requested strict checking.
Host key verification failed.

82voto

Edward Tanguay Points 1109

En général, l'approche que vous adoptez est toujours la même : vous vérifiez l'empreinte digitale de la clé via un canal que l'attaquant ne peut pas ont manipulé.

Par exemple, dans mon ancienne université, vous pouviez vous rendre à la réception du centre informatique et obtenir un dépliant contenant une liste des empreintes digitales de toutes les clés et de tous les certificats importants. S'il s'agit du serveur d'un ami que vous connaissez personnellement, vous pouvez l'appeler et lui demander de vous lire l'empreinte digitale. S'il s'agit d'un serveur hébergé et géré, certains des fournisseurs d'hébergement les plus soucieux de la sécurité peuvent proposer de vous envoyer les empreintes par courrier.

L'essentiel est : IFF vous avez des raisons de penser que votre connexion réseau est compromise, essayez alors d'obtenir l'empreinte digitale sans utiliser le réseau.

Pour votre Raspberry Pi, il existe plusieurs options très simples :

  • Il suffit de connecter un câble réseau de votre ordinateur directement au Raspberry Pi. Boom : il n'y a plus de "milieu" où quelqu'un pourrait monter une attaque de type "Man-in-the-middle".
  • Connectez-vous à la console série du Pi depuis votre PC et connectez-vous directement à la console. Boom : il n'y a même plus de réseau.
  • Branchez un clavier USB et un écran HDMI sur votre Pi et connectez-vous directement à la console.
  • Sortez la carte SD (ou la clé USB ou tout autre support de démarrage), montez le système de fichiers ext2 sur votre PC (si vous n'utilisez pas Linux, vous aurez peut-être besoin d'un logiciel supplémentaire pour cela, ou vous pouvez démarrer sur un LiveCD Linux), et vérifiez la clef dans /etc/ssh/ssh_host_ecdsa_key .

Cela répond à la question plus spécifique sur la façon de vérifier la clé hôte. Maintenant, à votre question plus générale :

Je suis novice dans ce domaine et je veux exclure toute attaque de type "man-in-the-middle".

Pour organiser une attaque de type "man-in-the-middle" sur votre réseau local, l'attaquant doit avoir un accès physique à votre infrastructure. Donc, si vous voulez exclure une attaque de type "man-in-the-middle", vous pouvez littéralement tracer vos câbles et rechercher un "man in the middle", c'est-à-dire un dispositif que vous ne reconnaissez pas. Mais attention : ces dispositifs peuvent être minuscules et bien cachés.

Vous pouvez également rechercher des signes d'effraction sur la serrure de votre porte, ou d'autres points d'entrée de votre maison (fenêtres, etc.).

Vous pouvez maintenant effectuer une analyse de plausibilité : qu'est-ce qui est le plus probable, que quelqu'un s'est introduit chez vous et a installé un dispositif dans votre réseau local sans que vous le remarquiez, juste pour voir ce que vous faites avec votre Raspberry Pi ? Ou est-il plus probable que 192.168.1.123 ait été attribué à un autre appareil auparavant (ou que vous ayez mis à jour, réinstallé ou reconfiguré votre Pi) et que l'ancienne clé soit toujours en mémoire cache sur votre PC ?

Si nous parlons d'un WiFi, alors une attaque MitM. no nécessitent un accès physique. Il est donc beaucoup plus probable que quelqu'un soit capable de monter une telle attaque sans que vous vous en rendiez compte. Cependant, la question demeure : que veut l'attaquant en reniflant la connexion entre vous et votre Pi ?

De même, si un appareil de votre réseau local est également connecté à un autre réseau (un réseau WiFi, un réseau de voisinage, l'Internet), cet appareil peut être compromis par les moyens suivants que réseau, et ainsi donner à un attaquant l'accès à votre LAN.

Comme mentionné dans un commentaire ci-dessus, un Raspberry Pi compromis est une chose précieuse, mais tout attaquant compétent saurait le compromettre d'une manière qui ne change pas la clé hôte.

19voto

gronostaj Points 50460

Lorsque vous vous connectez à un hôte pour la première fois, SSH enregistre ses informations d'identification. Si cette identification change à l'avenir, il affiche ce message.

Cela peut se produire par exemple après avoir réinstallé le système cible, en le remplaçant par un autre avec la même IP/le même nom d'hôte que vous utilisez pour vous connecter ou après avoir régénéré les clés SSH du serveur du système. Si cela ressemble à quelque chose que vous avez fait récemment, c'est la raison.

Il pourrait tout aussi bien s'agir d'une personne interceptant votre connexion (et envoyant réellement son identification), mais dans un réseau local, c'est peu probable.

9voto

David Schwartz Points 60868

Connectez-vous au Raspberry Pi depuis la machine avec laquelle vous vous connectez normalement. Notez la clé. Confirmez que l'empreinte digitale est correcte.

Si vous n'avez jamais mis en place un moyen sécurisé de vous connecter au Raspberry Pi depuis n'importe quel endroit, alors vous n'en avez pas. La prochaine fois, faites-le lorsque vous configurez la machine. Par exemple, prenez une photo de l'empreinte digitale de la clé de la console lorsque vous configurez le système d'exploitation.

4voto

pereric Points 141

Avez-vous eu d'autres appareils sur votre réseau local auxquels vous vous êtes connecté avec ssh, comme d'autres Pi:s ou des ordinateurs *nix ordinaires ?

Si vous utilisez le protocole DHCP, une adresse IP attribuée (pour une durée limitée, sous la forme d'un "bail" DHCP) à un appareil peut être réutilisée ultérieurement pour un autre appareil. Si vous vous êtes connecté avec ssh à un périphérique, ssh se souvient de la clé hôte pour cette adresse IP. Lorsqu'un nouveau périphérique se voit attribuer la même adresse IP et que vous essayez de vous connecter avec ssh, vous obtenez l'erreur ci-dessus.

De nombreux serveurs DHCP essaient d'attribuer des adresses "quasi-permanentes" en se basant sur le MAC (l'adresse matérielle Ethernet) du périphérique demandant une adresse IP, mais ce n'est pas parfait - par exemple, si toutes les adresses IP de la plage disponible pour le DHCP sont déjà utilisées, certaines doivent être réutilisées. Ou si le routeur, le serveur domestique ou tout autre dispositif que vous utilisez pour le DHCP est réinitialisé ou remplacé.

3voto

Giacomo1968 Points 48326

Vous ne vous faites pas pirater.

De toute façon, pourquoi quelqu'un voudrait-il avoir un accès "man-in-the-middle" à un Raspberry Pi sur un réseau local personnel ?

" Je veux savoir ce que je dois faire pour écarter (ou confirmer) une attaque avant de la réparer."

Les chances qu'une personne "man-in-the-middle" vous attaque au sein de votre réseau local via un Raspberry Pi sont minces, voire nulles. Quel est l'avantage de faire cela s'ils ont réussi à pénétrer dans votre réseau local et que vous avez un bon nombre de machines Windows auxquelles ils peuvent accéder ?

La principale raison pour laquelle quelqu'un fait du "man-in-the-middle" est de capturer des données - telles que des informations d'identification et autres - et de les utiliser ensuite de manière sauvage. Ils obtiennent des informations d'identification pour un Raspberry Pi et cela mène à quoi ? À moins que votre Raspberry Pi n'effectue des transactions financières ou autres, mais j'en doute.

Le scénario le plus probable est que vous avez réinstallé le système d'exploitation sur le Raspberry Pi, ce qui modifierait la signature d'identification et aboutirait à un scénario tel que celui auquel vous êtes confronté. En effet, c'est typiquement la raison pour laquelle une inadéquation d'identification comme celle-ci se produit ; quelque chose a changé l'identification.

Dans le monde non-Raspberry Pi, cela peut se produire si vous échangez un disque système d'une machine à l'autre - comme dans le cas d'une mise à niveau matérielle et autres - et cela se produit même plus souvent avec les VM et autres où l'installation/la suppression des systèmes est très facile.

Quant à l'idée de vous donner une liste de moyens pour confirmer par vous-même, honnêtement, au-delà de l'évaluation de bon sens que je présente, ce n'est pas vraiment possible.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X