Was ist HSTS?
Zurück zu skripte und softwareHTTP Strict Transport Security, abgekürzt HSTS, ist eine Sicherheitsrichtlinie, die eine Verbindung über HTTPS erzwingt.
Dabei ist es natürlich wichtig, dass ein gültiges / aktives SSL-Zertifikat vorhanden ist.
Ohne ein gültiges SSL-Zertifikat in Kombination mit HSTS kann die Website nicht geladen werden.
In diesem Moment gibt es auch keine Möglichkeit, die Fehlermeldung zu ignorieren, während diese Option vorhanden ist, wenn kein HSTS verwendet wird.
HSTS-Schwachstelle
Als Website-Administrator haben Sie die Möglichkeit zu wählen, ob der Datenverkehr über HTTP oder HTTPS laufen soll.
Standardmäßig läuft er über HTTP. Sie können ein SSL-Zertifikat installieren und den Website-Verkehr auf HTTPS umleiten, zum Beispiel über .htaccess oder durch Setzen eines Häkchens in Ihrer Systemsteuerung.
HSTS ist jedoch nicht narrensicher, da die erste Anfrage immer zuerst über HTTP erfolgt, so dass ein Hacker die erste Anfrage immer noch ausnutzen und einen Man-in-the-Middle-Angriff durchführen kann.
Beachten Sie, dass HSTS nur aktiviert werden kann, wenn ein gültiger
Man-in-the-Middle-Angriff
Wie bereits erwähnt, erfolgt die erste Anfrage immer noch über HTTP, so dass ein Hacker einen Man-in-the-Middle-Angriff (MITM) durchführen kann.
Ein Man-in-the-Middle-Angriff ermöglicht es einem Hacker, die Kommunikation zwischen dem Besucher und dem Server abzufangen und möglicherweise zu verändern.
Alle Informationen, die Sie dann eingeben, können von dem Hacker eingesehen und möglicherweise sogar verändert werden.
Ein Hacker kann zum Beispiel auch ein Cookie (eine kleine Datei) auf Ihrem Computer platzieren, das Ihren Webbrowser veranlasst, Sie auf eine andere Website umzuleiten.
Der Hacker kann Sie dann auf eine Website umleiten, die wie eine offizielle Website aussieht, aber nicht die offizielle Website ist, wie z. B. die Website einer Bank.
So kann der Hacker an Ihre Daten gelangen und sie missbrauchen.
Wenn HSTS aktiv ist, sinkt dieses Risiko, insbesondere wenn Sie die Preload-Funktion verwenden...
Weitere Informationen über einen Man-in-the-Middle-Angriff finden Sie auf Wikipedia.
Einstellen eines Zeitraums mit HSTS
Bei HSTS müssen Sie einen Zeitraum festlegen, in dem Sie den Client (Webbrowser) anweisen, HTTPS während des festgelegten Zeitraums zu verwenden.
Der Standardzeitraum beträgt 1 Jahr, aber es ist auch möglich, einen längeren oder kürzeren Zeitraum festzulegen.
Achten Sie darauf, dass Sie dies richtig einstellen, damit Ihre Besucher nicht über Monate oder Jahre hinweg Unannehmlichkeiten haben.
Wenn Sie unerwartet feststellen, dass HSTS doch nicht funktioniert und Sie es für ein Jahr aktiviert haben, werden alle Ihre Besucher ein Jahr lang von dieser Einstellung beeinträchtigt, es sei denn, sie schalten es manuell in ihren Browsereinstellungen ab.
Subdomänen und HSTS
In manchen Fällen haben Sie vielleicht Subdomains auf verschiedenen Servern.
HSTS berücksichtigt dies nicht und erfordert daher auch auf diesen Servern ein gültiges SSL-Zertifikat.
Eine falsche Einstellung in HSTS kann daher sofort dazu führen, dass ein großer Teil Ihrer Website nicht mehr funktioniert.
Es ist daher sehr wichtig, dies sorgfältig zu handhaben.
Eine Sache, die Sie sich gut überlegen sollten, ist, ob Sie alle Ihre Subdomains ebenfalls mit HSTS ausstatten wollen.
Wenn Sie Subdomains einbeziehen möchten, können Sie dies normalerweise im Kontrollpanel auswählen oder im Code angeben.
Was sind die Vorteile von HSTS?
- Der große Vorteil von HSTS ist, dass es die Sicherheit verbessert. Es verhindert den Man-in-the-Middle-Angriff, sofern Sie es richtig einrichten, und darüber hinaus sind Sie auch besser auf die Zukunft vorbereitet.
- Sobald ein HSTS-Header aktiv ist, wird die Website schneller geladen, weil die Umleitung von HTTP zu HTTPS entfällt.
Suchmaschinen werden daher auch Websites in den Ergebnissen höher einstufen, wenn HSTS verwendet wird.
Was sind die Nachteile von HSTS?
- Einer der Nachteile ist, dass Sie immer ein gültiges SSL-Zertifikat benötigen (an sich sollte dies natürlich Standard sein und ist nicht wirklich ein Nachteil).
- Berücksichtigen Sie bei der Aktivierung von HSTS auch die Subdomains. Wenn Sie HSTS über die Hauptdomain aktivieren und angeben, dass diese auch die Subdomains mit HSTS versorgen soll, dann müssen alle Ihre Subdomains ein gültiges SSL-Zertifikat haben.
- Eine falsche Einstellung könnte dazu führen, dass Ihre Website(s) für längere Zeit nicht erreichbar sind.
-
HSTS ist (noch) nicht narrensicher. Wenn die Website zum ersten Mal besucht wird, geschieht dies heutzutage immer noch über HTTP, so dass ein Hacker bestimmte Tools verwenden kann, um den HSTS-Header zu entfernen,
Um dem besser entgegenzuwirken, können Sie die Preload-Liste verwenden.
HSTS-Preload-Liste
Viele Webbrowser verwenden eine HSTS-Preload-Liste.
Dabei handelt es sich um eine Liste, in der Domänennamen aufgeführt sind, die nur über HTTPS ansprechbar sind.
Wenn Sie angeben, dass HSTS über einen Preload geladen werden soll, bietet dies noch mehr Sicherheit, da das HSTS bereits geladen wird, bevor Ihre Website geladen wird.
Auf diese Weise wird Ihre Website direkt über HTTPS geladen.
Sie können Ihre Website über https://hstspreload.org in die Preload-Liste aufnehmen.
Es gibt jedoch einige Bedingungen, die Sie erfüllen müssen:
- Ihr Domainname muss natürlich ein gültiges SSL-Zertifikat haben.
- Alle Anfragen über den http-Port (Port 80) müssen an https:// auf derselben Domäne weitergeleitet werden. Zum Beispiel muss http:// examplesitepuntnl auf https:// examplesitepuntnl umgeleitet werden und darf nicht auf https:// wwwpunt examplesitepuntnl umgeleitet werden
- Die von Ihnen verwendete HSTS-Funktion muss die Funktion include:subdomains verwenden.
- Die max-age (Periode) muss mindestens 18 Wochen betragen.
- Sie müssen die Funktion preload verwenden.
Wie aktiviere ich HSTS?
Die Erklärung, wie man HSTS aktiviert, finden Sie in diesem Artikel: Wie aktiviere ich HSTS?
Wie kann ich HSTS entfernen, wenn eine HSTS-Überschrift aktiv ist?
Dies variiert je nach Webbrowser.
Chrome:
Geben Sie Folgendes in Ihre Adressleiste ein: chrome://net-internals/#hsts
Hier haben Sie mehrere Möglichkeiten, einschließlich der Abfrage des HSTS und des Löschens/Vergessens.
Mutig:
Geben Sie Folgendes in Ihre Adressleiste ein: brave://net-internals/#hstsHier haben Sie mehrere Optionen, darunter die Abfrage des HSTS und das Löschen/Vergessen des HSTS.
Firefox: Öffnen Sie Firefox und drücken SieShift+ CTRL+ H (oder Cmd + Shift + H auf einem Mac)
Suchen Sie die Website, für die Sie das HSTS entfernen möchten.
Klicken Sie mit der rechten Maustaste darauf und klicken Sie auf "Forget About This Site" oder "Forget this website".
Beachten Sie, dass dadurch auch die gespeicherten Kennwörter gelöscht werden.