Content Security Policy (CSP) - Ein Kommentar

Content Security Policy (CSP)

Ein Kommentar

Marc Ruef
von Marc Ruef
Lesezeit: 4 Minuten

Im Webbereich sind Cross Site Scripting-Schwachstellen für einen Grossteil erfolgreicher Angriffe verantwortlich. Und mit der Etablierung von Web 2.0, das mit Ajax auf Javascript basiert, ist dieses Problem aus funktionalen Gründen nicht mehr ohne weiteres zu eliminieren.

Die jeweiligen Browserhersteller sind darum bemüht, das Ausnutzen derartiger Schwachstellen clientseitig anzugehen. Microsoft hat im Internet Explorer 8 einen simplen Filter für typische Pattern implementiert, um reflektive Type-1 Angriffe abzuwehren. Wie immer bei musterbasierten Blacklists kann auch hier mit klassischen Massnahmen die Einschränkung umgangen werden:

Beim Herumspielen mit dem neuen XSS-Filter fand ich einen interessanten Weg, wie durch einfaches Maskieren von beliebigem Javascript durch Nullbytes reflektives XSS (auch Type-1 XSS genannt) am Filter vorbeigeschleust werden kann und der Code ohne Warnung auf dem Client ausgeführt wird.

Das Mozilla Team geht noch einen Schritt weiter und führt in den kommenden Versionen von Firefox die Content Security Policy (vorgesehen für Firefox 3.6 oder 3.7) ein. Bei dieser wird es möglich, dass ein Webserver bzw. eine Webapplikation durch den Header X-Content-Security-Policy die Herkunft von Script-Code einschränken kann.

Die wichtigste Eigenschaft der CSP ist, dass bei der Anwendung sämtlicher Inline-Code nicht mehr ausgeführt wird. Dies gilt für script-Tags, Javascript-URIs und Event-Handlers. Dadurch kann ein Grossteil der üblichen XSS-Angriffe – dies betrifft ebenfalls persistente Type-2 Attacken – verhindert werden.

Zugelassen sind sodann nur noch Skripte, die explizit auf der verteilten Whitelist vermerkt sind. Dies sind in erster Linie Webserver, die beispielsweise in dedizierter Weise für das Verteilen der JS-Dateien zuständig sind. Aber auch das Hinzufügen eigener Events bleibt möglich.

Firefox 3.5 versagt beim CSP Test

Das gesamte Modell scheint ein richtiger Schritt in die richtige Richtung zu sein. Die grundlegenden Probleme von XSS-Attacken werden flankiert, so dass wohl ein Grossteil der üblichen Schwachstellen nicht mehr ohne weiteres ausnutzbar bleiben wird.

Dennoch werden mit CSP nicht nur Vorteile eingebracht. Das zusätzliche Modell erhöht die Komplexität einer Installation (und ebenfalls der Browser-Software). Vor allem auch deswegen, weil Webapplikationen nicht mehr ohne weiteres kleinere Javascript-Snipplets einbinden können. Das Unterbringen von Script-Code muss mit bedacht gewählt und umgesetzt werden. Gerade ältere Projekte oder Projekte aus dem nicht-professionellen Umfeld werden mit dieser zusätzlichen Hürde zu kämpfen haben. Dass der eine oder andere Entwickler deshalb auf CSP verzichtet ist wohl anzunehmen.

Ebenso gewinnen damit Header Injection Angriffe ein Mehr an Wichtigkeit. Durch erweiterte Manipulationen liessen sich nämlich die jeweiligen Zusatzfunktionen wieder deaktivieren und damit der verwundbare Zustand wiederherstellen. Die CSP bleibt damit wohl in erster Linie eine Symptombekämpfung:

Eine Veränderung, die den Angriff in seiner Form verändert, ihn jedoch nicht verhindert, ist nicht als (umfassende) Gegenmassnahme zu verstehen.

Über den Autor

Marc Ruef

Marc Ruef ist seit Ende der 1990er Jahre im Cybersecurity-Bereich aktiv. Er hat vor allem im deutschsprachigen Raum aufgrund der Vielzahl durch ihn veröffentlichten Fachpublikationen und Bücher – dazu gehört besonders Die Kunst des Penetration Testing – Bekanntheit erlangt. Er ist Dozent an verschiedenen Fakultäten, darunter ETH, HWZ, HSLU und IKF. (ORCID 0000-0002-1328-6357)

Links

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

×
Konkrete Kritik an CVSS4

Konkrete Kritik an CVSS4

Marc Ruef

scip Cybersecurity Forecast

scip Cybersecurity Forecast

Marc Ruef

Voice Authentisierung

Voice Authentisierung

Marc Ruef

Bug-Bounty

Bug-Bounty

Marc Ruef

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv