CSP-Generator: Content-Security-Policy erstellen
CSP-Generator: Content-Security-Policy aus Direktiven wie script-src, style-src und frame-ancestors zusammenstellen, mit Warnungen und fertigen Zeilen für Server.
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
So schützt eine Content Security Policy
Die Content Security Policy (CSP) ist ein HTTP-Header, mit dem Sie dem Browser sagen, aus welchen Quellen er Skripte, Styles, Bilder und andere Ressourcen laden darf. Gelingt es einem Angreifer, Code in Ihre Seite einzuschleusen (Cross-Site-Scripting), blockiert der Browser ihn, wenn die Quelle nicht erlaubt ist. Der CSP-Generator setzt die Richtlinie aus einzelnen Direktiven zusammen, ergänzt fehlende Anführungszeichen bei Schlüsselwörtern wie 'self' und warnt vor riskanten Angaben.
Die wichtigste Direktive ist script-src. 'unsafe-inline' erlaubt jedes Inline-Skript und nimmt der CSP damit einen großen Teil ihrer Wirkung. Besser sind eine Nonce, also ein Zufallswert, den Ihr Server bei jeder Antwort neu erzeugt und in die erlaubten script-Elemente schreibt, oder Hashes einzelner Skripte. Mit frame-ancestors legen Sie fest, wer Ihre Seite in einem iframe einbetten darf; das ersetzt den älteren Header X-Frame-Options.
Führen Sie eine neue Richtlinie zuerst als CSP Header im Modus Report-Only ein. Der Browser meldet Verstöße dann in der Entwicklerkonsole, blockiert aber nichts. Erst wenn keine berechtigten Ressourcen mehr auftauchen, schalten Sie auf den normalen Header um. Per Meta-Tag funktionieren frame-ancestors, report-uri und sandbox nicht; nutzen Sie dafür den HTTP-Header.
Anleitung: CSP-Generator in 4 Schritten
- Mit default-src den Standard für alle Ressourcen setzen, meist 'self'.
- Für script-src, style-src, img-src, connect-src und die übrigen Direktiven nur die Quellen eintragen, die Ihre Seite wirklich braucht.
- Häkchen wie „Google Fonts erlauben“, „Nonce für Skripte“ oder „upgrade-insecure-requests“ setzen und frame-ancestors festlegen.
- Zunächst „Nur melden (Report-Only)“ aktivieren, optional eine report-uri angeben und die Zeilen für Header, Apache, nginx oder Meta-Tag kopieren.
Typische Anwendungsfälle
- Eine bestehende Website gegen Cross-Site-Scripting absichern, ohne gleich Inhalte zu blockieren, dank Report-Only.
- Clickjacking verhindern, indem frame-ancestors festlegt, wer die Seite einbetten darf.
- Externe Dienste wie Google Analytics 4 oder YouTube-Einbettungen gezielt freigeben.
Häufige Fragen
Wo trage ich den CSP-Header ein?
In der Serverkonfiguration (Apache, nginx), im Code Ihrer Anwendung oder bei Ihrem CDN. Das Werkzeug liefert die Zeilen für Apache mit mod_headers und für nginx gleich mit.
Warum funktioniert meine Seite nach dem Einschalten nicht mehr?
Die Richtlinie blockiert eine Quelle, die Ihre Seite braucht, etwa ein externes Skript oder Inline-Styles. Die Entwicklerkonsole des Browsers nennt die blockierte Adresse. Testen Sie deshalb zuerst mit Report-Only.
Brauche ich default-src?
Ja, als Rückfall für alle Ressourcentypen ohne eigene Direktive. Ohne default-src sind nicht genannte Typen unbeschränkt.
Was ist eine Nonce in der CSP?
Ein Zufallswert, den der Server bei jeder Antwort neu erzeugt. Er steht in der CSP als 'nonce-…' und als Attribut nonce="…" an jedem erlaubten script-Element. Ein Angreifer kennt den Wert nicht und kann ihn nicht vorhersagen.
Wie teste ich eine Content Security Policy?
Setzen Sie die Richtlinie zuerst als Content-Security-Policy-Report-Only und rufen Sie alle wichtigen Seiten auf. Die Entwicklerkonsole des Browsers zeigt jede Ressource, die blockiert würde. Passen Sie die Direktiven an, bis keine berechtigten Meldungen mehr erscheinen.
Was bedeutet 'unsafe-eval' in der CSP?
Es erlaubt Skripten, Text als Code auszuführen, etwa mit eval() oder new Function(). Das öffnet Angriffswege und sollte nur gesetzt werden, wenn eine Bibliothek es zwingend braucht.
Das könnte auch helfen
Hash-Generator
MD5, SHA-1, SHA-256, SHA-384 und SHA-512 für Text oder Datei berechnen und vergleichen.
ÖffnenHMAC-Generator
HMAC mit SHA-256, SHA-512, SHA-1 oder MD5 berechnen und Webhook-Signaturen prüfen.
ÖffnenPasswort-Generator
Sichere Zufallspasswörter mit wählbarer Länge und Zeichengruppen, inklusive Entropie in Bit.
ÖffnenPasswort-Stärke prüfen
Passwort testen: Entropie, typische Muster, häufige Passwörter und grobe Knackzeit.
ÖffnenPassphrase-Generator
Merkbare Passphrasen aus einer deutschen Wortliste mit über 2.000 Wörtern, nach Diceware-Art.
ÖffnenToken-Generator
Zufalls-Token als Hex, Base64URL oder alphanumerisch erzeugen, etwa für API-Keys und Secrets.
Öffnen