There was a problem loading the comments.

Korrekter Einsatz von HSTS

Support Portal  »  Knowledgebase  »  Viewing Article

  Print

HSTS (kurz für "HTTP Strict Transport Security") ist ein wirksames und ein einfach einzurichtendes Sicherheitsmerkmal für alle Webseiten. Zum richtigen Einsatz des HSTS- Headers gibt es immer wieder unterschiedliche Meinungen und Aussagen. An dieser Stelle haben wir die korrekte Anwendung und deren Hintergründe kurz zusammengefasst:

Konfiguration

  • Der HSTS- Header wird ausschließlich beim Aufruf der URL per https:// ausgeliefert. Die verbreitete Annahme, dass der HSTS- Header auch beim Aufruf über http:// ausgeliefert wird, ist nicht korrekt.
  • Ist die Seite generell per http:// erreichbar, müssen alle Anfragen mittels "301 Moved Permanently" von http:// nach https:// auf derselben URL umgeleitet werden.
  • Wenn man sicherstellen kann, dass wirklich alle URLs einer Domain per https:// erreichbar sind, sollte die Domain auch in die Preload- Liste der Browser eingetragen werden. Damit wird das potentielle Risiko eine MITM- Angriffs beim ersten Aufruf der Seite über http:// verhindert, da der Browser bereits vor dem ersten Aufruf der URL Kenntniss davon hat, dass die Seit nur per https:// ereichbar sein soll.

Ein korrekter HSTS- Header sieht z. Bsp. für https://www.managedhosting.de folgendermassen aus:

Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"

Weiterführende Informationen

Werkzeuge & Tests

Mittels eines einfachen Aufrufs der Seite mit CURL kann man sich den HSTS- Header leicht anzeigen lassen:

curl --head http://www.managedhosting.de

HTTP/1.1 301 Moved Permanently
Date: Mon, 10 Jun 2019 08:41:06 GMT
Server: Apache
Location: https://www.managedhosting.de/
Cache-Control: max-age=0
Expires: Mon, 10 Jun 2019 08:41:06 GMT
Content-Type: text/html; charset=iso-8859-1

curl --head https://www.managedhosting.de

HTTP/1.1 200 OK
Date: Mon, 10 Jun 2019 08:43:59 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
Vary: Host,Accept-Encoding
Cache-Control: public, max-age=86400
Expires: Tue, 11 Jun 2019 07:38:15 GMT
Last-Modified: Mon, 10 Jun 2019 07:38:15 GMT
ETag: "75b069c448aac62a356b517e702afb86292e2041"
X-DNS-Prefetch-Control: on
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Content-Type: text/html; charset=UTF-8


Share via

Related Articles

© managedhosting.de