Aller au contenu
uencoder

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'
    Output
    Only same-origin + nonce scripts can execute

    Whitelist

Erreurs courantes

CSP includes unsafe-inline, weakening protection
Replace unsafe-inline with a nonce or hash

Termes associés

References