Zum Inhalt
  • ProduktePfeil nach unten

Grundlegendes zur Inhaltssicherheitsrichtlinie für Websites im Jahr 2024

Sicherheit ist wichtig. Das gilt insbesondere heute, in unserer zunehmend digitalisierten Welt. Sicherheit geht dabei über die physische Abwehr verschiedener Angriffsarten hinaus.

Dazu gehören auch der Datenschutz im Internet und der Aufbau einer Abwehr gegen Schadcode oder andere Code-Injection-Angriffe.

Dieser Artikel konzentriert sich auf eine Sicherheitsmaßnahme, die Inhaltssicherheitsrichtlinie.

Die Content Security Policy ist in erster Linie für die Clientseite von Webanwendungen konzipiert. Die Sicherheitsmaßnahme bietet modernen Browsern umfassenden Schutz vor schädlichen Inhalten.

Lesen Sie weiter, um mehr über diese Sicherheitsfunktion und ihre Einrichtung zu erfahren.

Was ist die Inhaltssicherheitsrichtlinie einer Website?

Eine Content Security Policy (CSP) ist ein Sicherheitsstandard. Sie schützt Websites und Anwendungen vor verschiedenen Angriffen wie Cross-Site-Scripting (XSS). CSP ist ein HTTP-Antwortheader, der die Sicherheit von Webseiten auf den wichtigsten modernen Browsern. 

Der Content Security Policy Header funktioniert, indem er die Inhaltsquellen (wie Skripts und Bilder) einschränkt, die eine Webseite laden kann und von denen sie geladen werden kann. 

Quelle

Wenn Sie den HTTP-Antwortheader für Content Security Policy (CSP) in einem Browser implementieren, der diesen nicht unterstützt, ignoriert der Browser ihn. Standardmäßig wird die Same-Origin-Policy (eine weitere Schutzmaßnahme gegen Schadcode) verwendet. Der Browser kann jedoch weiterhin mit einem Server kommunizieren, der CSP unterstützt, und umgekehrt.

Beachten Sie, dass CSP eine zusätzliche Sicherheitsebene gegen verschiedene Arten von Schwachstellen darstellt. Das Schlüsselwort hier ist „zusätzlich“. Mit anderen Worten: Sie müssen Ihre Webseite weiterhin mit anderen Sicherheitsmaßnahmen schützen. 

Erwähnenswert ist auch, dass CSP Ihre Webseite nicht vor Angriffen schützt. Es erkennt diese Angriffe jedoch effektiv und reduziert deren Ausnutzungsrisiko erheblich. 

Bedeutung der Sicherheitsrichtlinie für Website-Inhalte

Sie implementieren den Content Security Policy-Header (CSP), um die Inhaltsquellen zu steuern, die Ihre Website laden darf. Die CSP-Implementierung kann auf jeder Website verwendet werden, egal ob es sich um einen Onlineshop oder einen Blog handelt. 

Es hilft:

XSS-Angriffe abschwächen

Wir haben bereits erwähnt, dass CSP dazu beitragen kann, XSS-Angriffe einzudämmen. Aber was genau sind diese und wie kann CSP helfen? 

XSS ist eine Sicherheitslücke, die es Angreifern ermöglicht, Schadcode in Webseiten einzuschleusen. XSS-Sicherheitslücken auf Ihrer Website öffnen Türen für Angriffe wie Datendiebstahl und Website-Defacement. Fast 65 % aller Websites sind XSS-Sicherheitslücken ausgesetzt.

CSP schützt vor XSS-Angriffen, indem es Inline-Skripte einschränkt. Es verhindert außerdem, dass Ihre Webseite Remote-Skripte, d. h. Skripte von beliebigen Servern, lädt.

CSP schützt Ihre Website außerdem vor XSS-Angriffen, indem es die Übermittlung von HTML-Formularen kontrolliert. Selbst wenn Besucher Kreditkartendaten für den Kauf eines Produkts angeben oder LLC-Mitgliedszertifikate online ausfüllen, bleiben ihre Daten geschützt. CSP schränkt grundsätzlich die Verwendung der Daten aus diesen Formularen ein. Darüber hinaus schränkt CSP den HTML-Objekt-Tag ein.

