Le plug-in WAF utilise un moteur de règles basé sur ModSecurity pour bloquer les requêtes suspectes. Il prend en charge l'ensemble de règles de base (CRS) OWASP ModSecurity afin d'offrir une protection de base aux sites web.
Le plug-in WAF s'appuie sur des règles ModSecurity open source. Les règles par défaut sont statiques et ne peuvent pas identifier les derniers risques de sécurité ni mettre à jour l'ensemble de règles en temps réel. Pour une protection renforcée, activez la protection Web Application Firewall (WAF) pour les instances Cloud-native API Gateway. Pour plus d'informations, consultez la rubrique Activer WAF.
Type de plug-in
Protection de la sécurité.
Champs
|
Champ |
Type de données |
Obligatoire |
Valeur par défaut |
Description |
|
useCRS |
bool |
Non |
false |
Indique s'il faut activer OWASP CRS. Pour plus de détails, consultez la page coreruleset. |
|
secRules |
array of string |
Non |
- |
Règles de protection personnalisées pour le plug-in WAF. Pour connaître la syntaxe, consultez la documentation ModSecurity. |
Exemples de configuration
Utiliser la règle par défaut
Activez la règle par défaut pour bloquer les requêtes suspectes :
useCRS: true
Activez la règle par défaut en mode détection uniquement, sans bloquer les requêtes :
useCRS: true
secRules:
- "SecRuleEngine DetectionOnly"
Utiliser des règles de protection personnalisées
useCRS: true
secRules:
- "SecRule REQUEST_URI \"@streq /admin\" \"id:101,phase:1,t:lowercase,deny\""
- "SecRule REQUEST_BODY \"@rx maliciouspayload\" \"id:102,phase:2,t:lowercase,deny\""
Les règles ci-dessus bloquent les requêtes suivantes :
curl http://example.com/admin
curl http://example.com -d "maliciouspayload"
Activer les règles de protection pour une route ou un nom de domaine spécifique
useCRS: true
secRules:
- "SecRule REQUEST_URI \"@streq /admin\" \"id:101,phase:1,t:lowercase,deny\""
- "SecRule REQUEST_BODY \"@rx maliciouspayload\" \"id:102,phase:2,t:lowercase,deny\""
Appliquez les configurations de plug-in suivantes à la route route-1 :
secRules:
- "SecAction \"id:102,phase:1,deny\""
Appliquez les configurations de plug-in suivantes aux noms de domaine *.example.com et test.com :
secRules:
- "SecAction \"id:102,phase:1,pass\""
La route
route-1est définie lors de la création de la route Cloud-native API Gateway. Si une requête client correspond à cette route, les règles au niveau de la route s'appliquent.Les noms de domaine
*.example.comettest.comsont comparés aux noms de domaine présents dans les requêtes. Si une requête client correspond à l'un de ces noms de domaine, les règles au niveau du domaine s'appliquent.Les règles s'appliquent dans l'ordre de leur configuration. Dès qu'une règle correspond, les règles suivantes sont ignorées.