Une attaque Blast-Radius exploitant une faille de rayon critique pourrait compromettre votre réseau

2024-07-12 02:39:56

La vulnérabilité Blast-RADIUS représente une faille critique dans le protocole RADIUS (Remote Authentication Dial-In User Service), un composant essentiel de la sécurité des réseaux depuis plus de trois décennies. Récemment découverte, cette vulnérabilité permet aux attaquants de contourner les mécanismes d’authentification et d’obtenir un accès non autorisé aux réseaux, ce qui peut conduire à des attaques de l’homme du milieu (MitM).

Qu’est-ce que le RAYON ?

RADIUS est un protocole réseau qui fournit une gestion centralisée de l’authentification, de l’autorisation et de la comptabilité (AAA) pour les utilisateurs se connectant à et utilisant un service réseau. Il est largement utilisé dans diverses applications, notamment les fournisseurs de services Internet, les réseaux d’entreprise et les réseaux sans fil.

La vulnérabilité : CVE-2024-3596

Identifiée comme CVE-2024-3596, cette vulnérabilité exploite une faille inhérente au MD5 Response Authenticator du protocole RADIUS. Ce défaut de conception permet aux attaquants de mener une attaque par collision MD5, de manipuler les contrôles d’intégrité et de forger des messages d’authentification.

Comment fonctionne l’attaque Blast-RADIUS

L’attaque Blast-RADIUS exploite une faille critique du protocole RADIUS, largement utilisé pour l’authentification réseau depuis 1991. Cette vulnérabilité permet aux attaquants de mener une attaque de l’homme du milieu (MitM) et d’obtenir un accès non autorisé en forgeant une authentification. Voici une explication détaillée du fonctionnement de cette attaque :

Composants clés de RADIUS
  1. Serveur d’accès réseau (NAS): Agit en tant que client qui vérifie les informations d’identification d’un utilisateur final en envoyant des requêtes RADIUS à un serveur central.
  2. Serveur RADIUS: Répond au NAS avec des messages acceptant ou refusant l’accès en fonction de la vérification des informations d’identification de l’utilisateur.
  3. Secret partagé: Un secret fixe connu uniquement du NAS et du serveur RADIUS.
  4. Demander un authentificateur: Une valeur aléatoire de 16 octets incluse dans les paquets de requête.
  5. Authentificateur de réponse: Une valeur de hachage MD5 utilisée pour protéger l’intégrité des réponses du serveur.
Mécaniques d’attaque
  1. Interception de l’adversaire: L’attaquant se positionne entre le client RADIUS (NAS) et le serveur RADIUS, interceptant et modifiant la communication.
  2. Création d’un attribut d’état proxy malveillant: L’attaquant injecte un attribut Proxy-State malveillant dans une demande d’accès client légitime, conçu pour être reflété par le serveur dans sa réponse.
  3. Attaque par collision MD5: L’attaque exploite la vulnérabilité de l’algorithme de hachage MD5 aux collisions de préfixes choisis. Voici une ventilation étape par étape :
    • Collision de préfixe choisi: Étant donné deux préfixes distincts P1 et P2, l’attaquant calcule des blocs de charabia G1 et G2 tels que : MD5(P1∣∣G1)=MD5(P2∣∣G2)MD5(P1||G1) = MD5(P2|| G2) MD5(P1∣∣G1)=MD5(P2∣∣G2)Cela signifie que l’attaquant peut créer deux messages différents qui aboutissent au même hachage MD5.
    • Collision d’accès-rejet et d’accès-acceptation: L’attaquant prédit le format de la réponse de rejet d’accès du serveur et crée une fausse réponse d’acceptation d’accès. En utilisant la technique de collision MD5, l’attaquant s’assure que les deux réponses ont la même valeur de hachage MD5.
  4. Contrefaçon d’authentificateur de réponse: Le serveur calcule l’authentificateur de réponse à l’aide de la formule : MD5(Code∣∣ID∣∣Length∣∣RequestAuthenticator∣∣PacketAttributes∣∣SharedSecret)MD5(Code || ID || Longueur || Request Authenticator || Packet Attributes || Shared Secret)MD5(Code∣∣ID∣∣Length∣∣RequestAuthenticator∣∣PacketAttributes∣∣SharedSecret)En incluant l’attribut Proxy-State malveillant, l’attaquant s’assure que l’authentificateur de réponse pour la fausse acceptation d’accès correspond à la réponse du refus d’accès légitime.
  5. Remplacement du paquet: L’attaquant intercepte la réponse de rejet d’accès du serveur et la remplace par la fausse réponse d’acceptation d’accès, gardant ainsi l’authentificateur de réponse intact.
  6. L’accès non autorisé: Le NAS reçoit la fausse réponse d’acceptation d’accès et accorde à l’attaquant l’accès aux ressources du réseau, croyant que le serveur les a authentifiés.