CSP schwächt außerdem XSS-Angriffe ab, indem es Serveradministratoren ermöglicht, die Domänennamen anzugeben, die der Browser als gültige Quellen ausführbarer Skripts betrachten soll.

Letztendlich wird Angreifern dank CSP das Einschleusen schädlicher Skripte untersagt.

Clickjacking verhindern

Obwohl CSP in erster Linie eingeführt wurde, um die Angriffsfläche von XSS-Angriffen zu verringern, wurde es auch entwickelt, um Schutz vor Angriffen auf Webanwendungen wie Clickjacking zu bieten.

Beim Clickjacking bringt der Angreifer einen Benutzer dazu, auf eine Schaltfläche oder einen Link auf einer als etwas anderes getarnten Webseite zu klicken. 

Wenn Sie keine Dienste von Anbietern für Identitätsdiebstahlschutz in Anspruch nehmen, können Sie Opfer von Clickjacking-Angreifern werden. Sie werden es erst bemerken, wenn bereits erheblicher Schaden entstanden ist, beispielsweise durch Geldüberweisungen oder Online-Käufe. 

In der Vergangenheit wurde der X-Frame-Options-Header zur Bekämpfung von Clickjacking verwendet. Eine neue Version von CSP, CSP Level 2, wurde entwickelt, um die gleiche Aufgabe zu erfüllen. Sie können jedoch weiterhin die alte Option zum Schutz verwenden.

CSP Level 2 enthält ein Anti-Clickjacking Frame-Vorfahren Richtlinie. Die Frame-Vorfahren Die Direktive gibt die URL der übergeordneten Seite an, die eine Webseite in einen Frame, ein iFrame oder ein Objekt auf der aktuellen Ressource einbetten darf. 

Im Wesentlichen schränken Sie die Seiten ein, die die aktuelle Seite in einen Frame einbetten dürfen. Ein Beispiel für die Verwendung von Frame-Vorfahren Die Direktive lautet:

content-security-policy: frame-ancestors 'self' '\*.internxt.com' ;      

Sie können auch die Tasten Frame-Vorfahren -Direktive mit der Direktive „default-src“ und den Direktiven „script-src“, um Clickjacking-Angriffe zu reduzieren.

Welche anderen Angriffe verhindert CSP?

Angreifer können unter anderem durch ungesicherte Protokolle gefährdet werden. Sie können den Content Security Policy Header so konfigurieren, dass das HTTPS-Protokoll erzwungen wird. Fügen Sie einfach jeder URL in Ihrer Whitelist das Präfix https:// hinzu. Sie können HTTPS auch mit der CSP-Direktive „block-all-mixed“ erzwingen. 

Weitere Schwachstellen, die Sie mit CSP beheben können, sind:

  1. Dynamischer Javascript-Code mit eval()
  2. Nicht zugewiesenes Inline-Javascript in tags
  3. Dynamisches CSS mit CSSStylesheet.insertRule()
  4. Nicht zugewiesene Inline-CSS-Anweisungen in tags

So richten Sie eine Inhaltssicherheitsrichtlinie ein

Die Einrichtung von CSP ist ein wesentlicher Schritt zum Schutz Ihrer Webanwendung. Sie können den CSP-Schutz für Ihre Website auf drei Arten einrichten.

Content-Security-Policy-Header

Bei dieser Methode wird der HTTP-Antwortheader „content-security-policy“ vom Webserver gesendet. Beispiel:

Inhaltssicherheitsrichtlinie: …

Stellen Sie sicher, dass Sie den Header in allen HTTP-Antworten konfigurieren.

Meta-Tags zur Inhaltssicherheitsrichtlinie 

Falls Sie den CSP-HTTP-Antwortheader nicht verwenden können, lässt sich CSP für Ihre Website dennoch konfigurieren, indem Sie das Meta-Element „HTTP-equiv“ in der HTML-Datei verwenden. So sieht eine Zeile des CSP-Meta-Tags aus:

Diese Methode schränkt die nutzbaren CSP-Funktionen ein. Beispielsweise können Sie weder Framing-Schutz noch einen Endpunkt zur Protokollierung von CSP-Verletzungen verwenden.

