Agissez là où l’impact est maximal : validation des entrées, gestion des sessions, en-têtes de sécurité et protection des secrets.
Entrées & validation
- Validation côté serveur + sanitization (ne jamais faire confiance au client).
- Listes blanches pour formats attendus (regex strictes).
- Encodage côté sortie (HTML/URL/SQL params).
Sessions & cookies
- Cookies: SameSite=Strict/Lax, HttpOnly, Secure; rotation post-auth.
- Expiration courte + refresh tokens; déconnexion serveur side.
- Limiter le *session fixation*, surveiller anomalies (device/IP).
En-têtes de sécurité (Nginx)
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' https:" always;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
Secrets & dépendances
- Vault (+ rotation), jamais en clair dans le repo.
- SBOM + provenance (Sigstore), SCA en CI, seuils de sévérité.
- Politique de mises à jour de dépendances (renovate, dependabot).
ProductionPassez en CSP stricte (pas de 'unsafe-inline') dès que possible. Logguez les violations (report-to).