Intégrer les politiques WAF de F5 et NGINX à Controller App Security

NGINX | 15 septembre 2021

Depuis que NGINX a rejoint F5 il y a deux ans, l’un des principaux avantages pour nos clients a été l’intégration de l’expertise de pointe de F5 en matière de sécurité dans les produits NGINX. F5 NGINX App Protect WAF et F5 NGINX Controller App Security utilisent la même technologie de pare-feu d’applications Web (WAF) que F5 Advanced WAF, F5 Silverline WAF et les autres solutions de sécurité F5. Bien que chaque produit présente un format différent afin de répondre aux besoins d’environnements, de scénarios de déploiement et de cas d’usage de gestion spécifiques, les clients peuvent avoir l’assurance que le même moteur d’application des politiques de sécurité, reconnu et éprouvé, les protège contre les attaques Web les plus sophistiquées.

Les solutions de sécurité NGINX et F5 s’appuient sur la technologie WAF de pointe de F5

La technologie WAF commune permet également aux clients de F5 de conserver les politiques standardisées déjà approuvées par leurs équipes de sécurité lorsqu’ils migrent d’un environnement traditionnel utilisant un produit tel que F5 Advanced WAF vers des environnements conteneurisés et cloud, pour lesquels NGINX App Protect WAF est mieux adapté. La portabilité des politiques WAF entre les différents produits permet aux clients de F5 et de NGINX de garantir rapidement et facilement une posture de sécurité robuste, cohérente et conforme.

Lorsque nous avons lancé NGINX Controller App Security pour l’Application Delivery Module, celui-ci était fourni avec une politique par défaut axée sur la protection contre le Top 10 de l’OWASP et d’autres menaces, tout en réduisant au minimum les faux positifs. Avec Controller App Security pour la version 3.20 de l’Application Delivery Module, vous pouvez désormais importer vos politiques NGINX App Protect WAF personnalisées et les distribuer sur l’ensemble de vos déploiements gérés. C’est ce que nous appelons Apportez votre propre politique NGINX App Protect WAF (BYO App Protect Policy).

Pour en savoir plus, poursuivez votre lecture et regardez cette présentation vidéo :

 

Maintenir des politiques WAF cohérentes tout au long du parcours de modernisation des applications

Nombre de nos clients disposant d’environnements traditionnels de mise à disposition d’applications commencent par utiliser F5 Advanced WAF ou BIG‑IP ASM. À mesure qu’ils avancent dans la modernisation de leurs applications, ils peuvent tirer parti de NGINX App Protect et de NGINX Controller App Security pour les nouvelles applications qui nécessitent une approche du déploiement des services WAF adaptée aux pratiques DevOps.

À lui seul, NGINX App Protect WAF sécurise les applications modernes grâce à des fonctionnalités allant de la protection contre les dix principales menaces de l’OWASP et d’autres menaces avancées à la définition simplifiée et déclarative des politiques. L’adoption de Controller App Security pour gérer les instances de NGINX App Protect WAF offre des avantages supplémentaires :

  • Les équipes de sécurité bénéficient d’emblée d’une meilleure visibilité et peuvent fournir aux équipes de développement et DevOps des politiques WAF approuvées, ainsi que des fonctionnalités en libre-service pour le provisionnement et la gestion des instances NGINX App Protect WAF. Mieux encore, une seule instance de Controller peut prendre en charge plusieurs équipes.
  • Les équipes de développement et DevOps peuvent utiliser l’API et l’interface graphique de Controller qu’elles connaissent déjà pour appliquer les politiques WAF approuvées à leurs applications, sans avoir besoin de comprendre en détail ces politiques ni la configuration des instances NGINX App Protect WAF qui les appliquent sur le plan de données.

Schéma de topologie montrant le module complémentaire NGINX Controller App Security fonctionnant sur le plan de gestion et NGINX App Protect WAF fonctionnant sur le plan de données
Controller App Security utilise NGINX App Protect WAF pour appliquer les politiques sur le plan de données

Préparation des politiques WAF F5 pour Controller App Security

Pour vous aider à maintenir des politiques cohérentes sur toutes les implémentations de WAF F5 et NGINX au fil de la modernisation de vos applications, nous mettons à votre disposition le convertisseur de politiques NGINX App Protect Policy Converter. Il convertit les politiques F5 Advanced WAF (au format XML) en politiques NGINX App Protect WAF (au format JSON). Vous pouvez ensuite transmettre les politiques converties à Controller App Security comme décrit dans la section suivante.

Voici les étapes à suivre pour convertir une politique F5 Advanced WAF en politique NGINX App Protect WAF, avec des liens vers les instructions.

Schéma illustrant les étapes de conversion d’une politique F5 Advanced WAF en politique NGINX App Protect
Conversion d’une politique F5 Advanced WAF en politique NGINX App Protect

  1. Téléchargez et installez l’image Docker de NGINX App Protect Policy Converter.
  2. Exportez la politique F5 Advanced WAF (les instructions font référence aux « politiques de sécurité BIG-IP ASM », mais s’appliquent également aux politiques F5 Advanced WAF).
  3. Convertissez la politique en une politique NGINX App Protect WAF au format JSON.