La vulnérabilité Blast-RADIUS a de sérieuses implications pour la sécurité du réseau car elle permet aux attaquants d’obtenir un accès non autorisé à une grande variété de périphériques et de services réseau. Cela peut entraîner l’interception des communications, l’injection de fausses données et une pénétration supplémentaire dans l’infrastructure réseau.

L’attaque Blast-RADIUS est-elle pratique ?

L’aspect pratique de l’attaque Blast-RADIUS est une question complexe. Voici une répartition détaillée :

Faisabilité du concept de test

  • Temps d’exécution: Dans les attaques de preuve de concept, il fallait entre 3 et 6 minutes pour calculer la collision de hachage MD5 du préfixe choisi nécessaire à l’attaque. Cette durée est plus longue que les délais d’attente typiques de 30 à 60 secondes utilisés en pratique pour l’authentification RADIUS.
  • Parallélisation: L’algorithme de collision utilisé dans l’attaque peut être parallélisé, ce qui signifie qu’avec les bonnes ressources, le temps d’attaque peut être considérablement réduit. L’optimisation matérielle et l’utilisation de GPU modernes ou de matériel spécialisé tel que les FPGA (Field Programmable Gate Arrays) ou les ASIC (Application-Specific Integrated Circuits) peuvent accélérer le processus.
  • La disponibilité des ressources: Les temps d’exécution signalés étaient basés sur les optimisations d’une base de code vieille de 15 ans fonctionnant sur des processeurs âgés de sept à dix ans. Un attaquant disposant de ressources suffisantes pourrait obtenir des temps beaucoup plus rapides en utilisant des ressources informatiques plus avancées et plus puissantes.

Coût de calcul

  • Ressources cloud: Le déploiement de l’attaque sur des ressources cloud comme Amazon EC2 pourrait réduire considérablement le temps de calcul. Par exemple, l’utilisation d’une instance c7a.48xlarge avec 192 vCPU ou d’une instance g6.48xlarge avec 192 vCPU et 8 GPU NVIDIA L4 pourrait augmenter la vitesse de l’attaque, avec un coût estimé à environ 50 $ par heure pour dépasser la capacité de calcul utilisée dans la preuve de concept.

Restrictions pratiques

  • Délais d’attente: Les temps d’attente typiques de 30 à 60 secondes pour les réponses RADIUS présentent un défi, car les délais de validation de principe dépassaient ces limites. Cependant, avec des ressources optimisées, cet obstacle pourrait être surmonté.
  • L’accès au réseau: L’attaquant doit être dans une position qui lui permet d’agir comme un intermédiaire sur le réseau entre le client RADIUS et le serveur. Cela nécessite un accès important au réseau, ce qui n’est pas toujours pratique ou réalisable sans d’abord compromettre d’autres parties du réseau.

Qui est concerné par ces vulnérabilités ?

