BLOG | NGINX

La protection contre le déni de service de NGINX App Protect bloque les attaques DoS au niveau des applications

NGINX-Partie-de-F5-horiz-black-type-RGB
Miniature de Yaniv Sazman
Yaniv Sazman
Publié le 06 juillet 2021

Si la transformation numérique accélère le potentiel des entreprises, elle élargit malheureusement également le paysage des menaces. Alors que les équipes de sécurité s'efforcent de s'adapter à une portée et à des responsabilités croissantes, les attaquants en profitent et deviennent plus sophistiqués que jamais dans la manière dont ils exploitent les applications à des fins financières. Par rapport aux attaques par déni de service (DoS) traditionnelles au niveau du réseau, les attaques DoS au niveau des applications ( couche 7 ) augmentent fortement, en grande partie parce qu'elles peuvent contourner les défenses traditionnelles qui ne sont pas conçues pour les architectures d'applications modernes.

Du point de vue des attaquants, les attaques DoS de couche 7 présentent deux caractéristiques intéressantes : elles nécessitent très peu de ressources pour créer des perturbations significatives et elles sont difficiles à détecter. Générées à l’aide d’outils sophistiqués et de requêtes précisément ciblées, ces attaques perturbent les serveurs d’applications et les API en les rendant incapables de traiter les requêtes légitimes. Lorsqu'un serveur est bombardé de requêtes plus nombreuses qu'il ne peut en traiter, il abandonne les requêtes légitimes, ne répond plus ou tombe même en panne.

Les solutions traditionnelles d’atténuation des attaques DoS ne sont pas efficaces pour les applications modernes. Ils offrent une sécurité statique basée sur des règles et nécessitent une maintenance continue pour suivre le rythme des changements et des mises à jour dans le paysage des applications modernes.

Présentation de NGINX App Protect DoS

NGINX App Protect Denial of Service (DoS) est un nouveau module dynamique léger pour NGINX Plus, conçu pour protéger les applications modernes contre les attaques DoS d'applications les plus sophistiquées. NGINX App Protect DoS atténue les attaques visant à perturber et à nuire aux applications, garantissant des performances et une collecte de revenus continues, et préservant la fidélité des clients et la marque dans un monde numérique hautement concurrentiel.

NGINX App Protect DoS peut être déployé à proximité d'applications et de microservices sur n'importe quelle plate-forme, architecture ou environnement, y compris les clusters Kubernetes. Il évolue avec l'application et maintient une efficacité de sécurité élevée à tout moment.

DoS de NGINX App Protect en action

Cas d'utilisation de déploiement

NGINX App Protect DoS peut être déployé dans divers emplacements pour protéger les services d'application :

  • Edge – Équilibreurs de charge et proxys externes
  • Contrôleur d'entrée – Point d'entrée dans Kubernetes
  • Proxy par service – Niveau proxy de service intérieur
  • Proxy par pod – Proxy intégré dans le pod
  • Passerelle API – Point d’entrée dans les microservices

Types d'attaques atténuées

