Le Web Firewall de Cloudflare : fonctionnement, configuration pour protéger son site internet

Cloudflare est un CDN (content delivery network - réseau de diffusion de contenu) qui permet aussi d'améliorer les performances et vitesses de chargement des pages de votre site internet.
Mais il propose aussi un Waf (Web Application Firewall) pour sécuriser votre site WEB contre les attaques DoS ou requêtes malveillantes.
Grâce à Cloudflare, vous pouvez filtrer et protéger son site WEB des tentatives de hacks et piratages.
Enfin ce service peut aussi détecter les connexions automatiques provenant de bots malveillants afin de les bloquer.

Dans ce tutoriel, vous trouverez une présentation de la solution de sécurité CloudFlare, ainsi que le fonctionnement du pare-feu.

Le Web Firewall de Cloudflare : fonctionnement, configuration pour protéger son site internet

Qu'est-ce que Cloudflare ?

CloudFlare est un CDN (content delivery network) qui se place entre les clients et votre serveur WEB.
Il peut agir en tant que proxy-reverse pour cacher le contenu et ainsi améliorer les performances de votre site WEB.
Pour cela, il offre aussi des fonctionnalités de cache avancé avec des centres de données partout dans le monde.
On peut aussi le configurer pour effectuer du load balancing.

La solution CloudFlare se place donc entre le client WEB et votre serveur WEB.
Cela permet de servir les requêtes WEB pour de meilleurs performances.
Enfin il peut aussi agir en tant que Waf (Web Application Firewall).

Schéma CDN CloudFlare

Ainsi CloudFlare est aussi une solution complète pour sécuriser votre site WEB :

Les protections WEB de Cloudflare

Le Waf (Web Application Firewall) de Cloudflare

Qu'est-ce que le WAF ?

Le WAF est un firewall WEB qui bloque les requêtes web malveillantes avant d'arriver à votre serveur WEB.

Dans la solution CloudFlare, des règles gérées par les techniciens de CloudFlare pour protéger contre les attaques et trafics malveillants.
Mais selon l'offre, vous pouvez aussi créer vos propres règles de pare-feu.
Elles permettent de contrôler l'accès de certaines à votre sites WEB selon l'adresses IP, plages IP, pays, ASN et certains blocs CIDR.
Trois actions sont possibles :

  • Autoriser : La requête WEB est autorisée et servie
  • Bloquer : La requête WEB est interdite
  • Défi JS : Le client qui a effectué la demande doit réussir un défi JavaScript Cloudflare avant de continuer. Utile pour s'assurer que les robots et les spams ne peuvent pas accéder à la ressource demandée
  • Défi Captcha : Le client doit doit résoudre un captcha pour accéder à la ressource

Voici un exemple de Défi JS qui s'affiche avant de charger la ressource WEB.
Le navigateur la résout automatiquement et cela prend quelques secondes.

Le défi JS du firewall de Cloudflare

Les règles gérées

Pour protéger les sites WEB, Cloudflare proposent toute une série de règles pare-feu gérées.
Des centaines de règles spécifiques par groupe par type de plateforme (PHP, Joomla, Drupal, phpbb, WordPress) sont fournies.
L'utilisateur peut les désactiver au besoin en cas de faux-positif.

Les règles gérées du firewall de Cloudflare

Les règles globales du WAF globales qui reprennent celle de ModSecurity.
Cela permet de bloquer des requêtes HTTP anormales ou suspicieuses.
Notez que l'action à effectuer est à paramétrer : bloquer ou un défi captcha.

Les règles gérées du pare-feu de Cloudflare

Ajouter une règle sur le firewall

Selon l'offre, l'utilisateur peut créer ses propres règles de pare-feu.
Cela permet de protéger des ressources spécifiques du site ou limiter l'accès à certaines zones géographiques.

Par exemple, on peut créer une règle pour vérifier le trafic provenant de TOR et s'assurer qu'il n'est pas automatisé ou sert à des attaques DoS.

Ajouter une règle sur le firewall de cloudflare

Le pare-feu CloudFlare gère les conditions ET / Ou pour créer des règles complexes.

Ajouter une règle sur le firewall de cloudflare

Règle d'accès par IP, ASN et user agent

Une des fonctions du WAF est les règles d'accès IP.
On peut alors ajouter très facilement des adresses IP, ASN, pays, continent en liste noire ou blanche pour autoriser le trafic, le bloquer ou lancer un défi.

Règle d'accès par IP, ASN sur Cloudflare

Enfin on peut aussi créer des règles pour bloquer les agents utilisateurs spécifiques.

Bloquer les user agent sur Cloudflare

Verrouillage de zone

Le verrouillage de zone permet de protéger des ressources selon des adresses IP spécifiques.
Vous pouvez l'utiliser pour protéger des zones d'administration ou sensibles de votre site WEB avec des listes blanches d'IP.

Verrouillage de zone sur Cloudflare pour protéger des zones sensibles du site

Indiquez le nom et l'URL puis les plages d'adresses IP autorisées.

Verrouillage de zone sur Cloudflare pour protéger des zones sensibles du site

Journal d'activités et évènements du firewall

La solution Firewall de Cloudflare enregistre chaque évènement du pare-feu WEB pour le consigner dans un journal d'activité.
A tout moment, on peut aussi analyser les requêtes bloquées par le WAF.
Un graphique avec les évènements bloqués, défis JS et Captcha est présent sur une plage horaire.

Journal d'activités et évènements du firewall Cloudflare
Journal d'activités et évènements du firewall Cloudflare

