Qu’est-ce qu’un pare-feu d’applications Web (WAF, Web Application Firewall) ?
Les applications sont essentielles aux flux de travail efficaces et interconnectés d'aujourd'hui - elles permettent aux employés d'interagir avec les données de l'entreprise, de communiquer entre eux et de stimuler l'innovation et la croissance. Cette importance s'accompagne toutefois d'un risque accru : le risque que des attaquants s'introduisent par le biais d'un compte compromis ou de l'exploitation d'une vulnérabilité est plus élevé que jamais.
Un Pare-feu pour applications Web (WAF) est une solution de sécurité qui répond au risque d'attaques courantes en surveillant les paquets de données reçus par chaque application. Cela permet à l'équipe d'administration de protéger l'application contre les menaces en surveillant, filtrant et bloquant les paquets de données malveillants.
Comment fonctionne un WAF ?
Un WAF protège l'application en inspectant, filtrant et bloquant le trafic HTTP/S potentiellement dangereux. Certains vont même plus loin en empêchant les données non autorisées de quitter le site application. Le WAF y parvient en analysant les quatre composants critiques des interactions HTTP :
- Demandes GET: Elles sont utilisées pour obtenir des données du serveur.
- Requêtes POST: Utilisées pour envoyer des données au serveur, généralement pour modifier son état.
- Demandes PUT: Elles permettent d'envoyer des données pour créer ou mettre à jour des ressources sur le serveur.
- Demandes DELETE: Utilisées pour demander la suppression de données du serveur.
Collectivement, si l'un de ces composants correspond à un état d'échec - ou si l'en-tête HTML contient des indicateurs suspects - la connexion est interrompue.
Cela est possible grâce à une architecture de serveur appelée proxy inverse: les proxys inverses sont installés entre les clients (comme un appareil ou un client de messagerie) et les serveurs internes de l'application de l'entreprise. Lorsqu'un client demande un élément de données à une application protégée, le WAF analyse la demande elle-même et le contexte qui l'entoure. Ce faisant, il met en cache la demande initiale - nous verrons bientôt comment cette mise en cache peut être utilisée pour améliorer les performances. Une fois que la sécurité d'une demande a été vérifiée, le WAF établit sa propre connexion avec l'application interne et la transmet.
Capable d'inspecter l'ensemble du trafic entrant et sortant de l'application, le WAF fait la distinction entre le trafic sûr et le trafic malveillant conformément aux politiques. Il s'agit de règles explicites mises en place pour dicter quel type de trafic est autorisé à quel endroit. Les WAF sont disponibles sous forme de logiciels, de matériel ou de solutions "as-a-service". Quelle que soit l'architecture sous-jacente, les politiques WAF doivent être ajustées et personnalisées pour répondre aux exigences spécifiques d'une ou de plusieurs applications Web. Les WAFs traditionnels nécessitent des mises à jour manuelles de ces règles afin de rester efficaces contre les nouvelles vulnérabilités, alors que les WAFs plus modernes s'appuient sur l'apprentissage machine pour automatiser les mises à jour.
Principales caractéristiques du WAF
Les WAFs sont capables de fournir les fonctionnalités de base suivantes :
Base de données des signatures d'attaques
Les signatures d'attaques sont des modèles identifiables qui indiquent une activité malveillante ; il peut s'agir de types de requêtes spécifiques, de réponses inhabituelles du serveur ou d'adresses IP malveillantes signalées. Les WAFs traditionnels dépendaient fortement des bases de données de ces modèles, alors que les outils plus récents offrent un plus grand nombre d'outils de détection.
Analyse des schémas de circulation
La machine d'apprentissage permet d'établir des bases de référence pour les schémas de circulation normaux. Une fois configurés, ces moteurs sont capables de repérer les écarts par rapport à un comportement normal, ce qui peut signaler une attaque potentielle, même s'il n'y a pas de modèle malveillant auquel correspondre.
Profil de l'application
De la même manière que le trafic quotidien peut être analysé pour y déceler des anomalies, le profilage application permet d'établir des schémas autour du comportement du site application. Il examine les paramètres de requête habituels de l'application, les URL qu'elle gère, les API avec lesquelles elle communique et les types de données qu'elle traite. Toutes ces données étant regroupées dans des lignes de base normales, le WAF peut alors détecter et bloquer les requêtes susceptibles de se glisser dans l'application elle-même.
Intégration du réseau de diffusion de contenu
Les WAF étant positionnés à la périphérie du réseau, l'intégration d'un CDN permet de rapprocher géographiquement le WAF de l'utilisateur final. Les CDN fonctionnent en mettant en cache un site web par l'intermédiaire de plusieurs points de présence (PoP) répartis dans le monde entier : lorsqu'un utilisateur d'application se connecte et demande des données, un CDN est alors en mesure de renvoyer les données à partir du point le plus proche. Cela permet de garantir des performances optimales.
Fonctionnalités du WAF de nouvelle génération
Réduction des faux positifs grâce à l'IA
Le profilage des applications et des utilisateurs permet de détecter les écarts par rapport au comportement normal de application et des utilisateurs - mais cela ne garantit pas que l'alerte générée soit une véritable indication de compromission. C'est ainsi que l'on obtient des faux positifs, ce qui pèse lourdement sur les ressources de sécurité. Les WAFs de nouvelle génération abordent ce problème en mettant en œuvre une autre couche d'analyse, qui examine le contexte plus large de l'appareil, de l'utilisateur ou de l'API à l'origine d'une requête anormale. Il peut alors apporter une réponse plus variée - qu'il s'agisse d'envoyer une demande CAPTCHA ou d'identifier précisément la clé API exposée et donc vulnérable.
Identification et protection de l'API
Les utilisateurs et les robots ne sont plus les seuls à transférer des données vers et depuis une application : Les API constituent désormais une part importante de l'écosystème des données. Les WAF doivent offrir une découverte et une protection complètes des API. Les WAFs Next-Genintègrent la protection API en incluant des règles personnalisables et des alertes pour les changements API et la surveillance de la conformité.
Types de déploiement WAF
Les fonctionnalités offertes par les différents outils WAF sécurisés dépendent de leur déploiement sous-jacent - et, comme pour tout ce qui concerne la sécurité des réseaux, il existe plus d'une façon d'assurer l'interception et la sécurisation du trafic.
WAF basé sur le réseau
Généralement déployé sous forme de matériel, ce type de solution est installé sur site pour minimiser la latence. Bien qu'efficace, c'est l'option la plus coûteuse en raison de la nécessité d'un équipement physique, qui doit également être stocké et entretenu.
WAF basé sur l'hôte
Entièrement intégré au logiciel d'une application, ce type de WAF est moins coûteux que les WAF basés sur le réseau et permet une plus grande personnalisation. Cependant, il nécessite d'importantes ressources de serveurs locaux, est complexe à mettre en place et peut entraîner des coûts de maintenance élevés. En outre, le serveur qui héberge le WAF doit souvent être renforcé et personnalisé, ce qui peut prendre du temps et coûter cher.
Cloud-WAF en tant que service
Il s'agit d'une solution rentable et simple qui évite en grande partie les investissements initiaux, en proposant un modèle de WAF sous forme de service par abonnement. Les mises à jour sont gérées par le fournisseur, généralement sans frais ni effort supplémentaire pour l'utilisateur. Toutefois, comme c'est un tiers qui gère le WAF, il est essentiel de s'assurer que le service permet une personnalisation suffisante pour s'aligner sur les règles commerciales de votre organisation.
Menaces courantes atténuées par le WAF
L'atténuation des menaces par le WAF repose entièrement sur les règles et le moteur IA sur lesquels il est basé : en supposant une configuration correcte, voici quelques-unes des menaces les plus courantes.
Attaques par injection
Les attaques par injection SQL sont capables de tirer parti d'une vulnérabilité dans les champs de saisie d'un site applicationpour injecter un code SQL malveillant dans une requête de base de données. Cela permet aux attaquants de manipuler la base de données, d'obtenir potentiellement un accès non autorisé aux données, de modifier ou de supprimer des enregistrements, ou d'exécuter des opérations administratives. Si SQL n'est pas le seul langage utilisé pour les attaques par injection, c'est certainement le plus courant.
Un WAF annule cette menace en analysant les requêtes à la recherche de mots-clés SQL ou de caractères inattendus dans les entrées utilisateur, avant qu'elles n'atteignent l'application et n'interagissent avec la base de données.
Authentification et gestion de session défaillantes
Cela décrit toute une série de risques de sécurité dans le processus de contrôle de l'identité et de l'accès de l'utilisateur. Il peut s'agir d'informations d'identification insuffisamment protégées et stockées dans un format non haché, d'identifiants de session non sécurisés permettant aux pirates de voler et de réutiliser des jetons, ou de sessions qui ne se terminent pas correctement.
Un WAF peut empêcher tous ces phénomènes grâce à une série de règles différentes : de la limitation du taux de requêtes (et donc du blocage des requêtes de credential stuffing) au recoupement des données de connexion avec les mots de passe les plus couramment volés. D'autres règles peuvent garantir que les sessions sont invalidées après une déconnexion ou un dépassement de délai, ce qui bloque les demandes ultérieures avec le même jeton.
Cross-Site Scripting (XSS)
Souvent appelées XSS, ces attaques sont parmi les plus simples à mettre en place et à automatiser contre des sites et des applications vulnérables. Un WAF est capable d'appliquer des règles strictes sur les champs de saisie pour empêcher <,> ou les éléments de script - couramment observés dans la plupart des attaques XSS. La reconnaissance des schémas permet également aux WAF d'identifier des indicateurs d'attaque en dehors de balises spécifiques.
Composants d'application dont la vulnérabilité est connue
Dans l'écosystème actuel des applications, il est extrêmement fréquent que des composants d'applications en aval provoquent des fuites de données. Les WAF sont capables de détecter si un composant dont la vulnérabilité est connue se trouve dans votre environnement, à condition que le WAF utilise une base de données de renseignements sur les menaces régulièrement mise à jour.
WAF vs. pare-feu traditionnels : Comprendre les différences
Un pare-feu est un terme générique pour tout microprogramme qui filtre le trafic entrant et sortant sur un réseau. Cette définition générale comprend plusieurs catégories qui se distinguent par le type de protection qu'elles offrent. Il s'agit notamment de l'inspection avec état, du filtrage des paquets, des serveurs proxy et du Pare-feu de nouvelle génération (NGFW).
Le WAF est un type particulier de pare-feu, qui se distingue par la manière dont il filtre les paquets de données. Le WAF inspecte la couche application du réseau et peut empêcher de nombreuses attaques invisibles pour les autres types de pare-feu. Par exemple, une attaque par injection SQL ne serait pas détectée par un pare-feu ordinaire car il n'inspecte pas les charges utiles des requêtes d'application, telles que les requêtes SQL.
Contrairement à un pare-feu traditionnel qui peut bloquer le trafic provenant de plages IP spécifiques, de zones géographiques, etc., les WAFs vous permettent de définir des règles qui excluent des types spécifiques de comportement d'application qui semblent être malveillants.
Bonnes pratiques pour la mise en œuvre d'un WAF
Les règles du WAF sont les éléments fondamentaux qui régissent le fonctionnement du pare-feu. Mais ils sont loin d'être la seule préoccupation de la gestion de votre WAF.
Comprendre les menaces qui pèsent sur votre application
Chaque application a un profil de menace unique influencé par sa fonctionnalité, sa base d'utilisateurs et son niveau d'exposition. Commencez par identifier les menaces les plus courantes et les plus critiques pour votre application. Par exemple, les plateformes de commerce électronique sont plus susceptibles d'être la cible d'attaques par injection SQL, en raison de leurs grandes bases de données contenant des informations sur les clients. API En revanche, les fournisseurs peuvent avoir besoin de surveiller de plus près la vulnérabilité à l'altération des paramètres.
Analyser les schémas de circulation
Étudiez le comportement typique du trafic de votre application pour distinguer les activités légitimes des activités malveillantes. Cette analyse vous permet de définir des règles précises pour répondre efficacement à des menaces spécifiques. Si votre WAF est alimenté par des IA, il établit automatiquement une base de référence du trafic normal et du comportement de application.
Exploiter les groupes de règles gérés
La plupart des fournisseurs de WAF livrent leurs outils avec des ensembles de règles préconfigurés, mais vérifiez s'ils proposent également des groupes de règles gérés. Il s'agit d'ensembles de règles prédéfinies qui sont continuellement mises à jour par les fournisseurs. Ces groupes de règles traitent un large éventail de menaces, y compris le Top 10 de l'OWASP, tout en libérant des ressources administratives considérables.
Priorité à l'évolutivité et aux performances
Une fois que le WAF est opérationnel, il est essentiel d'évaluer régulièrement sa configuration et ses performances. Gardez un œil sur les indicateurs clés de performance qui témoignent de la réussite de votre équipe de sécurité, comme le MTTR, tout en surveillant les changements à long terme de la latence de l'application.
Grâce à des contrôles réguliers, il est possible de s'assurer que votre WAF prend en charge la croissance et l'expérience utilisateur de votre site application, même si l'organisation et la base d'utilisateurs changent.
Choose Next-Gen WAF Capabilities with Check Point
Check Point s'appuie sur une IA avancée pour assurer une protection proactive du trafic web et de l'API, garantissant ainsi une sécurité solide pour les applications modernes. En faisant la distinction entre les types de API, les postes, les systèmes publics et les systèmes internes, les nouveaux composants et les anciens,Check Point permet d'adapter avec précision les mesures de sécurité aux besoins spécifiques des missions critiques.
Pour découvrir l'importance de la protection de API pour la sécurité de application, consultez le 2024 GigaOm Radar Report ici. Garantissez la conformité au GDPR et aux PII et mettez en avant la connaissance du contenu en surveillant l'utilisation des données sensibles, avec l'identification intégrée des PII, des dossiers financiers, des informations de santé et des identifiants de connexion. Découvrez comment Check Point se positionne par rapport aux autres leaders du marché WAF - ou, si vous souhaitez l'explorer en profondeur, inscrivez-vous dès aujourd'hui à un démo Check Point approfondi.
