Firefox 23 unterstützt Content Security Policy 1.0
Ab Version 23 unterstützt Firefox Version 1.0 der W3C-Spezifikation von Content Security Policy (CSP). Das ursprünglich von Mozilla entwickelte Sicherheitskonzept soll vor allem Schutz vor Cross-Site-Scripting-Attacken (XSS) bieten.
CSP wurde ursprünglich von Mozilla entwickelt und wird von Firefox seit Version 4.0 unterstützt. Andere Hersteller wie Google hatten das Konzept aufgegriffen und mittlerweile gibt es eine Spezifikation des W3C, welche seit November 2012 den Status der Candidate Recommendation besitzt, sich aber in einigen Punkten von der Mozilla-Implementierung unterscheidet. Mit Firefox 23 gleicht Mozilla seine Implementierung weitestgehend an den (Beinahe-) Standard an. Die kleineren Unterschiede sowie die Unterschiede zur alten Implementierung in Firefox erläutert Mozilla in einem Blog-Eintrag.
Wikipedia beschreibt die Probleme des klassischen Sicherheitskonzeptes folgendermaßen:
„Webseiten können aktive Inhalte beispielsweise in Form von JavaScript-Code enthalten. Wenn die Webbrowser diesen Code ausführen, erzwingen sie die Einhaltung der Same-Origin-Policy. Dies bedeutet, dass Code von einer Quelle nicht auf Inhalte einer anderen Quelle zugreifen darf. So darf beispielsweise der Code in der Webseite eines Angreifers nicht auf die Elemente einer Onlinebanking-Webseite zugreifen.
In der Praxis sind jedoch Cross-Site-Scripting-Schwachstellen sehr verbreitet, wodurch die Same-Origin-Policy ausgehebelt wird. Eine Cross-Site-Scripting-Schwachstelle entsteht, wenn sich eine Webseite durch fehlerhafte Maskierung Code unterschieben lässt. Aus Sicht des Browsers kommt dieser untergeschobene Code aus der gleichen Quelle wie die angegriffene Webseite.“
CSP verbietet standardmäßig den Einsatz von Inline-Skripten, Skripte müssen dabei in eigene Dateien ausgelagert werden. Über eine Whitelist wird dann definiert, von welchen Quellen der Browser die Skripte ausführen darf. Aber nicht nur für Skripte, sondern auch für CSS-Dateien, Schriftarten, Bilder und anderes gibt es Whitelists. Des Weiteren kann festgelegt werden, mit welchen Servern mittels WebSockets oder AJAX kommuniziert werden darf. Eine praktische Funktion von CSP ist außerdem, dass CSP-Verletzungen auf dem Server protokolliert werden können.
Während CSP 1.0 bereits auf fortgeschrittenem Weg zum Standard ist, befindet sich auch schon Version 1.1 der Spezifikation in Arbeit, an welcher auch Mozilla wieder mitwirkt. Chrome unterstützt CSP 1.0 seit Version 25, der Internet Explorer 10 unterstützt lediglich die in CSP 1.0 optionale Sandbox-Direktive, welche wiederum Firefox nicht unterstützt. Webentwickler können sich eine Einführung in CSP auf HTML5 Rocks durchlesen.
Füge diese URL in deine WordPress-Website ein, um sie einzubetten
Füge diesen Code in deine Website ein, um ihn einzubinden