-
- L'émergence de la technologie WAF
- WAFs : Un élément de sécurité essentiel
- Comprendre le paysage des menaces
- Fonctions d'un pare-feu d'application Web efficace
- Différents types de pare-feu pour applications web
- WAFs et autres outils de sécurité
- Comment déployer un pare-feu d'application Web ?
- Éléments à prendre en compte lors du choix d'une solution de sécurité pour les applications web
- L'avenir de la sécurité des applications Web et des API (WAAS)
- Sécuriser vos applications pour l'avenir
- FAQ sur le WAF
Sommaire
-
Qu’est-ce que la sécurité des API ?
- La sécurité des API en bref
- Qu’est-ce qu’une API ?
- Pourquoi la sécurité des API est-elle si importante ?
- Approche traditionnelle de la sécurité des applications web
- Anatomie d’une attaque d’API
- Risques liés à la sécurité des API
- Sécurité des API pour SOAP, REST et GraphQL
- Les bonnes pratiques pour la sécurité des API
- Solution de sécurité API Prisma Cloud
- Sécurité des API : questions fréquentes
- Qu’est-ce que la couche 7 ?
-
Qu'est-ce que la gestion de la sécurité des applications (ASPM) ?
- Explication de la gestion de la sécurité des applications (ASPM)
- Pourquoi les SAGI sont-ils importants ?
- Le rôle des SAGI dans la cyberdéfense
- ASPM : Valeur de l'entreprise
- Comparaison des SAGI avec d'autres technologies de sécurité
- Fonctionnement des SAGI
- Cas d'utilisation des SAGI
- Principaux éléments à prendre en compte lors du choix d'une solution SGAA
- FAQ des SAGI
Qu'est-ce qu'un WAF ? | Le Web Application Firewall expliqué
Sommaire
Un pare-feu d'application web (WAF) est un type de pare-feu qui protège les applications web et les API en filtrant, surveillant et bloquant le trafic web malveillant et les attaques de la couche applicative - telles que les DDoS, l'injection SQL, la manipulation de cookies, le cross-site scripting (XSS), le cross-site forgery et l'inclusion de fichiers.
En tant que défense de niveau 7, les WAFs se concentrent sur le trafic entre les applications web et l'internet. Leur capacité à détecter les requêtes malveillantes et à y répondre avant que les applications et les serveurs web ne les acceptent offre aux entreprises (et à leurs clients) une sécurité essentielle.
L'émergence de la technologie WAF
Avant l'ère du cloud, vous pouviez utiliser des pare-feu pour segmenter les réseaux internes des réseaux externes afin de protéger vos actifs du trafic réseau malveillant. Mais l'approche traditionnelle du pare-feu n'est pas idéale pour le cloud. De nombreuses applications ne peuvent pas être isolées sur des réseaux internes car elles doivent se connecter à l'internet.
Les efforts déployés pour se prémunir contre l'augmentation des attaques contre les applications web ont conduit au développement de la technologie WAF à la fin des années 1990. Les premières versions des pare-feu pour applications web protégeaient les applications contre l'envoi de caractères illégaux. Le WAF a depuis évolué pour se situer entre l'application et le client - une position dite "en ligne" - où il filtre le trafic HTTP en provenance et à destination du service web afin de bloquer la requête malveillante.
Parallèlement à l'émergence de la technologie WAF, le travail sur les vulnérabilités du comité technique de sécurité des applications Web de l'OASIS (WAS TC) a été étendu à la Liste Top 10 du projet de sécurité des applications Web ouvertes (OWASP). Des décennies plus tard, le Top 10 de l'OWASP reste la norme du secteur en matière de conformité de la sécurité des applications web.
Ensemble, ces deux développements - le WAF et le Top 10 de l'OWASP - nous ont donné une défense pour aider à arrêter les acteurs de la menace qui tentent de compromettre nos systèmes, de consommer nos ressources et d'exfiltrer nos données.
WAFs : Un élément de sécurité essentiel
Les attaques contre les applications web étant l'une des principales causes de violations, la protection des applications et des API a été - et est toujours - une préoccupation majeure pour les ingénieurs en sécurité des applications, les architectes en sécurité et les professionnels de la sécurité de l'information. Comme les applications sont souvent publiées avec des vulnérabilités figurant dans le Top 10 de l'OWASP, les normes de sécurité des applications web doivent être intégrées dans le cycle de développement des logiciels (SDLC).
Les pare-feu pour applications web jouent un rôle dans la protection contre l'exploitation des vulnérabilités en fournissant une couche de sécurité qui ne peut pas être obtenue avec les pare-feu de réseau. Les pare-feu de réseau classiques ne sont tout simplement pas équipés pour protéger les applications web qui doivent accepter et répondre à des demandes de contenu web en provenance d'Internet.
Les WAFs résolvent le problème en fournissant un moyen de filtrer le trafic réseau tout en permettant aux applications de se connecter directement à internet. Au lieu de créer un mur entre les ressources internes et externes du réseau, les WAFs fonctionnent comme des écrans, laissant passer le trafic amical mais bloquant le trafic malveillant.
De cette manière, les WAFs aident à se protéger contre certains risques courants liés à la sécurité des applications web, tels que les applications mal conçues et les attaques par injection. Bien que les WAF ne corrigent pas les vulnérabilités ou les failles sous-jacentes des applications web, ils peuvent empêcher les attaques qui tentent d'exploiter ces failles d'atteindre l'application. Les WAFs rendent la tâche difficile aux attaquants en stoppant les sondes initiales, en bloquant les voies d'attaque courantes et en limitant le débit des requêtes.
En outre, les pare-feu pour applications web peuvent enregistrer le trafic des applications web, les tentatives d'attaque et les mesures prises par une entreprise pour sécuriser ses applications web - autant d'éléments qui soutiennent les activités d'audit et de conformité.
Comprendre le paysage des menaces
Avant d'aborder les composants essentiels d'un pare-feu pour applications web efficace, examinons les différents types de menaces qui pèsent sur votre application web. Nous avons déjà mentionné le XSS, l'injection SQL et l'inclusion de fichiers locaux. L'objectif des premiers pare-feu applicatifs était de se protéger contre ces types d'attaques, mais le champ de bataille a changé et continue d'évoluer.
Les attaques par déni de service ou DoS et DDoS sont de plus en plus fréquentes à mesure que le cloud computing à la demande gagne en popularité.
La dernière OWASP Top 10 liste comprend désormais davantage de risques liés au contrôle d'accès et à la configuration. Les ruptures de contrôle d'accès et les défaillances cryptographiques occupent les deux premières places de la liste de 2021. Les problèmes connexes, allant d'une mauvaise configuration de la sécurité à des composants obsolètes, ont également augmenté. Outre la protection de vos services contre les attaques, vous devez empêcher l'exposition accidentelle des données sensibles.
Fonctions d'un pare-feu d'application Web efficace
Un pare-feu d'application web fonctionne grâce à un ensemble de règles ou de politiques conçues pour protéger contre les vulnérabilités des applications web en surveillant et en filtrant le trafic réseau qui utilise les protocoles web, en particulier HTTP et HTTPS.
Nous pouvons diviser la fonction du WAF en deux parties distinctes : la protection du trafic entrant et du trafic sortant. La fonctionnalité de protection des flux entrants du WAF est chargée d'inspecter le trafic des applications provenant du monde extérieur. Dans le cadre de la protection de l'application web contre le trafic entrant, le WAF doit identifier les modèles d'activité dangereux, les charges utiles suspectes et les vulnérabilités.
Parce que les pirates informatiques persistent et innovent, la nature des attaques entrantes évolue. Les WAFs doivent fonctionner à partir d'un ensemble proactif de politiques de sécurité qui protègent contre les vulnérabilités connues de l'application web. Pour filtrer les différents types de trafic malveillant, chaque politique de sécurité doit être actualisée en fonction de l'évolution des vecteurs d'attaque. Les pare-feu pour applications web sont particulièrement efficaces car ils sont conçus pour modifier la politique de sécurité.
La protection des données d'entreprise consiste à empêcher la fuite des données de l'entreprise et des clients. Bien que l'analyse précise des données sortantes soit difficile dans le monde réel, les WAF en ligne basés sur un proxy peuvent intercepter les données sortantes et masquer ou bloquer les fuites de données sensibles, qu'elles soient accidentelles ou malveillantes.
Différents types de pare-feu pour applications web
Lorsque vous utilisez un WAF pour protéger des applications web, vous définissez des règles qui autorisent, bloquent ou surveillent les requêtes web en fonction de certains critères. Vous pouvez, par exemple, personnaliser une règle WAF pour bloquer les requêtes entrantes qui contiennent un en-tête HTTP spécifique ou qui proviennent d'une adresse IP particulière.
WAFs de type Blocklist vs. Allowlist
Les pare-feu pour applications web se distinguent par leur mode de fonctionnement. Un WAF à liste de blocage est basé sur un modèle de sécurité négatif, tandis qu'un WAF à liste d'autorisation suit un modèle de sécurité positif :
- Les WAF à liste de blocage sont conçus pour bloquer certains terminaux, ou types de trafic, et autoriser tous les autres.
- Les WAFs de type Allowlist fonctionnent en quelque sorte à l'inverse des WAFs de type Blocklist, en bloquant par défaut tout le trafic et en n'autorisant que le trafic explicitement approuvé.
Les WAF à liste d'autorisation sont considérés comme plus sûrs car ils minimisent le risque que le trafic malveillant échappe aux défenses en raison de règles de pare-feu mal configurées. Cela dit, les WAF à liste d'autorisation ne fonctionnent pas bien dans les situations où vous ne pouvez pas anticiper tous les types de trafic ou terminaux valides.
Compte tenu des avantages et des inconvénients de ces deux WAF, il n'est pas surprenant que de nombreux WAF fonctionnent aujourd'hui selon un modèle de sécurité hybride "liste d'autorisation - liste de blocage".
WAFs basés sur le réseau, sur l'hôte et sur le cloud
Les WAF peuvent être classés en fonction de leur modèle de déploiement - basé sur le réseau, basé sur l'hôte et basé sur le cloud.
- Sur la base d'un réseau: Un WAF basé sur le réseau - sous la forme d'une appliance matérielle qui doit faire l'objet d'une licence et d'une maintenance - fonctionne sur l'infrastructure de réseau (comme un commutateur) qui se trouve entre les applications et l'internet.
- WAF basé sur l'hôte: Les WAF basés sur l'hôte sont installés sur les serveurs où résident les applications web. Comme elles sont déployées dans le cadre du système d'exploitation de l'application, elles utilisent le filtrage au niveau du système d'exploitation pour filtrer le trafic passant par les applications web, ce qui permet une mise à l'échelle aisée.
- WAF basé sur le cloud: Les applications hébergées dans le cloud peuvent utiliser un WAF basé sur le cloud, qui s'intègre aux services de réseau virtuel dans le cloud ou aux équilibreurs de charge pour filtrer le trafic web. Si les WAF basés sur le cloud ne nécessitent pas une équipe importante pour être déployés ou maintenus, ils n'offrent généralement pas un contexte complet sur les exigences.
Le modèle de déploiement du WAF utilisé par une entreprise dépend en partie de l'endroit où résident ses applications web. Un WAF basé sur le cloud, par exemple, ne fonctionne que lorsque les apps sont déployées dans le cloud. Si la maintenance est un élément à prendre en compte lors du choix d'un modèle de déploiement, les WAF basés sur le réseau et l'hôte nécessitent généralement plus de configuration et de gestion, tandis que les WAF basés sur le cloud ne nécessitent guère plus qu'un changement de DNS ou de proxy.
WAFs et autres outils de sécurité
Les pare-feu pour applications web offrent des fonctionnalités qui les rendent uniques par rapport aux autres pare-feu et solutions de sécurité, mais ils ne sont pas conçus pour servir d'outil de sécurité complet. En fait, les WAF ne sont pas conçus pour repousser tous les types d'attaques. Un pare-feu d'application web n'est qu'une composante de la sécurité et est conçu pour compléter une suite intégrée d'outils afin de fournir une défense holistique contre tous les vecteurs d'attaque concevables.
WAFs vs. pare-feu traditionnels
Les pare-feu traditionnels sont conçus pour définir un périmètre qui sépare les ressources fonctionnant sur un réseau interne de celles qui sont en interface directe avec l'internet. Les WAF sont plus nuancés dans la mesure où ils permettent aux applications d'interagir avec l'internet tout en fournissant une couche de protection.
WAFs et Pare-feu nouvelle génération
Un Pare-feu nouvelle génération (NGFW) est un type de pare-feu applicatif qui combine les meilleures caractéristiques d'un pare-feu réseau traditionnel et d'un WAF. En plus de bloquer les requêtes entrantes en inspectant les paquets de la couche réseau, le NGFW possède des capacités d'inspection qui permettent de bloquer le trafic indésirable sur votre réseau privé.
Bien que les fonctionnalités du NGFW et du WAF se chevauchent, les principales différences résident dans leurs modèles de responsabilité fondamentaux. Les pare-feu nouvelle génération capturent davantage le contexte du trafic réseau et appliquent des politiques basées sur l'utilisateur, tout en ajoutant des fonctionnalités essentielles, telles que l'antivirus et l'antimalware. De plus, en ajoutant du contexte aux politiques de sécurité, les NGFW peuvent combiner des moteurs de renseignements sur les menaces pour faciliter le processus de prise de décision.
En revanche, les WAF sont limités à la couche d'application. Ils sont spécialisés dans la prévention des attaques web courantes, telles qu'une attaque XSS ou DDoS, ce qui les rend essentiels pour sécuriser les applications tournées vers l'internet et les applications cloud-natives.
Mais c'est en termes de Proxy que l'on comprend le mieux la différence fondamentale entre les deux technologies. Utilisé par les serveurs, le WAF est presque toujours un proxy inverse. Les NGFW sont utilisés par les clients et conçus pour les protéger, ce qui en fait des Proxy dans la plupart des cas.
WAFs vs. systèmes de prévention des intrusions
Comme un WAF, un système de prévention des intrusions (IPS) est conçu pour identifier et bloquer le trafic réseau malveillant. Les IPS, en revanche, sont conçus pour filtrer tous les types de trafic, quel que soit le protocole.
Cela dit, les WAFs sont généralement plus sophistiqués dans leur capacité à détecter les attaques complexes qui opèrent via des protocoles web. Les solutions IPS s'appuient généralement sur des signatures d'attaques génériques (types spécifiques de paquets ou de modèles de trafic) et ne font pas un usage intensif des données contextuelles (modèles de trafic historiques ou modèles de comportement de l'utilisateur) pour déterminer quel trafic pourrait être malveillant.
Comment déployer un pare-feu d'application Web ?
Un WAF peut être déployé de plusieurs manières, en fonction de l'endroit où vos applications sont déployées, des services nécessaires, de la manière dont vous souhaitez le gérer et du niveau de flexibilité architecturale et de performance requis.
Questions à examiner :
- Souhaitez-vous gérer le WAF vous-même ou en externaliser la gestion ?
- Un modèle basé sur le cloud est-il une meilleure option, ou souhaitez-vous que votre WAF soit sur place ?
La manière dont vous souhaitez vous déployer vous aidera à déterminer le WAF qui vous convient le mieux. Vous devrez ensuite décider comment intégrer le WAF dans la pile de mise en réseau de votre application web. Vous avez le choix entre trois approches :
- Pont transparent: En mode pont transparent, le WAF est relié aux mêmes ports que les applications web qu'il protège. Du point de vue des applications web et des clients qui s'y connectent, il ne semble pas y avoir de pare-feu en place, mais le port-binding fonctionne en coulisses pour permettre au WAF d'intercepter le trafic et de décider s'il doit être autorisé à passer.
- Proxy inverse transparent: Dans le cadre d'une approche de proxy inverse transparent, les applications web sont conscientes de l'existence d'un pare-feu, mais les clients ne le sont pas. Le WAF accepte le trafic sur des ports et des adresses qui apparaissent aux terminaux externes comme des applications, mais les applications elles-mêmes fonctionnent sur des ports et des adresses internes différents. Le WAF inspecte le trafic et décide de le transmettre ou non à ces ports et adresses.
- Proxy inversé: Un proxy inverse signifie que les clients envoient des demandes à un WAF qui opère sur des ports ou des adresses utilisés pour exécuter un service de proxy, et qui transmet ensuite les demandes aux applications. Un proxy inverse est similaire à un proxy inverse transparent, la principale différence étant que les clients sont conscients de l'existence d'un serveur proxy lorsqu'un proxy inverse simple est en place.
Le modèle de pont transparent est le plus facile à mettre en œuvre car il exige le moins de liaisons réseau, d'adresses et de configurations de ports. Cependant, il n'isole pas les applications web du WAF au niveau du réseau. Les proxys inversés transparents et les proxys inversés offrent une plus grande isolation et la possibilité d'inspecter le trafic avant qu'il n'atteigne les applications.
L'étape suivante du déploiement d'un WAF consiste à choisir l'endroit où l'héberger. Les principales options sont les suivantes :
- Basé sur le cloud en tant que service entièrement géré: Le WAF fonctionne dans le cloud en tant que service entièrement géré. Les utilisateurs n'ont qu'à l'allumer et à le configurer, sans aucune exigence de gestion autre que la mise en place des politiques de réseau souhaitées.
- basé sur le cloud et autogéré: Le WAF est hébergé dans le cloud, mais les utilisateurs sont chargés de le déployer, de le configurer et de le gérer.
- Sur le cloud et en auto-approvisionnement: Le WAF est hébergé dans le cloud. Bien que les utilisateurs doivent le configurer et le gérer, il est automatiquement alimenté par des règles de réseau conçues pour correspondre à l'environnement cloud. Cette approche se situe à mi-chemin entre les options de WAF entièrement gérées et les options de WAF autogérées.
- WAF avancé sur place: Le WAF est hébergé par une infrastructure sur place. L'installation sur site nécessite plus d'efforts et les entreprises doivent fournir l'infrastructure hôte pour le WAF. La contrepartie est un plus grand contrôle sur la manière dont le WAF est configuré.
- Agent ou agentless host-based WAFs: Le WAF fonctionne sur des serveurs hôtes ou des conteneurs d'application. Les utilisateurs devront peut-être déployer des agents sur chaque serveur pour héberger le service de pare-feu d'application web, mais il existe des approches sans agent avec application de règles de pare-feu.
Éléments à prendre en compte lors du choix d'une solution de sécurité pour les applications web
Facteurs à prendre en compte lors de l'évaluation des options de pare-feu pour applications web :
- Quels sont les modèles de déploiement pris en charge ? Les meilleurs WAF prennent en charge une gamme d'options de déploiement afin de pouvoir fonctionner sur place ou dans le cloud, en utilisant des approches entièrement gérées ou autogérées, en fonction des options qui conviennent à l'entreprise.
- Comment le WAF filtre-t-il le trafic ? Plus un WAF peut prendre en compte le contexte lors de l'évaluation du trafic, meilleure est sa capacité à détecter les attaques sophistiquées qui ont tendance à échapper aux pare-feux génériques.
- Quelle doit être l'efficacité du WAF ? Tous les WAF doivent fonctionner efficacement pour éviter de priver les applications des ressources d'infrastructure dont elles ont besoin pour fonctionner.
Outre les considérations ci-dessus lors du choix d'une solution de sécurité des applications web, il est judicieux de prendre en compte l'évolutivité. Comment le WAF devra-t-il se développer à l'avenir ? Devra-t-il prendre en charge des applications fonctionnant dans des architectures hybrides et multicloud ? Devra-t-il prendre en charge les API? Les API devenant de plus en plus essentielles à la communication entre les applications et les utilisateurs, la capacité à protéger les API ainsi que les applications web sera cruciale.
L'avenir de la sécurité des applications Web et des API (WAAS)
Les applications web modernes construites sur des architectures Cloud Native sont plus complexes que jamais. Les processus de développement agiles, l'intégration et le déploiement constants, ainsi que les environnements en constante évolution créent de nouveaux défis pour le WAF traditionnel. La prochaine génération de protection des applications web et des API est la sécurité des applications web et des API (WAAS).
WAAS comprend des fonctions WAF traditionnelles telles que la découverte automatique des applications web. Il va également plus loin en découvrant tous les terminaux d'API de votre environnement. Cette approche simplifie la configuration des règles de sécurité pour protéger vos applications web et API ou mettre à jour les applications existantes dans votre environnement.
En détectant et en protégeant automatiquement vos applications et API orientées web, vous réduisez également le risque qu'une application soit mal configurée ou déployée sans protection.
Une solution WAAS efficace acceptera les spécifications d'API de différents formats, tels que Swagger et OpenAPI, et utilisera ces définitions pour filtrer les demandes afin de déterminer leur conformité à la spécification. Certains terminaux peuvent nécessiter une protection moindre et un accès plus large, tandis que ceux qui traitent des données sensibles exigeront le niveau de protection et d'examen le plus élevé. En outre, une solution WAAS comprend une protection contre les attaques DoS dès sa mise en service.
Parmi les autres caractéristiques à prendre en compte lors du choix d'une solution de sécurité des applications, citons la possibilité de filtrer les demandes en fonction de leur lieu d'origine. Vous souhaitez également pouvoir personnaliser le niveau des mesures défensives appliquées pour chaque application ou API à l'aide de règles personnalisées. Vous pouvez également définir le niveau d'alerte et de rapport d'erreur de chaque application en fonction d'une combinaison de gravité et de risque potentiel.
Sécuriser vos applications pour l'avenir
Alors que le cloud computing consolide sa place dans l'industrie, les applications Cloud Native continuent de proliférer tout en gagnant en importance et en complexité. La sécurité doit pouvoir évoluer aussi rapidement que le paysage dynamique des menaces.
Les professionnels de la sécurité de l'information - DevOps ingénieurs, architectes de sécurité et équipes de sécurité des applications - devront collaborer et s'appuyer sur l'expérience de chacun pour élaborer une stratégie de sécurité exhaustive capable de défendre l'entreprise moderne.
FAQ sur le WAF
Les solutions basées sur le web et sur le réseau protègent les entreprises contre différents types de trafic. Un pare-feu de réseau assure la défense contre les attaques de la couche réseau, et les WAFs empêchent les attaques de sites web. Les deux solutions de sécurité fonctionnent ensemble pour élargir la protection.
Un pare-feu d'application web (WAF) est une solution de sécurité qui protège les applications web contre les attaques courantes, telles que l'injection SQL, le cross-Site Scripting (XSS) et le déni de service distribué (DDoS). Les WAFs surveillent et filtrent le trafic HTTP/HTTPS entre les clients et les applications web, ce qui permet aux organisations de mettre en œuvre des règles de sécurité personnalisées et de bloquer les requêtes malveillantes. En revanche, une interface de programmation d'application (API) est un ensemble de règles et de protocoles permettant aux applications logicielles de communiquer entre elles. Les API facilitent l'échange de données et de fonctionnalités entre différents services, ce qui permet aux développeurs de créer des applications riches en fonctionnalités en exploitant les composants existants.
Un API WAF est un pare-feu d'application web spécialisé conçu pour protéger les API contre les menaces et les vulnérabilités en matière de sécurité. Il étend les fonctionnalités traditionnelles du WAF en se concentrant sur les aspects uniques de la communication entre API, tels que l'utilisation des protocoles RESTful ou GraphQL, les formats de données JSON ou XML, et les jetons d'authentification. Les API WAFs surveillent et filtrent le trafic API, en appliquant des règles et des politiques de sécurité pour empêcher les accès non autorisés, les fuites de données ou l'utilisation abusive des terminaux API. En détectant et en bloquant les requêtes malveillantes, les API WAF contribuent à préserver l'intégrité, la confidentialité et la disponibilité des API et des données qu'elles traitent.
La protection des applications web et des API (WAAP) est une solution de sécurité complète qui englobe les fonctionnalités de WAF et de sécurité des API. Alors que les WAFs se concentrent principalement sur la protection des applications web contre les attaques courantes, le WAAP étend cette protection aux API, qui sont devenues de plus en plus vitales dans les architectures d'applications modernes.
Les solutions WAAP combinent les fonctionnalités des WAFs traditionnels avec des fonctions de sécurité API avancées, telles que la limitation de débit, l'authentification et le contrôle d'accès. En proposant une approche holistique de la sécurité des applications web et des API, les solutions WAAP permettent aux organisations de protéger leurs actifs numériques de manière plus efficace, en garantissant la sécurité et la conformité de leurs applications et services.
Les solutions WAAP combinent les fonctionnalités des WAFs traditionnels avec des fonctions de sécurité API avancées, telles que la limitation de débit, l'authentification et le contrôle d'accès. En proposant une approche holistique de la sécurité des applications web et des API, les solutions WAAP permettent aux organisations de protéger leurs actifs numériques de manière plus efficace, en garantissant la sécurité et la conformité de leurs applications et services.
Les API Web font partie intégrante de nombreuses applications, permettant l'échange de données et le partage de fonctionnalités en toute transparence. Les plateformes de médias sociaux, telles que Facebook et Twitter, offrent par exemple des API permettant aux développeurs d'intégrer des fonctions sociales dans leurs applications. Les services de traitement des paiements tels que Stripe et PayPal fournissent des API pour les transactions en ligne sécurisées. Les applications météorologiques, telles que OpenWeatherMap et WeatherAPI, fournissent des données météorologiques en temps réel par l'intermédiaire d'API. Les systèmes de gestion de contenu, tels que WordPress et Drupal, exposent des API pour la récupération et la gestion du contenu. En outre, les fournisseurs de services cloud comme Amazon Web Services (AWS), Microsoft Azure et Google Cloud Platform (GCP) proposent des API étendues pour interagir avec leurs services de manière programmatique.
La sécurisation d'une API Web implique plusieurs couches de protection. Commencez par mettre en œuvre des mécanismes d'authentification et d'autorisation solides, tels que OAuth 2.0 ou les jetons JWT, pour vous assurer que seuls les clients et utilisateurs autorisés accèdent à l'API. Appliquez les principes du moindre privilège, en accordant aux utilisateurs l'accès minimum nécessaire pour effectuer leurs tâches. Appliquez la validation des entrées et le codage des sorties pour prévenir les attaques par injection. Cryptez les données sensibles en transit à l'aide de HTTPS et au repos à l'aide d'algorithmes de cryptage tels que AES. Mettez en œuvre la limitation du débit pour éviter les abus et les attaques par déni de service distribué (DDoS). Surveillez et enregistrez régulièrement l'activité de l'API afin de détecter les anomalies et les menaces potentielles pour la sécurité. Enfin, utilisez des outils de sécurité des API comme les API WAF ou les solutions de protection des applications Web et des API (WAAP) pour une sécurité supplémentaire.
Si les WAF protègent efficacement les applications web contre les attaques courantes, ils risquent de ne pas assurer une sécurité complète des API en raison de leur focalisation principale sur le trafic HTTP/HTTPS. Les API utilisent souvent des protocoles, des formats de données et des mécanismes d'authentification différents, qui nécessitent des mesures de sécurité spécialisées. Les WAF traditionnels peuvent ne pas avoir la capacité d'analyser les formats de données spécifiques aux API, comme JSON ou XML, ou de prendre en charge les protocoles RESTful ou GraphQL. En outre, les WAFs peuvent ne pas fournir le contrôle d'accès granulaire et la limitation de débit nécessaires à la sécurisation des terminaux d'API. La sécurité des API exige une approche plus ciblée, comme les WAF spécifiques aux API ou les solutions de protection des applications Web et des API (WAAP), qui offrent des fonctions de sécurité sur mesure pour protéger les API contre les menaces et les vulnérabilités.
Un pare-feu d'application web ne remplace pas un pare-feu de réseau traditionnel. Les WAFs se concentrent sur la protection des applications web contre des attaques spécifiques de la couche d'application. Les pare-feu de réseau opèrent au niveau de la couche réseau, filtrant le trafic en fonction des adresses IP, des ports et des protocoles. Les WAF et les pare-feux réseau ont des fonctions différentes dans l'architecture de sécurité d'une organisation, en fournissant des couches de protection complémentaires pour protéger les ressources du réseau et les applications web contre diverses menaces.
Disposer d'un WAF est recommandé même si vous disposez d'un pare-feu réseau. Si les pare-feu de réseau offrent une protection essentielle au niveau du réseau, ils ne sont pas toujours en mesure de se défendre contre les attaques de la couche applicative ciblant les applications web. Les WAF offrent une protection spécialisée pour les applications web en surveillant et en filtrant le trafic HTTP/HTTPS, en bloquant les requêtes malveillantes et en atténuant les vulnérabilités spécifiques aux applications. La mise en œuvre à la fois d'un pare-feu réseau et d'un WAF garantit une posture de sécurité plus complète et plus robuste, couvrant plusieurs couches de l'infrastructure de votre organisation.
Les types de WAF se répartissent en trois catégories : basés sur le réseau, basés sur l'hôte et basés sur le cloud.
- Les WAF basés sur le réseau sont des appliances matérielles déployées au sein de l'infrastructure réseau d'une organisation, fournissant une protection à faible latence pour les applications web.
- Les WAF basés sur l'hôte sont des solutions logicielles qui peuvent être installées sur le même serveur que l'application web, offrant ainsi une plus grande personnalisation et une meilleure intégration à l'environnement de l'application.
- Les WAF basés sur le cloud sont fournis en tant que service par des fournisseurs tiers, nécessitant un minimum d'installation et de maintenance sur site. Ces WAF peuvent évoluer facilement, offrir un modèle de tarification à la carte et peuvent inclure des fonctionnalités supplémentaires telles que la protection contre les attaques DDoS et l'intégration du réseau de diffusion de contenu (CDN).
Le choix du type de WAF approprié dépend des besoins, des ressources et des exigences de sécurité de l'organisation.
Les WAFs restent un élément essentiel de la sécurité des applications web modernes. Alors que les applications web continuent d'évoluer et deviennent plus complexes, les WAFs doivent également s'adapter pour faire face aux menaces et vulnérabilités émergentes. Les WAF avancés intègrent désormais des fonctionnalités telles que l'apprentissage automatique, l'analyse comportementale et la sécurité spécifique aux API, afin d'offrir une protection plus complète. Si les WAF ne suffisent pas à eux seuls à sécuriser tous les aspects d'une application, ils constituent une couche cruciale dans une stratégie de défense intégrée.
Si les WAFs sont efficaces pour se défendre contre les attaques de la couche applicative, ils ne protègent pas contre tous les types de menaces. Les WAFs peuvent ne pas protéger contre les attaques de la couche réseau, telles que le balayage de ports, l'usurpation d'adresse IP ou les attaques par inondation SYN, qui nécessitent des pare-feu réseau ou des systèmes de prévention des intrusions. Les WAFs ne défendent pas intrinsèquement contre les attaques d'ingénierie sociale, comme le hameçonnage ou le spear-phishing, qui nécessitent une formation de sensibilisation des utilisateurs et des solutions de sécurité du courrier électronique. En outre, les WAF ne peuvent pas protéger contre les menaces initiées, les comptes d'utilisateurs compromis ou les mauvaises pratiques de sécurité au sein d'une organisation. Une stratégie de sécurité exhaustive doit intégrer plusieurs couches de protection, notamment des WAF, des pare-feu, des systèmes de détection d'intrusion, la formation des utilisateurs et des politiques de sécurité solides.
Avec un WAF à liste de blocage, tout le trafic est autorisé à passer, et seules les requêtes des menaces identifiées sont bloquées. Avec un WAF à liste d'autorisation, la plupart du trafic est bloqué et seules les requêtes de confiance spécifiées dans la configuration sont autorisées à passer.
Une requête malveillante est une requête de domaine nuisible utilisée intentionnellement pour exploiter un système. Une falsification de requête intersite, par exemple, est une requête malveillante envoyée à un utilisateur authentifié qui inclut des paramètres permettant de compléter une requête d'application à l'insu de l'utilisateur.
Une attaque DDoS est un autre exemple de demande malveillante. L'objectif de l'attaque DDoS est de bloquer les requêtes légitimes adressées à un système en épuisant les ressources de ce dernier, selon des tactiques variables. Les pirates réussissent parfois une attaque DDoS en inondant un système de fausses requêtes.
La meilleure façon de protéger un système contre les attaques DDoS est de masquer chaque adresse IP associée au système. Il est également important d'ajouter les adresses IP associées à un utilisateur malveillant aux règles de sécurité pour la détection et le filtrage futurs des paquets malveillants provenant de cette source.
Une attaque DDoS est un autre exemple de demande malveillante. L'objectif de l'attaque DDoS est de bloquer les requêtes légitimes adressées à un système en épuisant les ressources de ce dernier, selon des tactiques variables. Les pirates réussissent parfois une attaque DDoS en inondant un système de fausses requêtes.
La meilleure façon de protéger un système contre les attaques DDoS est de masquer chaque adresse IP associée au système. Il est également important d'ajouter les adresses IP associées à un utilisateur malveillant aux règles de sécurité pour la détection et le filtrage futurs des paquets malveillants provenant de cette source.
Un DoS et une attaque DDoS sont tous deux des attaques par déni de service. Dans une attaque DoS, un seul ordinateur inonde un serveur de paquets TCP et UDP. Lors d'une attaque par déni de service distribué (DDoS), plusieurs systèmes fonctionnant à partir de plusieurs endroits inondent un seul système de paquets.
Une attaque au niveau de l'application est un type d'attaque DDoS. Ciblant une application, généralement un serveur web, cette attaque se produit lorsqu'un acteur malveillant utilise des robots malveillants pour demander de manière répétée une ressource à un serveur web jusqu'à ce que ce dernier soit submergé. Comme les identifiants, tels que l'adresse IP, changent à chaque requête, le serveur ne détecte pas l'attaque.
L'injection SQL désigne une technique utilisée par les pirates pour obtenir un accès non autorisé à la base de données d'une application web en ajoutant une chaîne de code malveillant à une requête de base de données.
La manipulation des cookies, également appelée empoisonnement des cookies, implique la modification d'un cookie pour obtenir des informations non autorisées sur un utilisateur, généralement dans le but de commettre une usurpation d'identité.
Les appareils communiquent via l'internet en envoyant et en recevant des paquets de protocole internet (IP). L'usurpation d'adresse IP est une technique utilisée par les pirates pour exploiter cette communication et accéder aux ordinateurs afin de les infecter avec des logiciels malveillants, de voler des données ou de planter des serveurs. L'usurpation d'adresse IP consiste à envoyer des paquets IP à partir d'une fausse adresse IP afin de dissimuler son identité ou de se faire passer pour un autre système informatique.
Un pare-feu de couche 7 est un pare-feu qui fonctionne sur la septième couche du modèle OSI, également connue sous le nom de couche d'application, ce qui permet d'appliquer des règles avancées de filtrage du trafic. Au lieu de filtrer sur la base d'une adresse IP, un pare-feu de couche 7 peut examiner les paquets de données pour déterminer s'ils contiennent des robots malveillants ou d'autres menaces.
La principale différence réside dans le fait que les WAF protègent les applications web et les terminaux exposés à l'internet, alors que le pare-feu réseau traditionnel examine le trafic sur votre réseau de confiance.
Les WAF ont évolué pour protéger contre les bots malveillants, les abus d'API et les éléments figurant dans le Top 10 de l'OWASP, y compris les attaques de la couche applicative, telles que la protection DDoS et la protection contre le vol de données.
À l'origine, les fournisseurs de CDN ont créé des WAF parce qu'ils fournissaient déjà le contenu et qu'il était logique d'y ajouter des contrôles de sécurité. Ensuite, les fournisseurs de WAF ont commencé à intégrer des fonctionnalités supplémentaires, telles que la lutte contre les robots, dans le même produit. Les WAFs ont fini par s'éloigner du périmètre pour s'installer dans le cloud. Aujourd'hui, les WAF se sont désagrégés et se sont rapprochés de l'application pour fournir un contexte de sécurité plus important.
Un CDN, ou réseau de diffusion de contenu, est un groupe de serveurs répartis géographiquement qui accélère la diffusion de contenu internet. Les CDN mettent le contenu en cache dans des serveurs proxy situés dans différentes régions, ce qui permet aux utilisateurs du monde entier de regarder une vidéo ou de télécharger un logiciel sans avoir à subir une attente exorbitante pendant le chargement du contenu.
Les différents fournisseurs de WAF peuvent être classés en trois catégories :
- Fournisseurs de CDN proposant des WAF
- WAFs des fournisseurs de services cloud (CSP)
- Fournisseurs de WAF modernes
Les fournisseurs de CDN qui proposent des WAF sont Akamai, Fastly, Cloudflare et Imperva. Parmi les fournisseurs de CSP WAF, on peut citer Cloud Armor de Google Cloud, AWS WAF, Azure Web Application Firewall et Barracuda Web Application Firewall. Les fournisseurs de WAF modernes sont Prisma Cloud, Akamai, Cloudflare, Traceable et Imperva.
PCI DSS est l'acronyme de Payment Card Industry Data Security Standard (norme de sécurité des données de l'industrie des cartes de paiement). Il s'agit d'une norme de sécurité de l'information pour les organisations traitant des cartes de crédit. Cette norme, administrée par le Conseil des normes de sécurité de l'industrie des cartes de paiement, a été créée pour réduire les cas de fraude par carte de crédit. La conformité à la norme PCI implique des normes techniques et opérationnelles que les entreprises doivent respecter pour sécuriser et protéger les données des cartes de crédit.