Ratgeber

Cross-Site-Scripting und mehr verhindern: Sichere Websites durch Security-Header

Seite 2 / 2

X-Content-Type-Options

Bei der Anfrage einer Website werden meistens zusätzliche Dateien heruntergeladen. In der Regel sind das Bilder oder Skript-Dateien. Kann der Browser die Inhalte dieser Dateien nicht selbst wiedergeben fragt er den Nutzer, ob er die Datei herunterladen und ausführen will. Diese Komfort-Funktion kann auf verschiedenen Wegen für Drive-by-Downloads ausgenutzt werden. Über Cross-Site-Scripting beispielsweise kann Schad-Software auf einer Website platziert werden. Das geschieht meist unter der Tarnung einer Stylesheet-Datei. Beim Laden der Website wird die Schad-Software dann vom Nutzer ausgeführt. Das wurde im Zuge der Spectre-Meltdown-Krise massiv ausgenutzt.

Um zu verhindern, dass diese Drive-by-Downloads ausgeführt werden, kann der Security-Header X-Content-Type-Options eingerichtet werden. Auf den Wert nosniff gesetzt, werden Skript-Dateien geprüft. Ist der MIME-Typ nicht wie angegeben CSS oder JavaScript, wird die Datei nicht ausgeführt.

Referrer-Policy

Über den HTTP-Header werden nicht nur die hier präsentierten Security-Header übergeben. Darin können sich auch Information über den Webserver und die Aktivität des Nutzers befinden. Eine dieser Angaben ist der Referrer-Header. Klickt ein Nutzer auf einen Link, dann wird die Angabe der Ausgangsseite an die Zielseite übertragen. Das wird im Referrer-Header gespeichert. Auf der Basis dieser Angaben lassen sich Informationen ermitteln. Diese sind zum Beispiel für Tracking-Software wie Google-Analytics relevant.

Durch eine Referrer-Policy kannst du festlegen, an welche Seiten diese Nutzer-Information weitergeleitet werden soll. Auf dem Wert no-referrer betrifft dies alle Seiten. Wird er dagegen auf no-referrer-when-downgrade gesetzt, so werden Websites ausgeschlossen, die weniger sicher sind.

Security-Header selbst einrichten

Im Apache-Webserver

Wir empfehlen, die Einstellungen der Security-Header in der Konfiguration des Webservers vorzunehmen. In der weit verbreiteten Webserver-Software Apache lassen sich die Beispiele von oben in die Datei „httpd.conf“ eintragen:

<code>

<IfModule mod_headers.c>

<Directory />

Header always set Content-Security-Policy „script-src ’self'“

Header always set X-XSS-Protection „1“

Header always set X-Frame-Options „SAMEORIGIN“

Header always set X-Content-Type-Options „nosniff“

Header always set Referrer-Policy „no-referrer-when-downgrade“

</Directory>

</IfModule>

Im Nginx-Webserver

Der moderne Webserver gewinnt immer mehr an Popularität. Nginx ist auf die Beschleunigung von Antwortzeiten optimiert. Dadurch verkürzt es die Ladezeiten einer Website.

Die Konfigurations-Datei befindet sich üblicherweise im Unterordner „conf.d“ unter dem Namen deiner Domain. Für die Domain „example.com“ wäre das zum Beispiel „example.com.conf“. Im Block „server“ wird Folgendes ergänzt:

<code>

server {

add_header Content-Security-Policy „script-src ’self'“;

add_header X-XSS-Protection „1“;

add_header X-Frame-Options „SAMEORIGIN“;

add_header X-Content-Type-Options „nosniff“;

add_header Referrer-Policy „no-referrer-when-downgrade“;

}

</code>

Fazit

Durch die Einrichtung der Security-Header kann mit wenig Aufwand viel für eine sichere Website erreicht werden. Wichtig ist dabei zu berücksichtigen, dass die Maßnahmen nicht allein für eine sichere Website sorgen können. Viel mehr arbeiten sie im Verbund mit anderen Schutz-Maßnahmen, um Attacken wie Cross-Site-Scripting zu verhindern.

Hast du die beschriebenen Security-Header eingefügt? Dann ruf doch nochmal den Link von oben auf und teste deine Website erneut. Mit Sicherheit wirst du nun eine viel bessere Einstufung erhalten.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!

Hey du! Schön, dass du hier bist. 😊

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team bestehend aus 65 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Danke für deine Unterstützung.

Digitales High Five,
Stephan Dörner (Chefredakteur t3n.de) & das gesamte t3n-Team

Anleitung zur Deaktivierung