Terrapin, une attaque MITM sur SSH qui manipule les numéros de séquence pendant le processus de négociation de connexion

vulnérabilité

Si elles sont exploitées, ces failles peuvent permettre aux attaquants d'obtenir un accès non autorisé à des informations sensibles ou de causer des problèmes en général.

Récemment, un groupe de scientifiques de l'Université de la Ruhr à Bochum, en Allemagne, a présenté les détails d'une nouvelle technique d'attaque MITM sur SSH, qu'ils ont baptisé «Terrapin» et qui, selon eux, pourrait permettre à un attaquant de dégrader la sécurité d'une connexion SSH lors de l'utilisation de la négociation d'extension SSH. L'impact en pratique dépendrait largement des extensions prises en charge, mais « presque toutes » sont vulnérables.

Terrapin, exploite une vulnérabilité (déjà catalogué sous CVE-2023-48795) qui un attaquant peut en profiter pour organiser une attaque MITM lors de l'utilisation d'OpenSSH, la vulnérabilité vous permet d'inverser la connexion pour utiliser des algorithmes d'authentification moins sécurisés ou de désactiver la protection contre les attaques par canal secondaire qui recréent la saisie en analysant les délais entre les frappes sur le clavier.

"En ajustant soigneusement les numéros de séquence lors de la prise de contact, un attaquant peut supprimer un nombre arbitraire de messages envoyés par le client ou le serveur au début du canal sécurisé sans que le client ou le serveur ne s'en aperçoive", mentionnent les chercheurs.

Concernant la vulnérabilité, il est mentionné que cela affecte toutes les implémentations SSH prenant en charge les chiffrements en mode ChaCha20-Poly1305 ou CBC en combinaison avec le mode ETM (Encrypt-then-MAC). Par exemple, des fonctionnalités similaires sont disponibles dans OpenSSH depuis plus de 10 ans.

« Le plus souvent, cela affecte la sécurité de l'authentification du client lors de l'utilisation d'une clé publique RSA. Lors de l’utilisation d’OpenSSH 9.5, il peut également être utilisé pour désactiver certaines contre-mesures aux attaques par timing de frappe », écrivent les chercheurs.

La vulnérabilité est due au fait qu'un attaquant qui contrôle le trafic de connexion (par exemple, le propriétaire d'un point sans fil malveillant) peut ajuster les numéros de séquence de paquets pendant le processus de négociation de connexion et obtenez la suppression silencieuse d'un nombre arbitraire de messages de service SSH envoyés par le client ou le serveur.

Entre autres choses, un attaquant pourrait supprimer les messages SSH_MSG_EXT_INFO utilisés pour configurer les extensions du protocole utilisé. Pour empêcher l'autre partie de détecter une perte de paquet due à un écart dans les numéros de séquence, l'attaquant lance l'envoi d'un paquet factice avec le même numéro de séquence que le paquet distant pour modifier le numéro de séquence. Le paquet factice contient un message avec l'indicateur SSH_MSG_IGNORE, qui est ignoré pendant le traitement.

Pour réaliser une attaque Terrapin dans la pratique, les attaquants ont besoin de capacités d'homme du milieu au niveau de la couche réseau pour intercepter et modifier le trafic. De plus, des méthodes de cryptage spécifiques doivent être convenues pour garantir une transmission sécurisée des données pendant la connexion.

L'attaque ne peut pas être menée à l'aide de chiffrements de flux et de CTR, puisque la violation de l’intégrité sera détectée au niveau de l’application. Dans la pratique, seul le cryptage ChaCha20-Poly1305 est utilisé dans lequel l'état est suivi uniquement par les numéros de séquence de message et une combinaison du mode Encrypt-Then-MAC (*-etm@openssh.com). ) et les chiffrements CBC sont sujets à des attaques.

Il est mentionné que a également été détecté dans la bibliothèque Python AsyncSSH, En combinaison avec une vulnérabilité (CVE-2023-46446) dans l'implémentation de la machine d'état interne, l'attaque Terrapin nous permet de pirater une session SSH.

Vulnérabilité Corrigé dans OpenSSH version 9.6 et dans cette version d'OpenSSH et d'autres implémentations, une extension du protocole « strict KEX » est mise en œuvre pour bloquer l’attaque, qui est automatiquement activé s'il existe une prise en charge côté serveur et client. L'extension met fin à la connexion à la réception de tout message anormal ou inutile (par exemple, avec l'indicateur SSH_MSG_IGNORE ou SSH2_MSG_DEBUG) reçu pendant le processus de négociation de connexion, et réinitialise également le compteur MAC (Message Authentication Code) après avoir terminé chaque échange de clé.

Enfin, si vous souhaitez en savoir plus, vous pouvez consulter les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.