waf : le mode dit en clair par la sonde ; journal du passage en blocage
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
4678ca0223
commit
b01de94493
2 changed files with 19 additions and 1 deletions
18
CHANGELOG.md
18
CHANGELOG.md
|
|
@ -1,5 +1,23 @@
|
|||
# CHANGELOG — Set-OPS
|
||||
|
||||
## 2026-09-29 (42) — Le WAF des frontaux passe en blocage
|
||||
|
||||
**Avant de basculer, le journal d'audit relu** : chez Chezlepro, la seule transaction signalée
|
||||
était l'injection de test ; chez Technolibre, les requêtes du prototype (dont `?q=bonjour`
|
||||
marqué 920350 parce qu'il visait une adresse IP brute). Aucune requête légitime signalée — sur
|
||||
un trafic encore mince, ce qui est dit dans la déclaration.
|
||||
|
||||
**Par locataire** (`group_vars/serveur_web_frontal.yml` : `serveur_web_frontal_waf_mode: "On"`),
|
||||
pas dans le défaut du rôle : un nouveau locataire commence en détection et observe.
|
||||
|
||||
**Éprouvé depuis l'Internet, sur `essai.chezlepro.ca`** : page et recherche normales → 200 ;
|
||||
injection SQL → 403 ; script injecté (XSS) → 403 ; remontée de répertoires → 400 (nginx la
|
||||
refuse avant même le WAF). La sonde `frontal` dit désormais le mode en clair (« blocage »,
|
||||
« détection seule »).
|
||||
|
||||
Un faux positif se corrige par une exclusion ciblée du CRS
|
||||
(`REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf`), pas en revenant en détection.
|
||||
|
||||
## 2026-09-29 (41) — Le chemin public éprouvé de bout en bout : Internet → `.61` → WAF → dorsal → forge du site
|
||||
|
||||
**Le contenu vient de la forge du site.** Organisation `essais` (distincte du génome), dépôt
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
# refuse fait echouer `nginx -t`).
|
||||
set -uo pipefail
|
||||
|
||||
MODE='{{ serveur_web_frontal_waf_mode }}'
|
||||
MODE='{{ {'On': 'blocage', 'DetectionOnly': 'detection seule', 'Off': 'ETEINT'}.get(serveur_web_frontal_waf_mode, serveur_web_frontal_waf_mode) }}'
|
||||
EXPOSITIONS="{{ serveur_web_frontal_expositions | default([]) | map(attribute='fqdn') | unique | sort | join(' ') }}"
|
||||
|
||||
systemctl is-active --quiet nginx || { echo "Le frontal (nginx) n'est pas actif : les services publics sont injoignables."; exit 2; }
|
||||
|
|
|
|||
Loading…
Reference in a new issue