Configurez des règles de liste d'autorisation pour permettre à certaines requêtes de contourner la détection par certains ou tous les modules de protection, tels que les règles de protection Web Core, la liste noire d'adresses IP, les règles personnalisées et la protection contre les analyses.
Concepts clés
Liste d'autorisation : Fonctionnalité de Web Application Firewall (WAF) qui permet à certaines requêtes de contourner la détection par certains ou tous les modules de protection. Vous devez créer un modèle de protection de liste d'autorisation pour activer ce module. Le système vous permet de créer plusieurs modèles de protection de liste d'autorisation.
-
Modèle de protection de liste d'autorisation : Ensemble de règles de liste d'autorisation qui définit le contenu et la portée des règles. Il se compose de trois parties : type de modèle, règle de liste d'autorisation et objets applicables.
-
Type de modèle : Sélectionnez un type de modèle lors de la création. Le type ne peut pas être modifié ultérieurement. Deux types de modèles sont disponibles :
Type de modèle
Description
Cas d'utilisation
Modèle de protection par défaut
Après l'achat de WAF, le système crée automatiquement un modèle de protection par défaut qui ne contient aucune règle.
Par défaut, le modèle s'applique à tous les objets protégés et groupes d'objets protégés existants et futurs.
Excluez manuellement des objets en définissant leur statut sur « Non appliqué ».
Vous ne pouvez créer qu'un seul modèle de protection par défaut pour le module de liste d'autorisation.
Déployez des règles générales à appliquer globalement.
Modèle de protection personnalisé
Attribuez manuellement le modèle à des objets protégés ou des groupes d'objets protégés spécifiques.
Déployez des règles granulaires pour des services spécifiques, tels que les API de connexion ou de paiement.
-
Règle de liste d'autorisation : Définit la logique de détection spécifique et les modules contournés. Un modèle peut contenir plusieurs règles, et chaque règle se compose de deux parties :
Condition de correspondance : Définit les caractéristiques de la requête à faire correspondre, telles que le chemin de la requête ou l'adresse IP du client.
Modules contournés : Définit quels modules de protection sont contournés par les requêtes qui satisfont à la condition de correspondance.
-
Objets applicables : Spécifie les cibles du modèle. En configurant les objets applicables, vous appliquez les règles de liste d'autorisation aux objets protégés ou groupes d'objets protégés spécifiés. Un objet protégé ou un groupe d'objets protégés peut être associé à plusieurs modèles de protection de liste d'autorisation.
Objet protégé : Pour chaque nom de domaine ou instance de service cloud ajouté à WAF, le système crée automatiquement un objet protégé.
Groupe d'objets protégés : Ajoutez plusieurs objets protégés à un groupe d'objets protégés pour une gestion centralisée.
-
Procédure
Avant de commencer, assurez-vous que des objets protégés existent, ce qui signifie que vous avez ajouté votre service web à WAF. Si vous n'avez pas ajouté votre service, consultez Ajouter un service à WAF.
Connectez-vous à la console Web Application Firewall 3.0. Dans la barre de navigation supérieure, sélectionnez le groupe de ressources et la région (Chinese Mainland ou Outside Chinese Mainland) de votre instance WAF. Dans le volet de navigation de gauche, choisissez .
Étape 1 : Configurer le type de modèle
Après l'achat de WAF, le système crée un modèle de protection par défaut nommé user_default sans règles. Si vous n'avez pas d'exigences métier spécifiques, telles que la configuration de plusieurs modèles ou la spécification d'objets applicables, utilisez directement le modèle user_default. Cliquez sur Edit et passez à l'Étape 2.
Sur la page Whitelist, cliquez sur Create Template. Dans le panneau Create Template - Whitelist, effectuez les configurations suivantes.
Template Name : Saisissez un nom pour le modèle.
-
Save as Default Template : Vous ne pouvez définir qu'un seul modèle par défaut pour le module de liste d'autorisation, et cela uniquement lors de la création d'un nouveau modèle.
Yes : Vous n'avez pas besoin de définir Apply To. Lorsque le modèle est créé, il s'applique par défaut à tous les objets protégés et groupes d'objets. Les nouveaux objets sont également inclus automatiquement. Excluez manuellement des objets spécifiques en définissant leur statut sur « Non appliqué ».
No : Définissez Apply To en spécifiant manuellement les objets protégés ou les groupes d'objets.
Étape 2 : Ajouter une règle de liste d'autorisation
Dans la section Rule Configuration, cliquez sur Create Rule, configurez les paramètres suivants et cliquez sur OK. Lors de la configuration des règles de liste d'autorisation, suivez le principe de liste d'autorisation minimale : contournez uniquement les modules de protection qui provoquent des faux positifs et définissez des conditions de correspondance très spécifiques pour vos interfaces de service afin d'éviter de créer des exceptions trop larges.
Rule Name : Saisissez un nom pour la règle.
-
Match Condition : Définissez les caractéristiques de la requête à faire correspondre. Cliquez sur Add Condition pour ajouter une condition. Chaque condition se compose d'un Match Field, d'un Logical Operator et d'un Match Content. Le tableau suivant fournit des exemples de configuration.
RemarqueSi une règle contient plusieurs conditions, une requête doit satisfaire à toutes (relation logique ET) pour correspondre à la règle. Pour plus d'informations sur les champs de correspondance et les opérateurs logiques, consultez Conditions de correspondance.
Match Field
Logical Operator
Match Content
Description
URI Path
Contains
/login.phpLa règle correspond si le chemin de la requête contient
/login.php.IP
Belongs to
192.1.XX.XXLa règle correspond si l'adresse IP du client est
192.1.XX.XX.Si vous utilisez une condition IP pour autoriser des requêtes mais souhaitez que la règle s'applique uniquement à un nom de domaine spécifique, ajoutez également une condition Host pour ce nom de domaine. Étant donné que plusieurs conditions de correspondance sont jointes par un ET logique, seules les requêtes qui satisfont aux conditions IP et Host correspondront à la règle.
-
Bypassed Modules : Spécifiez les modules de protection que les requêtes satisfaisant à la Match Condition peuvent contourner. Les options suivantes sont disponibles :
Disable All Detections : Utilisez cette option pour autoriser le trafic auquel vous faites entièrement confiance.
-
Custom : Sélectionnez des modules de protection spécifiques à contourner.
Tous
Les requêtes correspondantes contournent tous les modules de protection et sont envoyées directement au serveur d'origine.
Personnalisé
Si vous sélectionnez cette option, choisissez les modules de protection à contourner dans la liste suivante.
-
Core Protection Rule
Toutes les règles
Contourne la détection pour toutes les Core Protection Rule.
ID de règles spécifiques
Contourne la détection pour les règles avec des ID spécifiques. Appuyez sur Entrée après avoir saisi chaque ID de règle.
Vous pouvez saisir jusqu'à 50 ID de règles, y compris ceux pour la protection des événements majeurs.
Modules spécifiques
Contourne la détection pour des types de règles spécifiques. Sélectionnez les types de règles selon vos besoins.
Champs spécifiques
Spécifiez les champs que la règle de protection Web Core ignorera. Vous pouvez ajouter jusqu'à 10 champs.
Type de champ
Description
URI
Vous pouvez configurer tous les champs ou des champs spécifiques.
Lors de la configuration d'un champ spécifique, vous pouvez définir une URL ou un chemin d'URL.
Header
Vous pouvez configurer tous les champs ou des champs spécifiques.
Si vous saisissez
qcomme champ spécifique, le contenu effectif réel estheader.q.
Query string parameter
Vous pouvez configurer tous les champs ou des champs spécifiques.
Si vous saisissez
qcomme champ spécifique, le contenu effectif réel estqueryarg.q.
Cookie name
Vous pouvez configurer tous les champs ou des champs spécifiques.
Si vous saisissez
qcomme champ spécifique, le contenu effectif réel estcookie.q.
Body
Vous ne pouvez configurer que tous les champs.
Par exemple, sur l'API de recherche d'un site e-commerce, une requête utilisateur contenant des caractères spéciaux comme
&ou"pourrait être bloquée comme une attaque suspecte par la règle de protection Web Core, ce qui entraînerait l'échec de la recherche.GET /search?q=phoneDans cet exemple, définissez Field Type sur Query String Parameter, Scope sur Specified Fields et saisissez
qpour Specified Fields. Cela permet de mettre en liste blanche le champ de requête sans désactiver complètement la règle de protection Web Core. -
IP Address Blacklist
Toutes les règles
Contourne la détection pour toutes les règles du module IP Address Blacklist.
ID de règles spécifiques
Contourne la détection pour les règles avec des ID spécifiques. Appuyez sur Entrée après avoir saisi chaque ID de règle. Vous pouvez saisir jusqu'à 50 ID de règles.
-
Custom Rule
Toutes les règles
Contourne la détection pour toutes les règles du module Custom Rule.
ID de règles spécifiques
Contourne la détection pour les règles avec des ID spécifiques. Appuyez sur Entrée après avoir saisi chaque ID de règle. Vous pouvez saisir jusqu'à 50 ID de règles.
Scanning Protection : Contourne la détection pour toutes les règles du module Scanning Protection.
HTTP Flood Protection : Contourne la détection pour toutes les règles du module HTTP Flood Protection.
Geo-blocking : Contourne la détection pour toutes les règles du module Geo-blocking.
Website Tamper-proofing : Contourne la détection pour toutes les règles du module Website Tamper-proofing .
Data Leakage Prevention : Contourne la détection pour toutes les règles du module Data Leakage Prevention.
Protection for Critical Events : Contourne la détection pour toutes les règles du module Protection for Critical Events.
Peak Traffic Throttling : Contourne la détection pour toutes les règles du module Peak Traffic Throttling.
AI Application Protection : Contourne la détection pour toutes les règles du module AI Application Protection.
-
Bot Management
Toutes les règles
Contourne la détection pour toutes les règles du module Bot Management.
ID de règles spécifiques
Contourne la détection pour les règles avec des ID spécifiques. Appuyez sur Entrée après avoir saisi chaque ID de règle. Vous pouvez saisir jusqu'à 50 ID de règles.
Règles spécifiques
Contourne la détection pour des règles spécifiques configurées par nom de règle. Cela prend en charge les règles de Bot Management for Web et de Bot Management for App. Si vous utilisez l'ancien Bot Management ou si vous n'avez pas configuré la protection web/app correspondante, ce paramètre ne prendra pas effet.
-
Étape 3 : Définir les objets applicables
Dans la zone Apply To, sélectionnez les objets protégés et groupes d'objets protégés auxquels appliquer le modèle.
La manière dont le modèle est appliqué dépend de la configuration de l'Étape 1 :
Pour un modèle par défaut : Vous n'avez pas besoin de définir d'objets applicables. Lorsque le modèle est créé, il s'applique par défaut à tous les objets protégés et groupes d'objets. Les nouveaux objets sont également inclus automatiquement. Excluez manuellement des objets spécifiques en définissant leur statut sur « Non appliqué ».
Pour un modèle personnalisé : Spécifiez manuellement les objets protégés et groupes d'objets protégés auxquels le modèle s'applique.
Ajustez manuellement le statut d'application des objets protégés ou des groupes d'objets pendant et après la création du modèle.
Maintenance
Gérer les modèles de liste d'autorisation
Les modèles de protection de liste d'autorisation nouvellement créés sont activés par défaut. Vous pouvez effectuer les opérations suivantes dans la liste des modèles :
Consultez le nombre de Protected Object/Group associés à un modèle.
Activez ou désactivez un modèle à l'aide du Status.
Create Rule pour ce modèle.
Edit, Delete ou Copy un modèle.
Cliquez sur l'icône
à gauche du nom d'un modèle pour afficher les règles qu'il contient.
Gérer les règles de liste d'autorisation
Les règles nouvellement créées sont activées par défaut. Vous pouvez effectuer les opérations suivantes dans la liste des règles :
Consultez des informations telles que l'Rule ID et la Rule Condition.
Activez ou désactivez une règle à l'aide du commutateur Status.
Edit ou Delete une règle.
Quotas et limites
Lorsque le Match Field est défini sur IP, seules les adresses IP publiques sont prises en charge. Les adresses IP privées ne sont pas autorisées.
Vous ne pouvez pas utiliser la console WAF pour exporter la liste complète des adresses IP de liste d'autorisation configurées ni exporter en masse les règles de liste d'autorisation.
FAQ
Pourquoi ma règle de liste d'autorisation ne fonctionne-t-elle pas ? Pourquoi certaines requêtes sont-elles toujours bloquées après la configuration ?
Si une règle ne fonctionne pas comme prévu, vérifiez les éléments suivants dans l'ordre :
Statut du modèle : Confirmez que le Status du modèle et le Status de la règle sont tous deux activés.
Objets protégés : Sur la page Edit, dans la zone Apply To, utilisez les boutons de filtre Effective et Ineffective pour confirmer que l'objet protégé est correctement associé au modèle.
-
Configuration de la règle :
Conditions de correspondance : Assurez-vous que les caractéristiques de la requête correspondent précisément aux conditions de correspondance définies dans la règle de liste d'autorisation.
-
Bypassed Modules : Une règle de liste d'autorisation contourne la détection uniquement pour les modules sélectionnés. Confirmez que le module de protection qui a bloqué la requête est correctement sélectionné dans Bypassed Modules.
Exemple : Si le journal de blocage indique qu'une requête a été bloquée par Bot Management, une règle de liste d'autorisation configurée pour contourner uniquement Custom Rules ou Web Core Protection Rules ne fonctionnera pas. Dans ce cas, dans Bypassed Modules, sélectionnez Custom > Bot Management. Ensuite, sélectionnez All Rules, Specific Rule ID ou Specific Rule selon vos besoins.
Configuration du proxy de couche 7 : Si un proxy de couche 7, tel qu'un CDN, est déployé devant WAF, confirmez que l'option Is a Layer 7 proxy such as Anti-DDoS Proxy or CDN deployed in front of WAF est définie sur Yes. Une configuration incorrecte empêche WAF d'obtenir l'adresse IP réelle du client. Cela entraîne l'échec des règles de liste d'autorisation basées sur l'IP. Pour plus d'informations, consultez Informations sur le client réel.
Qu'est-ce que le modèle « AutoTemplate » ?
WAF crée automatiquement un modèle de protection de liste d'autorisation nommé AutoTemplate et y ajoute une règle de liste d'autorisation si l'un des événements suivants se produit :
Le moteur de mise en liste blanche intelligente pour les règles de protection Web Core est activé et identifie un faux positif potentiel via l'analyse des journaux. Pour plus d'informations, consultez le moteur de mise en liste blanche intelligente.
Vous marquez un événement détecté par le module web core protection rule ou bot management comme Suppress False Positive dans les rapports de sécurité. Pour plus d'informations, consultez les rapports de sécurité.
Dois-je utiliser le module de liste d'autorisation pour restreindre l'accès au domaine WAF par IP ?
Non. Le module Whitelist décrit ici est conçu pour contourner tous ou certains modules de protection pour les requêtes qui correspondent à des critères spécifiés. Pour implémenter un contrôle d'accès basé sur l'IP, veuillez utiliser le module Custom Rule. Pour des exemples détaillés, consultez Restreindre l'accès au panneau d'administration à des adresses IP spécifiques.
Y a-t-il des frais pour les fonctionnalités de liste d'autorisation et de suppression des faux positifs ?
La fonctionnalité de liste d'autorisation n'entraîne pas de frais supplémentaires car son coût est inclus dans les frais de trafic de base.
La fonctionnalité Suppress False Positive dans les rapports de sécurité ajoute des règles au modèle de liste d'autorisation AutoTemplate. Ces règles n'entraînent pas de frais supplémentaires.
Que faire si WAF bloque le trafic de service légitime ?
Si WAF bloque le trafic de service légitime, suivez ces étapes pour ajouter le trafic à la liste d'autorisation.
-
Dans le volet de navigation de gauche, choisissez .
RemarqueSi vous avez activé Simple Log Service, vous pouvez également accéder à pour afficher les journaux de requêtes complets.
Filtrez par Time, Protected Object (le nom de domaine accédé ou l'instance de produit cloud) et Rule Action pour trouver la requête bloquée spécifique.
-
Si vous confirmez qu'une requête légitime a été bloquée, dans la zone Logs en bas de la page, cliquez sur Suppress False Positive dans la colonne Actions pour ajouter une règle de liste d'autorisation pour la requête.
Si les requêtes présentent des caractéristiques de regroupement, telles qu'une seule adresse IP de confiance qui déclenche plusieurs règles de protection, analysez les faux positifs. Recherchez des traits communs tels que des chemins d'URL spécifiques, des formats de paramètres ou des types d'interfaces de service. Ensuite, ajoutez une règle de liste d'autorisation précise basée sur le principe du moindre privilège :
Faites correspondre une combinaison du chemin d'URL et des paramètres clés. Par exemple, vous pouvez autoriser uniquement des requêtes de service spécifiques telles que /api/v1/order?source=internal.
Créez une exception ciblée pour une combinaison d'un ID de règle et d'un scénario métier. Par exemple, vous pouvez mettre en liste blanche une règle de validation spécifique uniquement pour une interface de paiement.
Évitez de configurer des règles qui autorisent tout le trafic. Des règles précises réduisent l'effort nécessaire pour gérer les exceptions individuellement et améliorent l'efficacité des opérations et de la maintenance sans compromettre la sécurité.
Les règles de liste d'autorisation ont-elles une priorité plus élevée que les autres modules ?
Oui, les règles de liste d'autorisation ont la priorité la plus élevée. Lorsqu'une requête atteint une règle de liste d'autorisation configurée pour ignorer un module, tel que la liste noire d'adresses IP ou les règles de protection Web Core, l'action d'autorisation est exécutée immédiatement, remplaçant toutes les règles au sein du module ignoré.