Content-Security-Policy – ​​Nur-Bericht-Header 

Dieser Header weist den Browser an, Verstoßberichte des CSP auszudrucken und sie mithilfe der Anweisungen „report-to“ und „report-uri“ an einen Verstoßendpunkt zu übermitteln. Beispiel:

content-security-policy-report-only: script-src 'self'; 

Bericht an CSP-Reporting-Endpunkt 

Der Hauptunterschied zwischen diesem Header und dem regulären CSP-HTTP-Antwortheader besteht darin, dass ersterer die Richtlinie nicht erzwingt. Browser erlauben Websites jedoch die Verwendung sowohl des „Content-Security-Policy“-Headers als auch des „Content-Security-Policy-Report-Only“-Headers.

Details der Implementierung

Sie müssen entscheiden, welche Richtlinien Sie in Ihre Sicherheitsrichtlinie aufnehmen möchten. Richtlinien sind Regeln, die die Arten von Inhalten regeln, auf die die Webbrowser der Benutzer zugreifen dürfen, wie z. B. Bilder, Skriptdateien und Stylesheets.

Dieser Schritt erfolgt, bevor Sie den Inhalt Ihrer Website schreiben und die Sichtbarkeit Ihrer Website sicherstellen. Diese letzten beiden Dinge sind selbst für Neulinge beim Erstellen einer Website recht einfach. Einer der häufigsten Generative KI-Anwendungsfälle ist die Erstellung von Inhalten. Sie müssen lediglich die richtigen Eingabeaufforderungen einfügen, und die KI erstellt die gewünschten Qualitätsinhalte. 

Mit den vielen kostenlosen SEO-Ressourcen und -Tools, die zur Verfügung stehen, können Sie auch die gesamte SEO-Arbeit selbst durchführen, um die Sichtbarkeit Ihrer Website zu erhöhen, obwohl es immer noch besser ist, die Dienste eines Herstellers, eines Rechtsanwalts oder SaaS-SEO-Agentur mit großer Erfahrung und Expertise für beste Ergebnisse. 

Andererseits ist es für Anfänger deutlich schwieriger, spezifische Regeln für jede Domain und Subdomain Ihrer Website zu erstellen. Sie lernen zunächst die verfügbaren Regeln und Probleme kennen. Anschließend wählen Sie aus, welche in Ihre Liste aufgenommen werden sollen, und ergreifen die entsprechenden Maßnahmen (sofern autorisiert) bzw. nicht (sofern gesperrt). Deshalb beauftragen manche lieber Entwickler mit dieser Aufgabe.

Wenn Sie sich der Herausforderung stellen möchten, werfen wir einen genaueren Blick auf die CSP-Direktiven, die wir in den vorherigen Abschnitten erwähnt haben, um Ihnen bei diesem Aspekt Ihrer Website zu helfen:

Fetch-Direktiven 

Sie fügen Fetch-Direktiven in Ihr Antwortheaderfeld ein, um die Speicherorte anzugeben, denen Ihr Browser vertrauen und von denen er Ressourcentypen laden kann. Die meisten Fetch-Direktiven greifen auf default-src zurück. Das bedeutet, dass die Direktivenwerte aus den Standarddirektiven übernommen werden, wenn eine Fetch-Direktive nicht im Antwortheaderfeld aufgeführt ist. 

Beispiele für Fetch-Direktiven sind „child-src“, „font-src“ und „img-src“. 

Dokumentrichtlinien

Dokumentdirektiven in Ihrem CSP-Antwortheaderfeld teilen dem Browser die Eigenschaften der Dokumente mit, auf die die Richtlinie zutrifft. 

Die Direktive „base-URI“ beschränkt beispielsweise die URLs, die das Basiselement des Dokuments verwenden kann. Ein weiteres Beispiel ist die Direktive „sandbox“, die die Aktionen einschränkt, die die Seite ausführen kann. Dokumentdirektiven greifen nicht auf die Standard-Src-Direktive zurück. 

Navigationsanweisungen

