Content Security Policy
Content Security Policy (CSP) déclare, via un en-tête HTTP, une liste blanche de sources depuis lesquelles une page peut charger des ressources ; c'est le mécanisme central de défense contre le XSS et l'injection de contenu.
Objectif
Restreindre les sources de chargement de ressources par liste blanche, empêchant l'exécution des scripts malveillants injectés dès la source.
Mécanisme
L'en-tête Content-Security-Policy contient des directives : default-src (défaut), script-src (scripts), style-src (styles), img-src (images), connect-src (fetch/XHR), etc. Les valeurs peuvent être 'self', des domaines, des nonces ou des hashs. report-uri précise le signalement des violations. Le CSP strict utilise nonce + strict-dynamic.
Cas d’usage
- Défense contre le XSS
- Restriction des scripts tiers
- Contrôle des scripts inline
- Surveillance des violations
Exemples
- entrée
script-src 'self' 'nonce-abc123'OutputOnly same-origin + nonce scripts can executeWhitelist
Erreurs courantes
- CSP includes unsafe-inline, weakening protection
- Replace unsafe-inline with a nonce or hash
Termes associés
CSP
CSP (Content Security Policy) déclare, via un en-tête HTTP, quelles origines de ressources une page peut charger, réduisant la surface d'attaque du XSS et de l'injection de données. GLOSSAIRE
XSS
XSS (cross-site scripting) est l'attaque où l'attaquant injecte des scripts malveillants dans une page qui s'exécutent dans le navigateur d'autres utilisateurs ; il existe sous formes stockée, réfléchie et basée DOM. GLOSSAIRE
Security Header
Les en-têtes HTTP de sécurité sont des en-têtes de réponse qui ordonnent au navigateur d'activer des mécanismes de sécurité, comme CSP, HSTS et X-Frame-Options. GLOSSAIRE