Une attaque DDoS de couche d’application est une tentative malveillante visant à saturer les application web en exploitant la couche 7 du modèle OSI. Elle cible des vulnérabilités spécifiques des applications afin de perturber la disponibilité des services.
Contrairement aux attaques au niveau de la couche réseau qui saturent l’infrastructure, les incidents au niveau de la couche d’application submergent des processus applicatifs spécifiques, mobilisant ainsi une puissance de calcul considérable. En imitant le trafic et les modèles légitimes des utilisateurs, ces attaques peuvent maximiser l’impact tout en nécessitant très peu de bande passante du hacker.
Les vecteurs les plus courants exploitent des vulnérabilités inhérentes aux applications ou des faiblesses dans les protocoles de niveau application comme HTTP et HTTPS. De telles attaques abusent souvent de processus gourmands en ressources, tels que les requêtes de base de données, les mécanismes d’authentification, ou les fonctionnalités de recherche, créant des charges de travail intenables qui perturbent les Opérations.
Attaque par déni de service distribué de la couche d’application vs. amplification DNS
Bien que les attaques par déni de service distribué et par amplification DNS partagent le même objectif de perturber les services, les méthodes exactes peuvent varier considérablement. Reconnaître ces différences est essentiel pour élaborer la bonne stratégie de défense. Comparons ces principaux types de déni de service distribué :
Mécanisme d’attaque : Les attaques de la couche d'application ciblent directement les ressources des applications web, comme les formulaires de recherche ou les portails d’authentification. En les inondant de fausses requêtes, les hackers consomment une capacité de calcul excessive, ce qui ralentit ou fait planter les applications. En revanche, l’amplification DNS exploite des serveurs DNS mal configurés pour obtenir une multiplication spectaculaire du trafic.
Consommation des ressources: avec les attaques de couche d'application, la consommation se concentre sur les ressources du serveur d’application, notamment la mémoire, le CPU, et les E/S disque pour la journalisation et l’accès aux données. L’amplification DNS submerge l’infrastructure réseau, comme les pare-feu et les Load Balancer, en augmentant le trafic via des serveurs DNS mal configurés. Alors que le trafic est amplifié de 50 - 100×, très peu de charge de travail atteint les serveur d’application.
Caractéristiques du trafic: les attaques par déni de service distribué d’application imitent les comportements normaux des utilisateurs, et comprennent de grands volumes de requêtes HTTP/HTTPS vers les points d’entrée de l’application. L’amplification DNS utilise des flux continus de trafic UDP non sollicité.
Ciblage du protocole: Les attaques d'application opèrent au niveau de la couche 7, en ciblant les ressources exposées sur le web. L’amplification DNS manipule des requêtes DNS basées sur UDP pour obtenir une amplification du trafic.
Complexité: les attaques de la couche d'application nécessitent davantage d’efforts pour être mises en place. Les hackers analysent les applications pour découvrir des vulnérabilités, en se concentrant sur les aspects qui peuvent être exploités pour perturber les Opérations. Les attaques DNS usurpent simplement des adresses, et s’appuient sur des serveurs intrinsèquement vulnérables. Un hacker peut lancer une attaque à volume élevé avec peu de préparation ou de connaissance de votre réseau ou de vos services.
Comment se produisent les attaques DDoS de la couche d’application
Les attaques par déni de service distribué de la couche d'application provoquent des perturbations au moyen d’exploits précis et ciblés, plutôt que par force brute. Au lieu d’inonder les réseaux, ces attaques propres aux applications créent des goulots d’étranglement en surchargeant les vulnérabilités à des points faibles clés. Voici une analyse détaillée du fonctionnement de ces attaques :
Submerge les points de terminaison de connexion: Les hacker bombardent les points de connexion de l’infrastructure, comme les proxy et les Load Balancer. En submergeant les sockets et les sessions avec davantage de requête que les application ne peuvent en traiter, les attaques consomment toutes les connexions disponibles, créant un effet de Déni de service pour les utilisateur légitimes.
Exploite les processus d’authentification: les contrôles de validation comme les CAPTCHAs, l’authentification multifacteur, ou les verrouillages de compte sont des cibles de choix. Les agresseurs soumettent continuellement des requêtes de connexion afin de submerger ces mécanismes, en déclenchant des restrictions de compte ou en consommant toutes les ressources du serveur d’authentification.
Manipule la complexité des requêtes API: les API ont des limites intégrées sur la complexité des appels afin de gérer la charge du serveur. Les attaques DDoS de couche d'application abusent de ces limites en maximisant les requêtes coûteuses. Par exemple, ils peuvent appeler des API de recommandation de produit avec un nombre excessif de paramètres non correspondants.
Imite les schémas de trafic légitime: pour éviter les défenses, les hackers imitent le comportement des clients ou des utilisateurs en espaçant correctement les requêtes et en utilisant des identifiants valides lorsque cela est possible. Le trafic ressemble à de véritables interactions, comme la navigation, la recherche ou l’envoi de formulaires. Cette attaque permet au trafic malveillant de mieux se fondre dans la masse que les attaques traditionnelles basées sur le volume.
Cible des vulnérabilités spécifiques aux applications: les auteurs effectuent des recherches et sondent les applications pour découvrir des faiblesses propres aux applications pouvant être exploitées. Par exemple, ils peuvent constater que les requêtes de recherche avec des paramètres génériques consomment des ressources excessives.
Consomme des ressources de base de données : Les bases de données ont souvent des exigences de traitement importantes. Les attaques utilisent des requêtes coûteuses, le filtrage de recherche, et des jointures de base de données pour créer une charge de travail écrasante, entraînant des retards et perturbant potentiellement la connexion entre l’application et ses données.
Perturbe la gestion des sessions: les applications web suivent les sessions utilisateur pour maintenir l’état. Le processus est gourmand en ressources, car il implique souvent l’allocation de mémoire et la gestion des cookies. Les hackers initient des milliers de fausses sessions et des expirations rapides afin d’épuiser les ressources du serveur utilisées pour suivre l’état de l’utilisateur.
9 façons de se défendre contre les attaques DDoS de couche d'application
Les attaque de couche d'application devenant de plus en plus sophistiquées, vous avez besoin d’une stratégie de défense à multiples facettes. Cela implique d’utiliser des mesures proactives pour renforcer l’infrastructure, et des techniques réactives pour détecter et atténuer les attaque en cours. Explorons quelques mécanismes clés pour se protéger contre ces attaques :
1. Mettre en place des mécanismes de vérification via JavaScript
L’ajout de tests JavaScript permet de distinguer efficacement les bots des utilisateurs légitimes. Ces prompts analysent le comportement des visiteurs pour détecter les indicateurs d’automatisation. Si une automatisation est détectée, des tests de vérification supplémentaires seront activés pour confirmer la légitimité avant d’accorder davantage d’accès. Testez rigoureusement ces systèmes pour éviter de nuire aux clients légitimes.
2. Déployer des pare-feu d’applications web de nouvelle génération (WAF)
Les WAF de nouvelle génération utilisent des ensembles de règles spécifiques à chaque application pour identifier et bloquer le trafic malveillant. Lorsqu’ils sont correctement configurés, les WAF peuvent signaler des anomalies concernant la complexité des requêtes, la géolocalisation, la gestion des sessions, la taille des données saisies, etc. Envisagez d’utiliser des WAF de nouvelle génération basés sur le cloud afin de tirer parti des informations partagées et de détecter plus rapidement les attaques.
3. Utiliser le filtrage par réputation IP
Les bases de données de réputation IP contiennent des listes actualisées d’adresses IP associées à des botnets et à des logiciels malveillants. Les applications Web peuvent bloquer automatiquement le trafic provenant de sources malveillantes connues en consultant ces bases de données. Veillez à ce que la base de données soit régulièrement mise à jour, car les adresses IP des botnets changent rapidement.
4. Mettre en place une limitation du débit au niveau de l’application
La limitation du débit impose des seuils pour les volumes de trafic et la complexité des requêtes tout en bloquant les contrevenants. Par exemple, vous pouvez définir des limites sur les appels d’API par IP, les sessions simultanées par utilisateur, ou les lectures de base de données par minute. Des limites granulaires permettent de faire face aux pics soudains tout en garantissant les accès légitimes.
5. Créer une vérification CAPTCHA intelligente
Les CAPTCHA Standard sont limités dans leurs capacités de détection de bot. Les CAPTCHA intelligents, alimentés par l’apprentissage automatique, peuvent identifier plus précisément les outils automatisés en analysant les mouvements de la souris, les schémas de saisie, et plus encore. Comme les hackers changent régulièrement de tactique, vous devez entraîner en continu votre système CAPTCHA à l’aide des dernières données sur les comportement des bots.
6. Configurer les contrôles d’intégrité du navigateur
Analysez le trafic entrant afin de détecter toute utilisation systématique de l’empreinte numérique des navigateurs. Les requêtes dépourvues de caractéristiques légitimes de navigateur peuvent faire l’objet d’une vérification supplémentaire voire même bloquées complètement. Les contrôles d’intégrité du navigateur permettent de s’assurer que le trafic provient de sources authentiques.
7. Utiliser l’analyse du trafic par machine learning
Les techniques de machine learning (apprentissage automatique) permettent de créer des modèles précis des schémas de trafic normaux et anormaux. L’entraînement continue de ces systèmes sur des données mises à jour améliore la précision de la détection. Un réentraînement fréquent permet de garantir que les modèles s’adaptent à l’évolution des tendances de trafic.
8. Mettre en œuvre la vérification des requêtes par jeton
Les clés tokenisées avec des délais d’expiration stricts permettent de vérifier que chaque appel d’API provient bien de votre front-end légitime. Les attaques visant à contourner le front-end sont bloquées, car elles ne disposent pas de jetons valides. Les jetons doivent correspondre aux informations de session afin d’empêcher les attaques par rejeu et les requêtes non autorisées.
9. Utiliser la segmentation adaptative du trafic
La segmentation du trafic en fonction du profil de risque vous permet d’isoler les flux suspects en vue d’une analyse plus approfondie, tout en préservant les ressources applicatives pour les utilisateurs légitimes. Mettez régulièrement à jour vos modèles de risque afin d’en garantir la précision et de refléter les dernières informations sur les menaces.
Protégez votre entreprise avec la Protection DDoS
Les hackers exploitant de plus en plus les vulnérabilités de la logique métier de la couche 7, vous devez mettre en œuvre toute une série de stratégies de défense adaptatives. Aucune solution ne permet à elle seule d’assurer une protection complète, mais la combinaison de techniques d’atténuation proactives et réactives en périphérie permet de contrer efficacement les attaques application avant qu’elles ne submergent l’infrastructure. Les capacités intelligentes comme le machine learning et l’analyse du comportement sont bénéfiques pour faire face à la sophistication croissante des botnets malveillants et aux services stressants.
Les services de Protection DDoS de Fastly offrent une approche à la fois puissante et flexible pour assurer la protection de vos propriétés web et de vos API. Soutenue par un edge network mondial, la solution offre une visibilité approfondie sur le trafic, combinée à des capacités rapides de détection et d’atténuation des menaces. Voici comment cette plateforme aide votre entreprise à garder une longueur d’avance sur ces menaces :
Atténuation automatique des attaques : Fastly utilise des techniques proactives pour identifier et neutraliser automatiquement les attaques DDoS sans intervention manuelle. Les menaces sont traitées immédiatement, ce qui permet de limiter au maximum les perturbations.
Résilience renforcée : grâce à la solution de Fastly, les applications et les API conservent des performances et une disponibilité constantes, même en cas d’attaques à fort volume. Cette résilience garantit une expérience client rapide pour le trafic légitime.
Détection dynamique et identification adaptative : Fastly surveille en continu le trafic entrant, utilisant une analytique avancée pour détecter instantanément les schémas d’attaque anormaux. L’identification adaptative garantit que la solution reste efficace contre les menaces évolutives.
Aucun frais lié aux attaques : contrairement à de nombreux fournisseurs, Fastly ne facture pas le trafic généré par les attaques. Vous ne payez que pour les requêtes légitimes, ce qui vous permet de maintenir des coûts opérationnels prévisibles et de réduire la pression financière en cas d’attaques prolongées.
Next-Gen WAF intégré : le Next-Gen WAF de Fastly complète la protection DDoS en identifiant et en bloquant les requêtes web malveillantes.
Atténuation quasi instantanée : la plateforme réduit l’impact des attaques sur les utilisateurs finaux en atténuant les menaces en quelques secondes.
Déploiement polyvalent : Fastly protège les applications de toutes tailles grâce à des défenses rapides et évolutives.
Découvrez comment Fastly peut protéger vos applications, API et microservices, garantissant ainsi la sécurité et la résilience de votre entreprise face aux menaces en constante évolution.