Mais on peut aussi afficher les requêtes par Pays, Numéro d'AS, adresse IP, Version HTTP, Méthode HTTP ou chemin cible.
Chaque évènement du pare-feu y est consigné avec les sources (Adresse IP, Agent utilisateur, Pays, numéro d'AS, ...).
On peut alors filtrer sur ces derniers pour trouver des évènements spécifiques.

Filtrer les évènements du firewall

Le taux de blocage est indiqué dans chaque évèneemnt et un bouton filtre est disponible pour une analyse détaillée.

Journal d'activités et évènements du firewall Cloudflare

Enfin la liste des activités avec les requêtes WEB complètes que l'on peut exporter.

Journal d'activités et évènements du firewall Cloudflare
Journal d'activités et évènements du firewall Cloudflare

De plus, CloudFlare fournit toute une partie analyse du trafic avec l'audience, les pays sources, etc.
On trouve aussi une partie sur l'analyse des attaques et menaces.

Analyse du trafic malveillants et menaces sur Cloudflare

Lutte contre les bots de Cloudflare

Cloudflare met aussi l'accent contre le trafic automatisé.
Le but est de lutter contre les bots malveillants qui sont souvent à l'origine :

Pour cela, Cloudflare met en place des méthodes de détection des bots et déployé de grands modèles d'apprentissage automatique capables de distinguer le trafic réel (que ce soit celui des humains ou des applications) des robots malveillants.

Le mode Super lutte contre les bots permet d'appliquer des règles sur trois types de trafic :

  • Le trafic automatisé probable peut provenir de mauvais robots. La protection de lutte contre les bots utilise l'heuristique, l'apprentissage automatique et d'autres techniques pour repérer ces demandes. Dans la plupart des cas, ce trafic nuit à votre site sans rien fournir d'utile en retour
  • Le trafic humain probable est légitime et important. Idéalement, la grande majorité du trafic correspond à ce type
  • Le trafic de bot vérifié provient de bons robots sur Internet. La protection a détecté des robots de recherche comme Google et des services de notification de paiement comme PayPal. La plupart des utilisateurs choisissent d'autoriser ce trafic
Configurer le mode Super lutte contre les bots de Cloudflare

Là aussi, on trouve une partie analyses des bots qui permet de suivre toutes les activités de la protection.
Les adresses IP, pays source et autres sont disponibles.

Analyses des bots et trafic automatisé de cloudflare
Analyses des bots et trafic automatisé de cloudflare

La protection Anti-DoS de Cloudflare

Enfin Cloudflare est aussi une solution de protection contre les attaques par déni de service qui vise à mettre votre site internet hors ligne.
Pour cela des signatures de reconnaissances des attaques sont intégrées à la protection.
Elle vise à détecter et mitiger les attaques DoS.

Trois grandes types de protection contre les attaques DDoS sont disponibles :

  • Protection contre les attaques DDoS HTTP : Atténuation automatique des attaques DDoS basées sur HTTP telles que les saturations HTTP, les attaques HTTP d’amplification et les attaques HTTP par réflexion
  • Protection d’origine : Lance automatiquement la protection DDoS lorsque votre serveur d’origine répond à Cloudflare avec un taux d’erreurs 52x plus élevé
  • Protection contre les attaques DDoS SSL/TLS : Atténuation automatique des attaques DDoS basées sur SSL/TLS et basées sur le chiffrement, telles que les attaques DDoS, les saturations d’épuisement SSL, les attaques HTTP d’amplification et les attaques de négociation SSL
  • Protection contre les attaques DDoS de la couche réseau : Atténuation automatique des attaques DDoS de la couche réseau telles que les saturations ACK, les attaques d’amplification SYN-ACK, les attaques UDP, les attaques ICMP et les attaques DDoS lancées par des botnets tels que Mirai

Pour mieux comprendre ces dernières, suivez cet article complet :

Lorsque le service détecte une attaque par déni de service, il vous prévient par mail mais aussi sur l'interface de gestion Cloudflare.
Une notification "Nous avons détecté et atténué une attaque DDoS sur votre site."

Cloudflare - Nous avons détecté et atténué une attaque DDoS sur votre site.

Puis une alerte Attaque DDoS est envoyée par mail.
Ci-dessous la notification avec le type d'attaque HTTP Flood avec le taux de requêtes, l'horodatage et la cible.

La protection Anti-DoS de Cloudflare

On peut alors afficher les évènements du pare-feu DDoS HTTP pour obtenir des informations sur les adresses IP à l'origine de l'attaque.

La protection Anti-DoS de Cloudflare

Puis on retrouve tous les évènements du journal d'activité avec les adresse IP, pays sources ASN, etc.

La protection Anti-DoS de Cloudflare

Dans cet exemple donc, Cloudflare a totalement bloqué l'attaque par déni de source sans aucune conséquence sur le site WEB final.

Bien sûr une configuration correcte du firewall avec des règles de Défi pour certains pays aident aussi à mitiger les attaques DDoS.

Mettre en place Cloudflare sur site internet WordPress

Pour installer le CDN Cloudflare sur WordPress, vous pouvez suivre ce tutoriel complet :

Cloudflare : comment protéger Nginx et WordPress des attaques DoS, piratages et bruteforce

Toute cette configuration est disponible depuis le tableau de bord Cloudfalre mais aussi par des API.
Ainsi, on peut par exemple blacklister une adresse IP automatiquement, par exemple par une intégration Fail2ban.
Le site propose un article qui vous guide pour configurer Cloudflare afin de protéger son site WEB :

Liens

Tags: