La technique tout juste découverte permet de lancer une attaque par déni de service en boucle entre deux applications réseau, bloquant indéfiniment l'accès légitime à leurs serveurs respectifs. Elle cible la couche application sur des systèmes utilisant le protocole UDP (User Datagram Protocol), un protocole vulnérable de la couche Transport Layer Security (TLS), qui, en raison de sa nature sans connexion, manque intrinsèquement de vérification des requêtes. « Les attaques DoS en boucle de la couche application reposent sur l'usurpation d'adresse IP et peuvent être déclenchées à partir d'un seul hôte capable d'usurper l'adresse IP », a déclaré le centre de recherche allemand sur la cybersécurité CISPA (Helmholtz Center for Information Security, CISPA) à l’origine de la découverte, dans un blog. « Ces attaques associent deux services réseau de telle sorte qu'ils continuent à répondre indéfiniment aux messages de l'un et de l'autre. La couche application est la couche conceptuelle la plus élevée d'un système de communication classique, qui comprend également, dans cet ordre, les couches physique, liaison de données, réseau, transport, session et présentation.

Un protocole plus rapide, mais moins sûr

Le protocole de couche de transport UDP est chargé de transporter des paquets de données sur des systèmes réseau qui communiquent à l'aide de protocoles de couche d'application. Spécifiquement conçu pour les transmissions sensibles au temps, comme la lecture de vidéos ou les recherches DNS, l’UDP fonctionne selon le principe de l'absence de connexion, c'est-à-dire qu’il peut transférer des données sans établir de connexion entre les systèmes concernés. La transmission plus rapide est parfois un compromis risqué, car la nature inhérente de l’UDP peut entraîner la perte de données en transit ou, dans ce cas, permettre à des attaquants de mener des attaques DDoS. La vulnérabilité inhérente à l'UDP est répertoriée sous la référence CVE-2024-2169. « Les implémentations du protocole d'application UDP sont vulnérables aux boucles de réseau », selon la base de données sur les vulnérabilités NVD (National Vulnerability Database) du NIST (National Institute of Standards and Technology). « Un attaquant non authentifié peut utiliser des paquets malveillants contre une implémentation vulnérable, ce qui peut entraîner un déni de service (DOS) et/ou une utilisation abusive des ressources ».

Les chercheurs du CISPA ont expliqué que la boucle d'attaque peut être initiée en envoyant un seul message d'erreur par usurpation d'adresse IP à l'un ou l'autre d'un couple de serveurs défectueux. « Les serveurs vulnérables continueraient alors à s'envoyer des messages d'erreur, ce qui mettrait à rude épreuve les deux serveurs et toute liaison réseau entre eux », ont écrit les chercheurs dans leur blog. « Une fois qu'un déclencheur est injecté et que la boucle est enclenchée, même les attaquants sont incapables d'arrêter l'attaque », selon le blog. La vulnérabilité affecte d’anciens protocoles comme Daytime, Time, Active Users, Echo, Chargen et QOTD, ainsi que des protocoles contemporains comme TFTP, DNS et NTP, de la couche application.

Le basculement en TCP peut aider

Même si, à ce jour, aucune exploitation connue de cette vulnérabilité n'a été signalée, la CISPA avertit qu’elle pourrait affecter près de 300 000 hôtes Internet, ainsi que les réseaux qu'ils exposent. « Pour autant, d’après ce que nous savons, ce type d'attaque n'a pas encore été mené sur le terrain. Il serait toutefois facile pour les attaquants d'exploiter cette vulnérabilité si aucune mesure n'était prise pour atténuer le risque », a déclaré Christian Rossow, l'un des chercheurs du CISPA à l'origine de la découverte, dans le blog. Bien que moins rapide que l'UDP, le protocole de contrôle de transmission TCP (Transmission Control Protocol) est un protocole de couche de transport plus fiable, qui établit une connexion entre des systèmes uniquement après une vérification automatisée appelée « handshake » entre les systèmes concernés. L'ajout d'une couche supplémentaire de validation des requêtes sur les transmissions UDP ou leur remplacement complet par des implémentations TCP peut contribuer à empêcher l'exploitation de cette vulnérabilité.