Navigationsanweisungen steuern die Orte, zu denen ein Benutzer navigieren kann. Beispiele hierfür sind „form-action“, das die URLs für Formulareinreichungen begrenzt, „frame-ancestors“, das die URLs regelt, die die angeforderten Ressourcen einrahmen können, und „navigate-to“, das die URLs begrenzt, zu denen das Dokument navigieren kann.

Stellen Sie sicher, dass Sie Ihre Sicherheitsrichtlinie regelmäßig aktualisieren, um sicherzustellen, dass Ihre Site nicht anfällig für neue Bedrohungen wird.

Testrichtlinie

CSP kann sich negativ auf eine Website auswirken, wenn es nicht richtig eingerichtet ist. Hier kommen Tests ins Spiel.

Der reine Berichtsmodus ist eine effektive Methode, um zu testen, ob ein CSP ordnungsgemäß funktioniert. Der reine Berichtsmodus bietet Einblicke in die Anzahl der CSP-Verstöße, die bei Durchsetzung der Richtlinie aufgetreten wären, blockiert jedoch nichts.

Mithilfe dieser Testmethode können Websitebesitzer erkennen, wo ihre Richtlinien wahrscheinlich versagen. So können sie sie entsprechend anpassen.

Für die Prüfung der CSP einer Website im reinen Berichtsmodus stehen verschiedene Tools zur Verfügung. Eines der beliebtesten Tools ist der CSP Evaluator. 

Mit diesem Tool können Sie eine URL eingeben. Anschließend prüft das Tool, ob ein CSP-Header vorhanden ist. Außerdem wird angezeigt, ob der CSP ausreichend konfiguriert ist. Gleichzeitig analysiert es die Richtlinie, weist auf potenzielle Probleme hin und zeigt Ihnen, wie Sie diese verbessern können. 

Der folgende Screenshot zeigt einige der Vorschläge des Tools:

Quelle

Sie können auch CSP-Scanner wie Mozilla Observatory oder CSP Tester verwenden. Die Scanner funktionieren wie der CSP Evaluator. Sie testen die Wirksamkeit Ihres CSP und empfehlen Best Practices für die Richtlinienkonfiguration. 

Erweiterungen wie Googles CSP Tester und CSP Debugger können Ihnen ebenfalls beim Testen Ihrer CSPs helfen. 

Sie verfolgen die schriftlichen und Video-Content auf einer Webseite geladene Informationen und die Quellen, aus denen sie stammen, wobei etwaige CSP-Verstöße hervorgehoben werden. 

Diese Erweiterungen sind sowohl für Chrome als auch für Firefox verfügbar. Sie können zum Testen, Debuggen und Validieren Ihres CSP auf Ihrer Website verwendet werden. Sie können auch Berichte zur Effektivität (oder deren Fehlen) von CSPs erstellen.

Gebote und Verbote zur CSP-Nutzung

CSP ist ein effektives Werkzeug, mit dem Sie die Risiken der Webanwendungssicherheit minimieren können. Wie alle Sicherheitswerkzeuge hat aber auch CSP seine eigenen Regeln und Vorschriften. Es ist wichtig, diese zu verstehen, um es effektiv einsetzen zu können.

Hier sind einige Regeln:

Verwenden Sie die Konfiguration „Strict-Dynamic“. Diese Direktive erlaubt die dynamische Ausführung von JavaScript-Code nur aus Quellen, die über das Attribut „nonce-“ auf die Whitelist gesetzt wurden. Diese Einstellung ist hilfreich, da Entwickler so weiterhin Inline-Skripte auf ihren Websites verwenden können, ohne die Sicherheit zu beeinträchtigen. 

Inline-Skripte sind Skripte, die innerhalb von HTML-Dateien und nicht als separate Quellen ausgeführt werden. Mit „Strict-Dynamic“ kann die Website weiterhin Inline-Skripte verwenden und gleichzeitig die Quellen einschränken, aus denen diese Skripte ausgeführt werden dürfen.

