Introduction aux politiques de périphérie de réseau

Utilisez le pare-feu d'application Web pour gérer les politiques de périphérie de réseau.

Avant de commencer

Consultez la section Aperçu du service de pare-feu d'application Web pour les concepts importants concernant le service WAF.

Pour commencer à utiliser le service WAF, vous devez disposer des éléments suivants :

  • Assurez-vous de disposer des autorisations pour la politique GIA requise.
  • Nous vous avons recommandé d'utiliser un compartiment distinct pour la politique WAF afin que la gestion soit plus facile et sécurisée.
  • Un domaine webapp principal.
  • Adresse IP du LBaaS ou d'un autre point d'extrémité public de l'application.
  • Possibilité de mettre à jour les enregistrements DNS pour le domaine.
  • Le service WAF ne prend en charge que le trafic sur les ports 80/443; cependant, une fois que les demandes atteignent le service WAF sur les ports 80/443, nous sommes en mesure d'envoyer les demandes à votre serveur d'origine sur tout port nécessaire. Voici un exemple :

    Utilisateur final → Port 80/443 → WAF → Port 443/8000/555/*** → Serveur d'origine

    Assurez-vous que votre application ne fonctionne pas sur d'autres ports.
    Note

    Vous ne pouvez pas utiliser le service WAF pour du trafic comme SSH, FTP ou SMTP.

En outre, si vous prévoyez d'exécuter votre site sur HTTPS/443, vous devez :

  • Certificat public pour le nom de domaine complet de l'application.
  • Clé privée correspondante pour le site.
  • Certificat dans le format PEM.
  • Certificat de chaîne complète (racine, intermédiaire, serveur d'origine)
    Note

    Les certificats SSL ne peuvent être appliqués qu'à l'application principale de la politique.

La propagation des modifications apportées aux politiques de périphérie de réseau prend généralement de 10 à 30 minutes, selon la modification. La propagation prend autant de temps car des centaines de noeuds vers lesquels de nouvelles configurations sont poussées. Les modifications de fonction suivantes se propagent généralement en 10 à 15 minutes :

  • Politiques de robots
  • Identification d'interaction humaine (HIC)
  • Identification de l'empreinte numérique de l'appareil
  • Identification Javascript
  • Identification CAPTCHA
  • Liste d'autorisation des robots approuvés
  • Règles d'accès
  • Service de renseignement sur les menaces
  • Listes d'adresses IP
  • Liste blanche d'adresses IP

Tenez compte des informations suivantes lorsque vous utilisez des politiques de périphérie de réseau :

  • IPv6 n'est pas pris en charge actuellement.

  • Le service WAF inspecte, mais ne modifie pas le corps de la réponse.
  • La limite de mise en cache est de 1 Go par politique.
  • Pour les limites de chargement de taille de fichier, la limite est de 1 Go. Pour les limites de taille de fichier, tenez compte des points suivants :
    • La limite ne dépend pas du type de chargement, comme des images, des vidéos, des fichiers binaires, etc.
    • L'en-tête Content-Type n'a pas d'incidence sur la limite. Seules des règles de protection différentes sont appliquées en fonction de l'en-tête Content-Type.
    • Les chargements utilisant des tranches de mémoire ou des flux n'ont aucune incidence sur la limite. En mode de stockage en mémoire tampon, la limite est de 1 Go pour les chargements et les téléchargements. Toutefois, certains autres modes, notamment la diffusion en continu du corps de la réponse, ne pas tenir compte de la limite de 1 Go.
    • Les connexions WAF sont rarement annulées. Une annulation peut se produire en raison de chargements importants ou de connexions lentes. Après le rechargement des noeuds de bordure, une connexion peut être annulée lors de l'exécution d'un processus de nettoyage si le cycle de demande ou de réponse est trop long.
  • Lors de l'utilisation du pare-feu d'application Web (WAF) avec les services de diffusion de contenu, les services de diffusion de contenu pourraient être touchés, car nos règles de protection requièrent la mise en mémoire tampon du contenu HTML complet avant l'analyse. L'ensemble du contenu doit être mis en mémoire tampon dans notre moteur de base de règles de protection, ce qui peut entraîner des réponses lentes ou des événements qui n'affichent pas le contenu en continu.
  • Vous pouvez créer ou restaurer des sauvegardes de politique WAF à l'aide de l'interface de ligne de commande OCI. Extrayez le fichier JSON complet de l'application Web, puis recréez-le partiellement. Nous vous recommandons de recréer d'abord les paramètres principaux, puis les identifications et les fonctions de sécurité de l'application Web.
  • Vous pouvez activer WebSocket pour une URL spécifique au moyen de l'interface de ligne de commande à l'aide de la commande suivante :

    oci waas policy-config update --waas-policy-id ocid1.waaspolicy.oc1..[WAAS POLICY OCID] --websocket-path-prefixes '["/url/url/websocket"]'

    Note

    La prise en charge de WebSocket empêche le traitement WAF dans les chemins spécifiés. Cela signifie que si une règle WAF est activée, elle n'analyse pas les demandes allant à l'URL exclue dans la configuration. Toutefois, d'autres mesures, telles que l'identification d'interaction humaine et l'identification JavaScript, peuvent être activées pour fournir une couche supplémentaire de sécurité pour l'URL WebSocket.
  • La "clé" du flux de renseignement sur les menaces généré est différente pour chaque politique WAF.
  • Vous pouvez apporter des modifications aux politiques de périphérie de réseau uniquement lorsque le statut de la politique est ACTIVE.

Estimer le coût pour l'utilisation du service WAF

Utilisez ces informations pour estimer les coûts d'utilisation du service WAF.
Vous pouvez estimer le coût comme suit :
  1. Allez à : https://www.oracle.com/cloud/cost-estimator.html.
  2. Cliquez sur Rechercher et recherchez Réseau - Pare-feu d'application Web (WAF).
  3. Cliquez sur Ajouter.
  4. Sous Ajouter une configuration, cliquez sur le menu à côté du nom du service, sélectionnez Ajouter par UDS, puis entrez l'UDS.
  5. Cliquez sur Ajouter.

    Dans l'estimateur de coûts, "Instance" représente la politique WAF.

Configuration initiale de votre politique WAF

1. Créer une politique de périphérie de réseau pour acheminer le trafic au moyen du service WAF

Pour commencer, créez une politique de périphérie de réseau pour acheminer le trafic au moyen du service WAF sans règles activées. La création d'une politique sans règles activées garantit l'absence de régression liée à un mandataire inverse placé devant l'application.

Pour créer une politique de périphérie de réseau
  1. Sélectionnez la région et le compartiment où la politique doit être tenue à jour (il n'y a pas de contrainte relative à la coexistence du service WAF avec le service Équilibreur de charge ou d'autres ressources d'application dans Oracle Cloud Infrastructure).

  2. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  3. Cliquez sur Créer une politique WAF.

  4. Reportez-vous au bas de la page Informations de base pour voir le message suivant :

    Utilisez le flux de travail existant ici si vous devez sécuriser vos applications Web non OCI.

  5. Cliquez sur le lien pour afficher la boîte de dialogue Créer une politique de périphérie de réseau.
  6. Entrez les informations suivantes :
    • Nom : Nom unique de la politique.
    • Domaines :
      • Domaine principal : Nom de domaine complet de l'application où la politique sera appliquée.
      • Domaines supplémentaires : (Facultatif) Sous-domaines où la politique sera appliquée.
        Note

        Cependant, les domaines avec caractère générique ne sont acceptés qu'en tant que domaines supplémentaires et uniquement au moyen de l'API et de l'interface de ligne de commande.

    • origine WAF : Hôte ou adresse IP de l'application publique accessible par Internet à protéger.
      • Nom de l'origine : Nom unique pour l'origine.
      • URI : Entrez le point d'extrémité public (IPv4 ou nom de domaine complet) de l'application.
      • Port HTTPS : Port utilisé pour la connexion HTTP sécurisée. Le port par défaut est 443.
      • Port HTTP : Port HTTP sur lequel l'origine écoute. Le port par défaut est 80.
      • En-têtes : (Facultatif)
        • Nom d'en-tête : Nom affiché dans l'en-tête de la demande HTTP et valeur d'en-tête pouvant être ajoutée et transmise au serveur d'origine avec toutes les demandes.
        • Valeur d'en-tête : Spécifie les données demandées par l'en-tête.
    • Marqueurs : Si vous êtes autorisé à créer une ressource, vous disposez également des autorisations nécessaires pour appliquer des marqueurs à structure libre à cette ressource. Pour appliquer un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur. Pour plus d'informations sur le marquage, voir Marqueurs de ressource. Si vous ne savez pas si vous devez appliquer des marqueurs, ignorez cette option ou demandez à un administrateur. Vous pouvez appliquer des marqueurs plus tard.
  7. Cliquez sur Créer une politique WAF. L'aperçu de la politique WAF s'affiche. Attendez-vous à ce que la politique soit active 15 minutes après sa création.

    Voir Gestion des politiques de périphérie de réseau pour plus d'informations.

2. Mettre à jour la temporisation de maintien de connexion de l'origine

La politique de périphérie de réseau nécessite que les temporisations de maintien de connexion de l'origine (équilibreur de charge ou serveur Web) soient de 301 secondes ou plus, car notre valeur de temporisation en amont est de 300 secondes. La seconde supplémentaire sert à garantir que la connexion a suffisamment de temps pour renégocier lorsque nos noeuds créent des connexions et à éviter les problèmes de connectivité. Cela s'applique aux appels d'API, car nous utilisons la technologie de multiplexage réseau OCI qui permet de réduire les goulets d'étranglement du réseau et d'améliorer la performance en optimisant le protocole TCP.

Pour tester la temporisation de maintien de connexion en amont

Vérification HTTP :

  1. Soumettez la demande par rapport au serveur amont ou à l'origine. Exécutez la commande suivante :
    time telnet www-origin.example.com 80
    Exemple de sortie :
    Trying 12.34.56.78...
    Connected to lb65-soc-191485947.us-east-1.elb.amazonaws.com.
    Escape character is '^]'.
  2. Soumettez une demande GET en entrant les en-têtes HTTP suivants :
    GET / HTTP/1.1
    Host: www.example.com
    Connection: keep-Alive
  3. Appuyez deux fois sur Entrée et attendez que la session se ferme ou se déconnecte.

Vérification HTTPS :

  1. Lancez la demande la demande par rapport au serveur amont ou à l'origine. Exécutez la commande suivante :
    time openssl s_client -connect www-origin.example.com:443
  2. Soumettez une demande GET en entrant les en-têtes HTTP suivants :
    GET / HTTP/1.1
    Host: www.example.com
    Connection: keep-Alive
  3. Appuyez deux fois sur Entrée et attendez que la session se ferme ou se déconnecte.
Vous recevrez la sortie suivante. Dans cet exemple, la section réelle indique la durée réelle d'activité de la session (5.1 minutes (301 secondes)) :
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
... 

<!DOCTYPE html>
<html>
...
</html> 

Connection closed by foreign host.
real 5m1.962s
user 0m0.011s
sys 0m0.009s

Voir Gestion de l'origine pour plus d'informations.

3. Charger votre certificat et votre clé

Cette étape suppose que votre site s'exécute sur HTTPS/443.

Pour charger votre certificat et votre clé
  1. Ouvrez le menu de navigation et cliquez sur Identité et sécurité. Sous Pare-feu d'application Web, cliquez sur Politiques.

    Vous pouvez également ouvrir la page Pare-feu d'application Web et cliquer sur Politiques sous Ressources.

    La page Politiques WAF s'affiche.

  2. Sélectionnez le compartiment dans la liste.

    Toutes les politiques WAF de ce compartiment sont présentés sous forme de tableau.

  3. (Facultatif) Appliquez un ou plusieurs des filtres suivants pour limiter les politiques WAF affichées :
    • État

    • Nom

    • Type de politique : Sélectionnez Politique de périphérie de réseau.

  4. Sélectionnez la politique de périphérie de réseau pour laquelle vous voulez charger le certificat et la clé.

    La boîte de dialogue Détails de la politique de périphérie de réseau s'affiche.

  5. Cliquez sur Paramètres sous Politique WAF.
    La liste Paramètres s'affiche.
  6. Sélectionnez Paramètres généraux.
  7. Cliquez sur Modifier.
    La boîte de dialogue Modifier les paramètres s'affiche.
  8. Effectuez les actions suivantes :
    • Activer la prise en charge HTTPS : Cochez cette case pour permettre le chiffrement de toutes les communications entre le navigateur et l'application Web.
      • Source de certificat : Choisissez l'une des méthodes suivantes :
        • Sélectionner un certificat : Sélectionnez un certificat existant dans le menu déroulant. Cliquez sur Changer de compartiment pour sélectionner un certificat dans un autre compartiment.
        • Charger ou coller le certificat et la clé privée
          • Effectuez un glisser-déposer, sélectionnez ou collez un certificat SSL valide dans le format PEM. Vous devez également inclure des certificats intermédiaires (le certificat du site Web doit être inclus en premier). Voici un exemple :

            -----BEGIN CERTIFICATE-----
            <Base64_encoded_certificate>
            -----END CERTIFICATE-----
            -----BEGIN CERTIFICATE-----
            <Intermediate_Base64_encoded_certificate>
            -----END CERTIFICATE-----
          • Clé privée : Effectuez un glisser-déposer, sélectionnez ou collez une clé privée valide dans le format PEM dans ce champ. La clé privée ne peut pas être protégée par une phrase secrète. Voici un exemple :

            -----BEGIN PRIVATE KEY-----
            <Base64_encoded_private_key>
            -----END PRIVATE KEY-----
      • Certificat auto-signé : Activez ce champ lors de l'utilisation d'un certificat auto-signé pour afficher un avertissement SSL dans le navigateur.
      • Redirection de HTTP à HTTPS : Lorsque cette option est activée, tout le trafic HTTP est automatiquement redirigé vers HTTPS.
      • Prise en charge des protocoles TLS : Sélectionnez un protocole TLS dans la liste déroulante.
        Attention

        Les versions 1 et 1.1 du protocole TLS sont obsolètes et ne peuvent pas être utilisées dans les configurations de politique. Si vous utilisez ces versions, une erreur de validation peut survenir. Utilisez plutôt les versions 1.2 ou 1.3.
      • Activer SNI : L'identification SNI (Server Name Indication) est une extension du protocole TLS qui permet de desservir de multiples noms d'hôte sécurisés à partir d'une même adresse IP.
      • Options avancées
        • Activer le stockage en mémoire tampon des réponses : Activez ou désactivez la mise en mémoire tampon de la réponse depuis l'origine.
        • Respect du contrôle de cache : Activez ou désactivez la mise en cache automatique du contenu en fonction de l'en-tête de contrôle de cache de la réponse.
        • Derrière le réseau de diffusion de contenu : L'activation de cette option permet de collecter les adresses IP à partir de la demande client si WAF est connecté à un RDC.
  9. Cliquez sur Enregistrer les modifications.
Vous devez publier vos modifications pour qu'elles s'appliquent. Voir Publication des modifications.

4. Tester votre application (avant de la déployer en production)

Dans cette étape, assurez-vous que les demandes sont acheminées vers le service WAF et que l'application continue de fonctionner normalement avec un mandataire inverse dans la topologie.

Tester votre application au moyen d'une commande de terminal
  1. Ouvrez une fenêtre de terminal.

    Exécutez la commande suivante pour HTTP :

    curl -lvk http://<OCI_WAF_CNAME> -H "Host: <WEBAPP_DOMAIN>" -so /dev/null

    Exécutez la commande suivante pour HTTPS :

    curl -lvk https://<OCI_WAF_CNAME> -H "Host: <WEBAPP_DOMAIN>" -so /dev/null
  2. Vous pouvez également lancer une interrogation DNS sur <OCI_WAF_CNAME> pour votre politique WAF et copier une des adresses IP de la sortie résultante.
    • Pour exécuter une interrogation DNS, vous pouvez utiliser l'une des commandes suivantes :
      dig <OCI_WAF_CNAME>
      nslookup <OCI_WAF_CNAME>
    • Copiez l'une des adresses IP de la sortie.
  3. Exécutez la commande suivante. Remplacez <WEBAPP_DOMAIN> par votre domaine de politique WAF. Utilisez le port 80 ou 443. Remplacez <OCI_NODE_IP> par l'adresse IP OCI_WAF_CNAME.
    Query curl -vso/dev/null --resolve <WEBAPP_DOMAIN>:<PORT_80_OR_443>:<OCI_NODE_IP> https://<WEBAPP_DOMAIN>

    Un code de réponse HTTP 200, 301, 302 ou tout autre code de réponse HTTP attendu est retourné.

    Note

    Si vous recevez une erreur HTTP 5XX, assurez-vous d'avoir mis à jour votre paramètre de pare-feu pour autoriser nos adresses IP. Si le problème persiste, ouvrez une demande de service auprès de My Oracle Support. Dans la demande de soutien, fournissez l'OCID de votre compartiment, l'OCID de la politique, une explication du problème que vous rencontrez, un fichier HAR et indiquez à quel moment le problème a commencé.
Tester votre application au moyen d'un navigateur Web

Pour tester votre application à l'aide d'un fichier d'hôtes, vous avez besoin d'une adresse IP vers laquelle faire pointer votre application. Sous la politique, vous devriez voir le CNAME qui vous a été affecté. Vous pouvez obtenir l'adresse IP vers laquelle faire pointer votre application.

  1. Ouvrez une fenêtre de terminal.
  2. Exécutez une interrogation DNS à l'aide de l'une des commandes suivantes :
    dig <OCI_WAF_CNAME>
    nslookup <OCI_WAF_CNAME>
  3. Copiez l'une des trois adresses IP à partir de la section Réponse de la sortie de la commande dig et collez-la dans un fichier d'hôtes avec votre nom de domaine.
  4. Après avoir enregistré votre fichier d'hôtes, ouvrez votre application dans un navigateur et vérifiez qu'elle fonctionne comme prévu.

    Un code de réponse HTTP 200, 301, 302 ou tout autre code de réponse HTTP attendu est retourné.

    Note

    Si vous recevez une erreur HTTP 5XX, assurez-vous d'avoir mis à jour votre paramètre de pare-feu pour autoriser nos adresses IP. Si le problème persiste, ouvrez une demande de service auprès de My Oracle Support. Dans la demande de soutien, fournissez l'OCID de votre compartiment, l'OCID de la politique, une explication du problème que vous rencontrez, un fichier HAR et indiquez à quel moment le problème a commencé.
Tester votre SSL
Les outils de ligne de commande suivants peuvent être utilisés pour valider des certificats sur une application Web indiquée :
echo | openssl s_client -showcerts -servername <Domain> -connect <Domain>:443 2>/dev/null | openssl x509 -inform pem -noout -text
Portez une attention particulière aux dates de validité du certificat et aux dates d'expiration qui pourraient causer des problèmes de connexion :
..
Signature Algorithm: sha256WithRSAEncryption
        Issuer: C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
        Validity
            Not Before: Jun  5 03:15:10 2020 GMT
            Not After : Sep  3 03:15:10 2020 GMT
        Subject: CN = www.example.com
        Subject Public Key Info:
...

Vous pouvez également vérifier le certificat à partir de sites Web tiers tels que SSL Shooper ou SSL labs et effectuer la validation.

5. Mettre à jour le DNS pour activer le service WAF

Après avoir confirmé que votre application Web fonctionne parfaitement au moyen du WAF, vous pouvez maintenant procéder à la mise à jour globale du DNS.

À cette étape, vous mettez à jour le CNAME de votre zone pour acheminer les demandes des clients Internet vers le service WAF. Utilisez les instructions suivantes pour apporter cette modification au nom DNS dans la console. Si la configuration de votre DNS réside chez un autre fournisseur, consultez la documentation correspondante pour obtenir des instructions.

Pour mettre à jour le CNAME pour votre zone
  1. Dans l'onglet Informations sur la politique de l'aperçu de la politique WAF, sélectionnez le CNAME cible.
  2. Copiez le CNAME cible dans le presse-papiers.
  3. Ouvrez le menu de navigation et sélectionnez Service de réseau. Sous Gestion du DNS, sélectionnez Zones.
  4. Cliquez sur le nom de zone du domaine principal pour mettre à jour l'enregistrement. Les détails de la zone et la liste des enregistrements apparaissent.

  5. Cochez la case correspondant à l'enregistrement CNAME et sélectionnez Modifier dans le menu déroulant Actions.
  6. Dans la boîte de dialogue Modifier l'enregistrement, mettez à jour le champ Cible avec le CNAME cible depuis le presse-papiers.
  7. Cliquez sur Soumettre.
  8. Cliquez sur Publier les modifications.
  9. Dans la boîte de dialogue de confirmation, cliquez sur Publier les modifications.

6. Sécurisation de votre WAF

Pour sécuriser votre pare-feu d'application Web (WAF), vous devez configurer vos serveurs pour qu'ils acceptent le trafic provenant des serveurs WAF. Configurez les règles de trafic entrant de votre origine pour accepter uniquement les connexions à partir des intervalles CIDR suivants.

Intervalles CIDR
  • 129.146.12.128/25
  • 129.146.13.128/25
  • 129.146.14.128/25
  • 129.148.156.0/22
  • 129.213.0.128/25
  • 129.213.2.128/25
  • 129.213.4.128/25
  • 130.35.0.0/20
  • 130.35.112.0/22
  • 130.35.116.0/25
  • 130.35.120.0/21
  • 130.35.128.0/20
  • 130.35.144.0/20
  • 130.35.16.0/20
  • 130.35.176.0/20
  • 130.35.192.0/19
  • 130.35.224.0/22
  • 130.35.232.0/21
  • 130.35.240.0/20
  • 130.35.48.0/20
  • 130.35.64.0/19
  • 130.35.96.0/20
  • 130.35.228.0/22
  • 132.145.0.128/25
  • 132.145.2.128/25
  • 132.145.4.128/25
  • 134.70.16.0/22
  • 134.70.24.0/21
  • 134.70.32.0/22
  • 134.70.56.0/21
  • 134.70.64.0/22
  • 134.70.72.0/22
  • 134.70.76.0/22
  • 134.70.8.0/21
  • 134.70.80.0/22
  • 134.70.84.0/22
  • 134.70.88.0/22
  • 134.70.92.0/22
  • 134.70.96.0/22
  • 138.1.0.0/20
  • 138.1.104.0/22
  • 138.1.128.0/19
  • 138.1.16.0/20
  • 138.1.160.0/19
  • 138.1.192.0/20
  • 138.1.208.0/20
  • 138.1.224.0/19
  • 138.1.32.0/21
  • 138.1.40.0/21
  • 138.1.48.0/21
  • 138.1.64.0/20
  • 138.1.80.0/20
  • 138.1.96.0/21
  • 138.1.112.0/20
  • 140.204.0.128/25
  • 140.204.12.128/25
  • 140.204.16.128/25
  • 140.204.20.128/25
  • 140.204.24.128/25
  • 140.204.4.128/25
  • 140.204.8.128/25
  • 140.91.10.0/23
  • 140.91.12.0/22
  • 140.91.22.0/23
  • 140.91.24.0/22
  • 140.91.28.0/23
  • 140.91.30.0/23
  • 140.91.32.0/23
  • 140.91.34.0/23
  • 140.91.36.0/23
  • 140.91.38.0/23
  • 140.91.4.0/22
  • 140.91.40.0/23
  • 140.91.8.0/23
  • 147.154.0.0/18
  • 147.154.128.0/18
  • 147.154.192.0/20
  • 147.154.208.0/21
  • 147.154.224.0/19
  • 147.154.64.0/20
  • 147.154.80.0/21
  • 147.154.96.0/19
  • 192.157.18.0/24
  • 192.157.19.0/24
  • 192.29.0.0/20
  • 192.29.128.0/21
  • 192.29.138.0/23
  • 192.29.144.0/21
  • 192.29.152.0/22
  • 192.29.16.0/20
  • 192.29.160.0/21
  • 192.29.168.0/22
  • 192.29.172.0/25
  • 192.29.178.0/25
  • 192.29.180.0/22
  • 192.29.32.0/21
  • 192.29.40.0/22
  • 192.29.44.0/25
  • 192.29.48.0/21
  • 192.29.56.0/21
  • 192.29.60.0/23
  • 192.29.64.0/20
  • 192.29.96.0/20
  • 192.29.140.0/22
  • 192.69.118.0/23
  • 198.181.48.0/21
  • 199.195.6.0/23
  • 205.147.88.0/21

Activer le service WAF pour détecter de manière passive les règles

Les règles de protection WAF ajoutent des cycles CPU supplémentaires à chaque transaction. Par conséquent, il est recommandé d'activer uniquement les règles conçues pour votre topologie d'application Web. WAF offre un ensemble de règles recommandées qui ne nuiront pas à la performance de votre site et qui fonctionneront avec la plupart des applications Web. La fonction de protection contre les robots WAF sécurise totalement votre application Web contre les menaces.

Si vous avez besoin d'aide pour configurer WAF, vous pouvez ouvrir une demande de service auprès de My Oracle Support pour obtenir de l'aide sur le réglage du service WAF pour OCI. Un expert vous guidera tout au long du processus.

Pour voir les recommandations de règle de protection
  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous souhaitez consulter les recommandations relatives aux règles de protection. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Règles de protection.
  4. Cliquez sur l'onglet Recommandations. Cette liste est générée en fonction du trafic que le service WAF détecte lorsque celui-ci passe par le service WAF. Si rien n'apparaît dans cette liste, continuez à tester le nom de domaine complet de votre application et vérifiez les résultats ultérieurement.
  5. Sélectionnez les règles de protection avec une action recommandée Détecter, puis cliquez sur Accepter les recommandations.
Conseil

Vous pouvez utiliser le filtre Action recommandée pour localiser une recommandation en fonction de l'action Détecter.
Pour activer le mode de détection des règles de protection WAF
  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous voulez configurer les paramètres de règle. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Règles de protection.
  4. Utilisez le tableau Règles de protection pour localiser les règles à détecter.
  5. Entrez les ID règle que vous avez repérés dans le tableau dans le filtre ID règle. Pour cet exemple, entrez 941110 (attaque par script intersites) dans le filtre ID règle.
  6. Sélectionnez Détecter dans le menu déroulant Actions pour les règles de protection que vous avez filtrées.

Pour plus d'informations, voir Règles de protection WAF.

Pour activer le mode de détection des règles d'accès WAF
  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous voulez configurer les règles d'accès. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Contrôle de l'accès.
  4. Cliquez sur Ajouter une règle d'accès.
  5. Dans la boîte de dialogue Ajouter une règle d'accès, entrez les informations suivantes :
    1. Nom : DetectRequestsFromMySpecificBrowser
    2. Action associée à la règle : Sélectionnez Détecter seulement.
    3. Conditions : Sélectionnez L'adresse IP est dans le menu et entrez l'adresse IP que vous avez copiée dans le presse-papiers lors du test de votre application dans le champ Adresse IP.
    4. Cliquez sur Condition supplémentaire.
    5. Condition : Sélectionnez L'agent utilisateur est dans le menu et entrez la valeur de l'agent que vous avez copiée dans le presse-papiers lors du test de votre application dans le champ En-tête de l'agent utilisateur.
    Note

    L'adresse IP et l'agent utilisateur de l'exemple précédent doivent tous deux correspondre pour que la règle soit déclenchée. Si un autre agent utilisateur est utilisé pour tester l'application, la demande ne sera pas détectée.

  6. Cliquez sur Ajouter une règle d'accès.
  7. Cliquez sur Modifications non publiées.
  8. Cliquez sur Tout publier.

Voir Contrôle d'accès pour les politiques de périphérie de réseau pour plus d'informations.

Pour activer le mode de détection pour les règles WAF liés aux robots (identification JavaScript)
  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous voulez configurer les paramètres d'identification JavaScript. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Gestion des robots.
  4. Cliquez sur Modifier l'identification JavaScript.
  5. Dans la boîte de dialogue d'identification JavaScript, cochez la case Activer l'identification JavaScript.
  6. Dans la section Action d'identification JavaScript, sélectionnez Détecter seulement.

  7. Entrez les informations suivantes :

    • Activer les conditions : Lorsqu'elles sont activées, les conditions doivent être satisfaites pour que l'action définie soit exécutée. Voir Contrôle d'accès pour les politiques de périphérie de réseau pour plus d'informations sur les conditions et les règles.
    • Seuil d'actions (nombre de demandes) : Spécifiez le nombre de demandes qui ont échoué avant la prise d'action. En raison de la demande asynchrone de la part du navigateur pendant le chargement des pages, il est recommandé de régler le seuil à 10 pour les applications Web avec une utilisation AJAX de base, et à 100 pour les applications avec une forte utilisation AJAX.
    • Délai d'expiration de l'action (en secondes) : Entrez le nombre de secondes entre les tests d'identification pour la même adresse IP. En raison des modifications d'adresses IP de client, il est recommandé de régler le délai d'expiration à 120 secondes pour les applications avec utilisateurs mobiles, et à 3 600 secondes pour les applications exploitées sur des ordinateurs de bureau seulement.
    • Suivre les redirections : Lorsque cette option est activée, les réponses de redirection depuis l'origine sont également testées.
    • Activer la prise en charge NAT : Lorsque cette option est activée, l'utilisateur est identifié non seulement par l'adresse IP, mais aussi par un code de hachage supplémentaire unique, ce qui évite le blocage des visiteurs utilisant des adresses IP partagées. Il est recommandé de désactiver cette prise en charge NAT pour les applications à charge élevée (200+ demandes par seconde).
  8. Cliquez sur enregistrer les modifications.

L'identification JavaScript est ajoutée à la liste des modifications à publier.

Pour plus d'informations, voir Gestion des robots.

Pour activer le mode de détection pour les règles WAF liés aux robots (identification d'interaction humaine)
  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous voulez configurer les paramètres d'identification JavaScript. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Gestion des robots.
  4. Cliquez sur l'onglet Identification de l'interaction humaine.
  5. Cliquez sur Modifier l'identification d'interaction humaine.
  6. Dans la boîte de dialogue Modifier l'identification d'interaction humaine, cochez la case Activer l'identification d'interaction humaine.
  7. Dans la section Action d'interaction humaine, sélectionnez Détecter seulement.
  8. Entrez les informations suivantes :
    • Seuil d'actions (nombre de demandes) : Spécifiez le nombre de demandes qui ont échoué avant la prise d'action. En raison de la demande asynchrone de la part du navigateur pendant le chargement des pages, il est recommandé de régler le seuil à 10 pour les applications Web avec une utilisation AJAX de base, et à 100 pour les applications avec une forte utilisation AJAX.
    • Période d'expiration du seuil (en secondes) : Nombre de secondes avant l'expiration du seuil.
    • Délai d'expiration de l'action (en secondes) : Entrez le nombre de secondes entre les identifications pour la même adresse IP. En raison des modifications d'adresses IP de client, il est recommandé de régler le délai d'expiration à 120 secondes pour les applications avec utilisateurs mobiles, et à 3 600 secondes pour les applications exploitées sur des ordinateurs de bureau seulement.
    • Seuil d'interactions (nombre d'interactions) : Nombre d'interactions avant l'expiration du seuil.
    • Période d'enregistrement (en secondes) : Période d'enregistrement des événements de l'utilisateur.
    • Prise en charge NAT : Lorsque cette option est activée, l'utilisateur est identifié non seulement par l'adresse IP, mais aussi par un code de hachage supplémentaire unique, ce qui empêche le blocage des visiteurs utilisant des adresses IP partagées. Il est recommandé de désactiver la prise en charge pour les applications à charge élevé (200+ demandes par seconde).
  9. Cliquez sur enregistrer les modifications.

L'identification de l'interaction humaine est ajoutée à la liste des modifications à publier.

Pour plus d'informations, voir Gestion des robots.

Voir Gestion des politiques de périphérie de réseau pour l'ordre de traitement de WAF.

Tester les règles

Lorsque la politique est active, vous pouvez tester si les règles sont détectées par le service WAF.

Pour lancer des demandes
  1. Utilisez le même navigateur que celui que vous avez utilisé lors du test de votre application pour effectuer les actions suivantes :
    • Demandez le nom de domaine complet de votre application en ajoutant le paramètre d'interrogation suivant :
      ?id=<script>alert("TEST");</script>
  2. Utilisez un autre navigateur sur le même ordinateur et répétez les demandes précédentes. Toutes les demandes devraient passer par l'application.
Pour vérifier que le service WAF détecte les demandes

Pour vérifier que le service WAF détecte les demandes identifiées comme présentant un risque :

  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Pare-feu d'application Web, sélectionnez Politiques.
  2. Cliquez sur le nom de la politique WAF pour laquelle vous voulez consulter les journaux. L'aperçu de la politique WAF s'affiche.
  3. Cliquez sur Journaux. Les journaux de la politique WAF s'affichent.
  4. Cochez la case Détecter dans le filtre Actions.
  5. Vérifiez qu'il y a bien deux entrées pour la règle de protection déclenchée par la demande concernant l'attaque par script intersites et une entrée pour détecter l'agent utilisateur et l'adresse IP.