La vulnérabilité Blast-RADIUS affecte presque toutes les implémentations de RADIUS (Remote Authentication Dial-In User Service) qui utilisent des méthodes d’authentification non EAP (Extensible Authentication Protocol) sur UDP (User Datagram Protocol). Ceci comprend:

  • Réseaux d’affaires: RADIUS est couramment utilisé pour authentifier l’accès aux commutateurs et autres infrastructures réseau.
  • Accès VPN: Les réseaux privés virtuels utilisent souvent RADIUS pour l’authentification.
  • Fournisseurs d’accès Internet (FAI): Pour les services DSL (Digital Subscriber Line) et FTTH (Fiber to the Home).
  • Authentification Wi-Fi: Utilisé dans 802.1X et divers scénarios d’authentification sans fil.
  • Réseaux cellulaires: Roaming cellulaire 2G et 3G, authentification DNN (Data Network Name) en 5G.
  • Téléchargement Wi-Fi mobile: Authentification par cartes SIM.
  • Accès aux infrastructures critiques: Y compris les systèmes de contrôle industriels.
  • Eduroam et OpenRoaming: Consortiums Wi-Fi pour les réseaux éducatifs et publics.

Les utilisateurs finaux ne peuvent pas se protéger directement contre cette vulnérabilité ; La responsabilité incombe aux administrateurs système et aux opérateurs de réseau.

Puis-je détecter si cette attaque a été menée sur mon réseau ?

Oui, il est possible de détecter cette attaque, mais elle nécessite une journalisation et une analyse spécifiques :

  1. Enregistrements de journaux: Vous avez besoin de fichiers journaux détaillés pour les accès-rejets sur le serveur RADIUS et les accès-acceptations sur le client RADIUS.
  2. Attributs d’état proxy suspects: recherche les paquets Access-Accept avec des attributs Proxy-State qui contiennent des octets aléatoires dans les journaux client. Cela pourrait indiquer une attaque, puisque les clients finaux ne devraient pas recevoir de paquets avec des attributs Proxy-State.
  3. Comparaison des journaux: Recherchez le paquet de réponse Access-Reject correspondant dans les journaux du serveur RADIUS. Vérifie que la réponse du serveur diffère de la réponse reçue par le client et que les deux contiennent des valeurs Response Authenticator valides pour l’ID de demande et Request Authenticator.
  4. Vérification du hachage MD5: Si les deux paquets produisent le même hachage MD5 dans Response Authenticator, cela indique que la vulnérabilité a été exploitée.

Comment pouvons-nous atténuer cette attaque sur notre système ?

Pour atténuer l’attaque Blast-RADIUS, suivez ces contre-mesures recommandées :

Atténuation à court terme

  • Attributs Message-Authenticator: assurez-vous que les clients et les serveurs envoient et exigent toujours des attributs Message-Authenticator pour toutes les demandes et réponses. Pour les réponses Access-Accept ou Access-Reject, incluez Message-Authenticator comme premier attribut.

Atténuation à long terme

  • Chaînes cryptées: Utilisez RADIUS au sein d’un canal crypté et authentifié qui offre des garanties de sécurité cryptographiques modernes. L’IETF (Internet Engineering Task Force) travaille sur la standardisation de RADIUS sur (D)TLS (Datagram Transport Layer Security).

Étapes supplémentaires

  • Appliquer des correctifs: Vérifiez auprès des fournisseurs RADIUS les correctifs qui implémentent ces atténuations et appliquez-les.
  • Modifications de configuration– Configure les clients et les serveurs pour exiger les attributs Message-Authenticator sur toutes les communications.
  • Transition vers des protocoles modernes: prévoyez de migrer vers l’utilisation de RADIUS sur (D)TLS ou de mécanismes de transport sécurisé similaires à mesure qu’ils seront standardisés et pris en charge.

Pour un guide plus détaillé, consultez le livre blanc rédigé par Alan DeKok de FreeRADIUS et le section d’atténuation dans Blast-RADIUS.




#Une #attaque #BlastRadius #exploitant #une #faille #rayon #critique #pourrait #compromettre #votre #réseau
1721336718

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.