Qu’est-ce que la limitation de débit pour Web Application Firewall sur Application Gateway?
La limitation de débit pour Web Application Firewall sur Application Gateway vous permet de détecter et de bloquer des niveaux anormalement élevés de trafic destinés à votre application. En utilisant la limitation de débit sur Application Gateway WAF_v2, vous pouvez atténuer de nombreux types d’attaques par déni de service, vous protéger contre les clients qui ont été accidentellement mal configurés pour envoyer de grands volumes de requêtes dans un laps de temps réduit ou contrôler les taux de trafic vers votre site à partir de zones géographiques spécifiques.
Stratégies de limitation de débit
La limitation de débit est configurée à l’aide de règles WAF personnalisées dans une stratégie.
Remarque
Les règles de limitation du débit sont uniquement prises en charge sur les pare-feu d’applications web qui exécutent le dernier moteur WAF. Pour vous assurer que vous utilisez le moteur le plus récent, sélectionnez CRS 3.2 comme ensemble de règles par défaut.
Lorsque vous configurez une règle de limite de débit, vous devez spécifier le seuil : le nombre de requêtes autorisées au cours de la période spécifiée. La limitation de débit sur Application Gateway WAF_v2 utilise un algorithme de fenêtre glissante pour déterminer quand le trafic a dépassé le seuil et doit être ignoré. Pendant la première fenêtre où le seuil de la règle est dépassé, tout trafic correspondant à la règle de limite de débit sera ignoré. À partir de la deuxième fenêtre, le trafic jusqu’au seuil dans la fenêtre configurée est autorisé, ce qui produit un effet de limitation.
Vous devez également spécifier une condition de correspondance, qui indique au WAF quand activer la limite de débit. Vous pouvez configurer plusieurs règles de limite de débit qui correspondent à différentes variables et chemins d’accès au sein de votre stratégie.
Application Gateway WAF_v2 introduit également un paramètre GroupByUserSession, qui doit être configuré. GroupByUserSession spécifie comment les requêtes sont regroupées et comptabilisées pour une règle de limite de débit correspondante.
Les trois GroupByVariables suivantes sont actuellement disponibles :
- ClientAddr : il s’agit du paramètre par défaut et cela signifie que chaque seuil de limite de débit et chaque atténuation s’appliquent indépendamment à chaque adresse IP source unique.
- GeoLocation : le trafic est regroupé par zone géographique en fonction d’une Geo-Match sur l’adresse IP du client. Par conséquent, pour une règle de limite de débit, le trafic provenant d’une même zone géographique est regroupé.
- None : tout le trafic est regroupé et comptabilisé par rapport au seuil de la règle de limite de débit. Lorsque le seuil est dépassé, l’action se déclenche sur tout le trafic correspondant à la règle et ne conserve pas de compteurs indépendants pour chaque adresse IP cliente ou zone géographique. Il est recommandé d’utiliser None avec des conditions de correspondance spécifiques comme une page de connexion ou une liste d’agents utilisateur suspects.
Détails de la limitation de débit
Les seuils de limite de débit configurés sont comptabilisés et suivis indépendamment pour chaque point de terminaison auquel la stratégie du Web Application Firewall est attachée. Par exemple, une stratégie WAF unique attachée à cinq écouteurs différents maintient des compteurs indépendants et l’application des seuils pour chacun des écouteurs.
Les seuils de limite de débit ne sont pas toujours appliqués exactement comme définis. Ils ne doivent donc pas être utilisés pour le contrôle précis du trafic d’une application. Ils sont plutôt recommandés pour atténuer les débits de trafic anormaux et maintenir la disponibilité des applications.
L’algorithme de fenêtre glissante bloque tout le trafic correspondant pour la première fenêtre dans laquelle le seuil est dépassé, puis limite le trafic dans les fenêtres à venir. Soyez prudent lorsque vous définissez des seuils pour configurer des règles de correspondance large avec GeoLocation ou None en tant que GroupByVariables. Des seuils mal configurés peuvent entraîner des pannes fréquentes pour le trafic correspondant.