NGINX App Protect DoS introduit une protection contre plusieurs types d'attaques sophistiquées :

  • Attaques par inondation GET et POST – (HTTP et HTTPS) L'attaquant tente de submerger le serveur ou l'API avec un grand nombre de requêtes, le rendant incapable de répondre aux utilisateurs réels.

  • Attaques « lentes » – (HTTP et HTTPS) Les attaques « lentes et lentes » monopolisent les ressources du serveur, n'en laissant aucune disponible pour répondre aux demandes des utilisateurs réels. Deux facteurs rendent leur défense difficile :

    • Contrairement aux attaques DDoS réseau, elles n’utilisent pas une bande passante importante, ce qui les rend difficiles à distinguer du trafic normal.
    • Leur lancement ne nécessite pas beaucoup de ressources, ce qui permet d’envoyer des milliers de requêtes à partir d’un seul ordinateur à l’aide d’outils d’automatisation sophistiqués.

    Il existe trois principaux types d’attaques lentes :

    • Slowloris – L’attaquant se connecte au serveur et envoie des en-têtes de requête partiels à un rythme lent. Le serveur maintient la connexion ouverte en attendant le reste des en-têtes, épuisant ainsi le pool de connexions disponibles pour les utilisateurs réels.
    • Lecture lente – L’attaquant envoie une requête HTTP bien formée, mais lit ensuite la réponse à une vitesse lente, voire inexistante. Cela a pour effet cumulatif de consommer les ressources du serveur, empêchant ainsi les requêtes légitimes de passer.
    • POST lent – L’attaquant envoie des en-têtes HTTP POST légitimes au serveur, accompagnés d’une spécification correcte de la taille du corps du message qui suivra. Il envoie ensuite le corps du message très lentement. Parce que le message semble valide, le serveur maintient la connexion ouverte en attendant l’arrivée du corps complet. Un grand nombre d’attaques POST lentes épuisent le pool de connexions disponibles pour les utilisateurs réels.
  • Variantes distribuées des attaques précédentes – Évidemment, l’enrôlement de plusieurs ordinateurs facilite l’envoi d’un plus grand nombre d’attaques simultanées. De plus, le volume de trafic de chaque ordinateur peut être relativement faible, ce qui le fait ressembler à un utilisateur normal. Les ordinateurs peuvent également quitter le pool d’attaque, puis le rejoindre à nouveau, ce qui met l’ensemble des adresses IP sources en constante évolution. Ces caractéristiques du trafic rendent les techniques d’atténuation traditionnelles telles que la limitation du débit et le blocage géographique moins efficaces.

  • Attaque Challenge Collapsar/URI aléatoires – Dans une attaque Challenge Collapsar (CC) , l'attaquant envoie des requêtes fréquentes qui sont normales, sauf que les URI demandées nécessitent l'exécution d'algorithmes ou d'opérations de base de données complexes, et donc chronophages, qui peuvent épuiser les ressources du serveur ciblé. L'attaquant peut également randomiser les URI et d'autres paramètres HTTP de manière à contrecarrer les outils d'atténuation existants tels que les règles statiques. NGINX App Protect DoS s’appuie plutôt sur des algorithmes d’apprentissage automatique avancés qui augmentent considérablement l’efficacité et réduisent les faux positifs.

  • Se cacher derrière NAT – L’attaquant utilise le chiffrement ou la traduction d’adresses réseau (NAT) pour échapper à la détection. Tenter de détecter les attaques en suivant uniquement l’adresse IP source est inefficace car cela traite tous les utilisateurs NAT comme des attaquants même si un seul utilisateur attaque.

    NGINX App Protect DoS utilise l'empreinte digitale pour IPv4 pour détecter avec précision les mauvais acteurs derrière NAT. Étant donné que la plupart du trafic est chiffré à l’aide de SSL/TLS, il est possible d’étendre la clé qui identifie un acteur à partir d’une simple adresse IP jusqu’à la combinaison de l’adresse IP et de l’empreinte digitale TLS (l’empreinte digitale étant basée sur le message Hello TLS).

  • Attaques SSL/TLS ciblées – L’attaquant abuse du protocole de négociation SSL/TLS. Une approche populaire consiste à envoyer des données indésirables au serveur SSL/TLS cible. Il est tout aussi coûteux en termes de calcul de traiter un message invalide qu'un message légitime, mais sans résultat utile. La plupart des pare-feu ne sont d’aucune aide dans ce cas, car ils ne peuvent pas faire la distinction entre les paquets de négociation SSL/TLS valides et non valides, et la mise en œuvre du décryptage sur un pare-feu est prohibitive.

    NGINX App Protect DoS utilise un mécanisme de signatures SSL/TLS pour fournir une détection et une atténuation basées sur les anomalies en fonction du message CLIENT HELLO, qui n'est pas chiffré et transmis au début du processus de négociation SSL/TLS, éliminant ainsi le coût élevé du déchiffrement. De plus, l'utilisation de signatures SSL/TLS avec le mécanisme de surveillance de l'état du serveur permet une protection et une atténuation des attaques DoS sans terminaison SSL/TLS.

Résumé

Il est de plus en plus courant que les attaques DoS ciblent les applications plutôt que le réseau. Étant donné que bon nombre de ces attaques DoS de couche 7 ressemblent à du trafic légitime, les défenses WAF traditionnelles ne peuvent pas les détecter efficacement.

De plus, les attaquants continuent d’exploiter les nouvelles technologies telles que l’apprentissage automatique et l’IA pour lancer des attaques DoS de couche 7, rendant les règles simples et les signatures statiques moins efficaces. L’atténuation des attaques DoS de couche 7 doit également évoluer, et NGINX App Protect DoS apporte la bonne technologie pour supporter des défenses adaptatives et dynamiques.

Si vous souhaitez en savoir plus sur la manière de garantir la protection DoS, consultez notre présentation de solution . Voir également ces blogs connexes :

Essayez NGINX App Protect DoS par vous-même – démarrez un essai gratuit de 30 jours dès aujourd'hui ou contactez-nous pour discuter de vos cas d'utilisation .


« Cet article de blog peut faire référence à des produits qui ne sont plus disponibles et/ou qui ne sont plus pris en charge. Pour obtenir les informations les plus récentes sur les produits et solutions F5 NGINX disponibles, explorez notre famille de produits NGINX . NGINX fait désormais partie de F5. Tous les liens NGINX.com précédents redirigeront vers un contenu NGINX similaire sur F5.com."