Importation de vos politiques NGINX App Protect WAF dans Controller App Security

Avec Controller App Security pour la version 3.20 du module Application Delivery, vous pouvez utiliser le processus BYO App Protect Policy pour importer des politiques WAF NGINX App Protect et les distribuer sur toutes vos instances NGINX App Protect gérées. La politique WAF NGINX App Protect peut être native ou avoir été convertie depuis F5 Advanced WAF, comme décrit dans la section précédente.

Le processus BYO App Protect Policy utilise un objet Controller appelé « Security Strategy », un conteneur logique pour les politiques liées à la sécurité, notamment les politiques WAF NGINX App Protect personnalisées. Vous référencez ensuite la Security Strategy dans une App afin d’appliquer à celle-ci la politique WAF associée.

Pour plus d’informations sur le processus BYO App Protect Policy, consultez la documentation du produit.

Consultez les instructions des sections suivantes pour l’interface de votre choix :

Une fois ces étapes terminées, les mises à jour apportées à une politique WAF importée dans Controller App Security à l’aide du processus BYO App Protect Policy sont automatiquement propagées à tous les composants d’application qui font référence à la stratégie de sécurité associée.

Avec Controller App Security pour la version 3.20 du module Application Delivery, seules les politiques WAF définies dans un fichier unique sont prises en charge. La prise en charge des politiques WAF utilisant des références externes (politiques WAF représentées par plusieurs fichiers) est prévue dans une prochaine version.

Utilisation de l’API

Suivez les étapes ci-dessous pour importer une politique WAF dans Controller App Security à l’aide de l’API Controller :

  1. Transmettez la politique WAF NGINX App Protect à l’aide d’une requête PUT au point de terminaison Security Policy :
https://{{CONTROLLER_FQDN}}/api/v1/security/policies/{{policy}}
  1. avec un objet JSON semblable au suivant :
{
    "metadata": {
        "name": "lowriskapppolicy",
        "displayName": "Low-Risk App Protect Policy",
        "description": "Corporate WAF policy for internal low-risk apps",
    },
    "desiredState": {
        "content": {
            "policy": {
                "name": "lowriskapppolicy",
                "template": {
                    "name": "POLICY_TEMPLATE_NGINX_BASE"
                },
                "applicationLanguage": "utf-8",
                "enforcementMode": "blocking",
                "signatures": [
                    {
                        "signatureId": 123458888,
                        "enabled": false
                    },
                    {
                        "signatureId": 304500123,
                        "enabled": false
                    }
                ],
            }
        }
    }
}
  1. Créez une stratégie de sécurité qui fait référence à la politique WAF à l’aide d’une requête PUT envoyée au point de terminaison Security Strategies :
https://{{CONTROLLER_FQDN}}/api/v1/security/strategies/{{strategy}}
  1. avec un objet JSON semblable au suivant :
{
    "metadata": {
        "name": "lowriskstrategy",
        "displayName": "Low-Risk App Strategy",
        "description": "Corporate strategy for internal low-risk apps",
    },
    "desiredState": {
        "content": {
            "securityPolicyRef": "/security/policies/lowriskapppolicy"
        }
    }
}
  1. Appliquez la politique WAF à un composant d’application (tel que l’URI d’une application) afin de référencer la stratégie de sécurité à l’aide d’une requête PUT ou POST envoyée au point de terminaison du composant d’application :
