Zum Inhalt springen
uencoder

CSP

CSP (Content Security Policy) deklariert über einen HTTP-Header, welche Ressourcenquellen eine Seite laden darf, und verkleinert die Angriffsfläche für XSS und Dateninjektion.

Zweck

Wehrt XSS und Content-Injection ab, indem die Quellen, aus denen eine Seite Ressourcen laden darf, per Whitelist beschränkt werden.

Mechanismus

Der Header Content-Security-Policy deklariert Direktiven: default-src legt die Standardquelle fest, script-src die Skriptquellen, style-src die Style-Quellen usw. Ein Nonce oder Hash erlaubt Inline-Skripte, report-uri meldet Verstöße. Striktes CSP nutzt Nonce plus strict-dynamic.

Anwendungsfälle

  • XSS-Minderung
  • Einschränkung von Drittanbieter-Skripten
  • Kontrolle von Inline-Skripten
  • Verstoßberichte

Beispiele

  • Eingabe
    script-src 'self' 'nonce-abc'
    Output
    Only same-origin and nonce-tagged scripts are allowed

    Whitelisting

Häufige Fehler

An overly strict CSP breaks page functionality
Observe first with Report-Only mode

Verwandte Begriffe

References