Die Verwendung von Inline-Code wird jedoch nicht empfohlen. Die Inline-Direktive erlaubt zwar die Einbindung von Skripten und Styles direkt in Ihren HTML-Code, birgt aber Risiken, da Hacker so Schadcode in Ihre Inhalte einschleusen können. Verwenden Sie stattdessen die Attribute „nonce-value“ und „hash-value“, um Inline-Skripte und Styles aus vertrauenswürdigen Quellen zuzulassen.

Verwenden Sie auch nicht 'eval()'. Die 'eval()'-Direktive erlaubt die Ausführung dynamisch generierter Skripte. Dadurch kann CSP umgangen und beliebiger Code ausgeführt werden, was ein erhebliches Sicherheitsrisiko darstellt.

Wenn Ihre Website stark auf Inline-Skripte und -Stile oder Bibliotheken und Plug-Ins von Drittanbietern angewiesen ist, benötigen Sie möglicherweise Hilfe bei der Implementierung von CSP.

Sie können ein Tool wie den Content Security Policy Builder verwenden, um ein benutzerdefiniertes CSP zu erstellen, das die spezifischen Anforderungen Ihrer Website sowie Bibliotheken und Plug-Ins von Drittanbietern berücksichtigt. 

Beispiele für Inhaltssicherheitsrichtlinien

CSP kann je nach den spezifischen Anforderungen einer Website auf verschiedene Weise implementiert werden. Hier sind einige Beispiele für CSP-Richtlinien zum besseren Verständnis:

  • So konfigurieren Sie Ihren CSP-Header, um Skripte, CSS, AJAX und Bilder vom aktuellen Ursprung zuzulassen, ohne andere Ressourcen zu laden;

Content-Security-Policy: default-src 'none' ; script-src 'self' ; connect-src 'self' ; img-src 'self' ; style-src 'self' ; frame-ancestors 'self' ; form-action 'self' ;  

  • So konfigurieren Sie eine mäßig strenge Richtlinie im Antwortheaderfeld: 

script-src 'nonce-r4nd0m' 'strict-dynamic' ;

object-src 'none' ; base-uri 'none' ;

  • Die CSP-Konfiguration für eine strenge Lockdown-Richtlinie;

script-src 'nonce-r4nd0m'

object-src 'none' ; base-uri 'none' ;

Wichtig zu beachten ist, dass die Implementierung von CSP zwar zur Verbesserung der Sicherheit Ihrer Website beiträgt, aber in Verbindung mit anderen Sicherheitsmaßnahmen wie starken Authentifizierungsprotokollen, regelmäßigen Software-Updates und der Domainregistrierung bei seriösen Anbietern eingesetzt werden sollte, um einen umfassenden Schutz vor Cyberbedrohungen zu gewährleisten.

Weitere Informationen zu Nonce-Attributen für CSP finden Sie auf MDN. Sie können auch dieses Referenzhandbuch nutzen.

Schlusswort

Sicherheit im Web ist nicht zu unterschätzen. Menschen können ihr Geld verlieren und sind (unter anderem) durch Cyberangriffe wie Cross-Site-Scripting und Clickjacking gefährdet. Daher sollte eine Content-Sicherheitsrichtlinie eine notwendige Schutzebene für alle Webanwendungen sein. 

Bewertung Ihrer Richtlinien zur Reaktion auf Vorfälle, einschließlich der Systeme, die Sie zur Erkennung von Cybersicherheitsbedrohungen einsetzen, wie z. B. Einbruchs- und Angriffssimulationenund wie Sie effektiv mit ihnen umgehen, falls sie auftreten.

Dennoch müssen Sie im Hinblick auf die Sicherheit bei der Nutzung des Internets Vorkehrungen treffen, um nicht Opfer von Angreifern zu werden.

Indem Sie sich mit den unterschiedlichen Arten von Richtlinien und Protokollen vertraut machen, können Sie nicht nur Ihre Website, sondern auch Ihr Publikum besser schützen, das möglicherweise seine persönlichen Daten auf Ihrer Site geteilt hat.

Kerbe

Ich bin Nick, Spezialist und Enthusiast für WordPress, SEO und Künstliche Intelligenz. Mein Ziel ist es, meine Erfahrungen mit Ihnen zu teilen und Ihnen die besten digitalen Marketingtechniken vorzustellen, damit Ihr Online-Business wächst.