https://{{Controller_FQDN}}/api/v1/services/environments/{{env}}/apps/{{app}}/components/{{component}}
  1. avec un objet JSON semblable au suivant :
{
    "metadata": {
        "name": "main"
    },
    "desiredState": {
        "ingress": {
            "uris": {
                "/": {
                }                   
            },
. . .  

        "security": {
            "strategyRef": {
                "ref": "/security/strategies/lowriskstrategy"
            },
            "waf": {
                "isEnabled": true
            }
        },
. . . 
}

Utilisation de l’interface graphique

Suivez les étapes ci-dessous pour importer et appliquer une politique WAF dans Controller App Security à l’aide de l’interface graphique de Controller :

  1. Créez une stratégie de sécurité sur la page « Créer une stratégie de sécurité ».
  2. Si la stratégie WAF NGINX App Protect est déjà disponible dans Controller, sélectionnez-la dans le menu déroulant du champ Stratégie. Si elle ne figure pas encore dans la liste, cliquez sur + CRÉER. Dans la fenêtre contextuelle Créer une stratégie de sécurité qui s’affiche, chargez un fichier contenant la stratégie WAF NGINX App Protect au format JSON.
  3. Sur la page Modifier le composant d’application de l’application à laquelle vous appliquez la politique WAF, sélectionnez la stratégie de sécurité associée.

Partager des politiques au sein de NGINX Controller

Après avoir importé une politique dans Controller App Security à l’aide du processus BYO App Protect Policy, vous pouvez la partager avec toutes les applications définies dans Controller, même si elles sont gérées par des équipes différentes. Le fait que plusieurs composants d’application Controller (ou sous-composants d’une application, tels que des URI) fassent référence aux mêmes politiques permet d’harmoniser votre posture de sécurité dans de nombreuses applications et API.

Schéma montrant comment plusieurs applications peuvent faire référence à la même politique WAF BYO App Protect
Plusieurs applications peuvent faire référence à la même politique

Controller centralise la gestion et le versionnement des politiques WAF. Lorsque vous publiez une nouvelle version d’une politique, celle-ci est mise à jour dans tous les composants Controller App qui y font référence, ce qui simplifie considérablement les opérations.

Résumé

La plateforme technologique F5 WAF permet de transférer et de réutiliser les mêmes politiques de protection WAF afin d’assurer une posture de sécurité standardisée pour l’ensemble des applications. Cette philosophie de conception permet également de prendre en charge tous vos cas d’usage protégés par les solutions WAF de F5 et NGINX, rendant ainsi la gestion et le déploiement de la sécurité des applications plus rapides, plus simples et plus reproductibles.

Grâce à la fonctionnalité BYO App Protect Policy de Controller App Security (disponible dans Controller ADM 3.20), vous pouvez désormais utiliser vos stratégies WAF NGINX App Protect personnalisées afin de protéger plus facilement de nouvelles applications à l’aide de stratégies robustes, cohérentes et éprouvées, créées avec NGINX App Protect WAF ou F5 Advanced WAF. Mieux encore, avec BYO App Protect Policy et Controller App Security, une seule stratégie validée peut être appliquée à de nombreuses applications, ce qui simplifie et rationalise considérablement les processus de modification des stratégies.

NGINX Controller continue de permettre aux équipes de sécurité de fournir des services de sécurité en libre-service aux équipes chargées des applications, aidant ainsi les entreprises à gagner à la fois en productivité et en sécurité.

Vous souhaitez essayer vous-même NGINX Controller App Security ? Commencez votre essai gratuit de 30 jours de NGINX Controller dès aujourd’hui ou contactez-nous pour discuter de vos cas d’usage.


Partager

Articles de blog associés

Tendances actuelles des technologies cloud natives, de l’ingénierie de plateforme et de l’IA
NGINX | 13/10/2025

Tendances actuelles des technologies cloud natives, de l’ingénierie de plateforme et de l’IA

Découvrez les principaux enseignements tirés des réponses à l’enquête annuelle F5 NGINX sur les dernières tendances en matière de technologies cloud natives, de sécurité, d’ingénierie de plateforme et d’IA.

Quels contrôleurs Ingress NGINX sont affectés par les vulnérabilités CVE-2022-4886, CVE-2023-5043 et CVE-2023-5044 ?
NGINX | 03/11/2023

Quels contrôleurs Ingress NGINX sont affectés par les vulnérabilités CVE-2022-4886, CVE-2023-5043 et CVE-2023-5044 ?

Lorsque de nouvelles CVE sont signalées, il est facile de ne plus savoir si elles concernent un outil de contrôleur Ingress NGINX particulier, car il existe plusieurs projets. Cet article présente les CVE et explique comment distinguer les différents projets de contrôleurs Ingress afin de dissiper toute confusion.

Votre API est-elle en temps réel ? Testez sa latence avec l’outil rtapi de NGINX
NGINX | 11/03/2020

Votre API est-elle en temps réel ? Testez sa latence avec l’outil rtapi de NGINX

Votre API répond-elle aux requêtes en moins de 30 ms ? Si ce n’est pas le cas, il ne s’agit pas d’une API en temps réel offrant la faible latence exigée par la grande majorité des organisations. Mesurez la latence de votre API avec l’outil rtapi de NGINX et découvrez comment NGINX peut l’aider à offrir une réactivité en temps réel.

Un testeur d’expressions régulières pour NGINX et NGINX Plus
NGINX | 11/06/2019

Un testeur d’expressions régulières pour NGINX et NGINX Plus

Le testeur d’expressions régulières (regex) pour NGINX et NGINX Plus vous évite de tâtonner en vous indiquant si une expression régulière utilisée dans un bloc location ou map correspond aux valeurs comme prévu. Il génère la configuration appropriée et affiche les valeurs des groupes de capture.

Caches partagés avec les clusters de cache NGINX Plus, partie 1
NGINX | 24/01/2017

Caches partagés avec les clusters de cache NGINX Plus, partie 1

Optimisez la capacité de votre cache web en le répartissant entre plusieurs serveurs de cache web NGINX ou NGINX Plus. Découvrez comment procéder dans cet article.

Introduction aux microservices
NGINX | 19/05/2015

Introduction aux microservices

Les microservices suscitent actuellement beaucoup d’intérêt. Cet article de blog est le premier d’une série de sept consacrée à la conception, au développement et au déploiement de microservices.