Was ist HSTS?

May 24, 2024

HTTP Strict Transport Security (HSTS) ist ein Sicherheitsrichtlinienmechanismus, der zum Schutz von Websites beitrรคgt Man-in-the-Middle-Angriffe wie Protokoll-Downgrade-Angriffe und Cookie-Hijacking. Durch die Durchsetzung sicherer Verbindungen weist HSTS Browser an, mit einer Website nur รผber eine sichere HTTPS-Verbindung zu interagieren, anstatt HTTP.

Was ist hsts

Was ist HSTS?

HTTP Strict Transport Security (HSTS) ist eine Web-Sicherheitsrichtlinie, die es Websites ermรถglicht, sich nur รผber sichere HTTPS-Verbindungen als zugรคnglich zu erklรคren. Wenn eine Website HSTS implementiert, informiert sie darรผber Browsern dass sie fรผr die Kommunikation mit der Website ausschlieรŸlich HTTPS verwenden sollten, wodurch die Mรถglichkeit ausgeschlossen wird, das weniger sichere HTTP-Protokoll zu verwenden. Dies wird durch die erreicht server Senden eines HSTS-Headers in seinen HTTP-Antworten, der einen Zeitraum angibt, in dem der Browser diese Richtlinie durchsetzen soll.

HSTS trรคgt dazu bei, verschiedene Angriffe zu verhindern, darunter Protokoll-Downgrade-Angriffe, bei denen ein Angreifer einen Browser dazu zwingt, HTTP anstelle von HTTPS zu verwenden, und Cookie-Hijacking, bei dem Cookies รผber ungesicherte Verbindungen abgefangen werden.

Durch die Vorgabe von HTTPS stellt HSTS sicher, dass die gesamte Kommunikation zwischen dem Browser des Benutzers und der Website erfolgt verschlรผsselt und sicher, wodurch die allgemeine Sicherheitslage des verbessert wird Web-Anwendung.

Eine kurze Geschichte von HSTS

Das Konzept der HTTP Strict Transport Security (HSTS) entstand aus dem wachsenden Bedarf, die Websicherheit zu verbessern. Es wurde erstmals 2009 von Jeff Hodges, Collin Jackson und Adam Barth vorgeschlagen. Ihre Arbeit konzentrierte sich auf die Minderung der Risiken, die mit Man-in-the-Middle-Angriffen und Protokoll-Downgrade-Angriffen verbunden sind, die die Schwachstellen von HTTP ausnutzen. Der erste Entwurf wurde 2010 der Internet Engineering Task Force (IETF) vorgelegt und nach mehreren รœberarbeitungen und Community-Feedback 2012 mit der Verรถffentlichung von RFC 6797 zum Standard. Seitdem wurde HSTS von den wichtigsten Webbrowsern weitgehend รผbernommen und Websites werden zu einem entscheidenden Instrument bei der Sicherung der Webkommunikation.

Warum ist HSTS wichtig?

HSTS ist wichtig, weil es die Sicherheit der Webkommunikation erheblich erhรถht. Durch die Durchsetzung der Verwendung von HTTPS stellt HSTS sicher, dass alle zwischen dem Browser eines Benutzers und einer Website ausgetauschten Daten verschlรผsselt sind und so vor Abhรถren und Manipulation geschรผtzt sind. Dies ist von entscheidender Bedeutung, um vertrauliche Informationen wie Anmeldeinformationen, persรถnliche Daten und Finanztransaktionen vor bรถswilligen Akteuren zu schรผtzen.

HSTS verhindert auรŸerdem Protokoll-Downgrade-Angriffe, bei denen Angreifer den Browser dazu verleiten, das weniger sichere HTTP zu verwenden, sowie Cookie-Hijacking, bei dem Sitzungscookies รผber eine ungesicherte Verbindung abgefangen werden.

Wie funktioniert HSTS?

HTTP Strict Transport Security (HSTS) ist ein Mechanismus, der sicherstellt, dass ein Webbrowser bei der Kommunikation mit einer Website immer eine sichere HTTPS-Verbindung verwendet. Es funktioniert, indem es Websites erlaubt, sich nur รผber HTTPS als erreichbar zu erklรคren, und so verschiedene Angriffe im Zusammenhang mit dem weniger sicheren HTTP-Protokoll verhindert.

Wenn ein Benutzer zum ersten Mal eine Website besucht, die HSTS unterstรผtzt, wird die server antwortet mit einem speziellen HTTP-Header namens Strenge-Transport-Sicherheit. Dieser Header gibt a an Hรถchstalter Wert, der den Zeitraum (in Sekunden) angibt, fรผr den der Browser reine HTTPS-Verbindungen fรผr die Site erzwingen soll. Der Header kรถnnte auch eine enthalten einschlieรŸenSubDomains Richtlinie, die darauf hinweist, dass alle Sub-Domains Der Zugriff sollte auch รผber HTTPS erfolgen.

Sobald der Browser diesen Header empfรคngt, zeichnet er die HSTS-Richtlinie auf und beginnt mit der Durchsetzung. Wenn der Benutzer wรคhrend des angegebenen Zeitraums versucht, die Site oder ihre Subdomains รผber HTTP zu besuchen Hรถchstalter Nach Ablauf dieser Frist wandelt der Browser die Anfrage automatisch in HTTPS um und sorgt so fรผr eine sichere Verbindung. Auch wenn der Benutzer manuell tippt "http://" in der Adressleiste des Browsers, der Browser รคndert es in "https://" bevor Sie die Anfrage stellen.

Wenn die HSTS-Richtlinie Subdomains umfasst, erstreckt sich dieser Schutz auch auf diese, wodurch die gesamte Site zusรคtzlich geschรผtzt wird Domain Struktur. Dieser Mechanismus verhindert effektiv, dass Angreifer die Verbindung abfangen oder manipulieren, indem sie HTTP-Schwachstellen ausnutzen.

HSTS-Anforderungen

Fรผr HTTP Strict Transport Security mรผssen mehrere Anforderungen erfรผllt sein, damit es ordnungsgemรครŸ funktioniert und die Webkommunikation effektiv schรผtzt. Hier sind die wichtigsten Anforderungen:

  • HTTPS-Implementierung. Die Website muss HTTPS unterstรผtzen und รผber eine gรผltige Version verfรผgen SSL / TLS Zertifikat. HSTS kann nicht auf einer Site implementiert werden, die nur HTTP unterstรผtzt, da der gesamte Zweck von HSTS darin besteht, sichere HTTPS-Verbindungen zu erzwingen.
  • HSTS-Header. Der server muss den HSTS-Header senden (Strenge-Transport-Sicherheit) in seinen HTTPS-Antworten. Dieser Header enthรคlt die Hรถchstalter -Direktive, die angibt, wie lange der Browser daran denken soll, HTTPS fรผr die Site zu erzwingen. Ein Beispiel fรผr einen HSTS-Header ist:
Strict-Transport-Security: max-age=31536000; includeSubDomains
  • Richtlinie zur Hรถchstaltersgrenze. Der Hรถchstalter Die Direktive ist obligatorisch und definiert die Dauer in Sekunden, fรผr die der Browser HTTPS fรผr die Site erzwingen soll. Zum Beispiel, Hรถchstalter = 31536000 legt die Police fรผr ein Jahr fest.
  • IncludeSubDomains-Direktive. Diese optionale Anweisung erweitert die HSTS-Richtlinie auf alle Subdomains der Site. Sofern enthalten, mรผssen alle Subdomains auch HTTPS unterstรผtzen.
  • Vorladen (optional, aber empfohlen). Beim Vorladen wird die Website an die HSTS-Vorladeliste gesendet, eine Liste, die von Browser-Anbietern verwaltet wird. Sobald eine Website vorab geladen ist, erzwingen Browser beim ersten Besuch HTTPS fรผr sie und ihre Subdomains, noch bevor sie den HSTS-Header erhalten. Um sich fรผr das Vorladen zu qualifizieren, muss die Site einen HSTS-Header bereitstellen Hรถchstalter von mindestens einem Jahr (31536000), umfassen die einschlieรŸenSubDomains Richtlinie und umfassen die Vorspannung Direktive im Header.
  • Kein gemischter Inhalt. Die Website muss gemischte Inhalte vermeiden, die auftreten, wenn HTTPS-Seiten Ressourcen (z. B. Bilder, Skripte oder Stylesheets) รผber HTTP laden. Gemischte Inhalte untergraben die Sicherheit von HTTPS und kรถnnen dazu fรผhren, dass Browser solche Ressourcen blockieren oder Sicherheitswarnungen anzeigen.
  • Weiterleitungen. Alle HTTP-Anfragen an die Site sollten vor der Anwendung von HSTS auf HTTPS umgeleitet werden. Dadurch wird sichergestellt, dass Benutzer, die die Website zunรคchst รผber HTTP besuchen, zur sicheren Version weitergeleitet werden.

HSTS-Einschrรคnkungen

HTTP Strict Transport Security (HSTS) ist ein leistungsstarker Sicherheitsmechanismus, der einige Einschrรคnkungen aufweist, darunter:

  • Anfรคnglich unsichere Verbindung. Die allererste Verbindung zu einer Website ist nicht durch HSTS geschรผtzt und somit anfรคllig fรผr Man-in-the-Middle-Angriffe. Bis der Browser den HSTS-Header empfรคngt, kann die Verbindung รผber HTTP erfolgen.
  • Fehlkonfigurationsrisiken. Falsche Konfiguration von HSTS, z. B. Einstellung einer sehr langen Zeitspanne Hรถchstalter fรผr eine Site, die nicht fรผr die vollstรคndige HTTPS-Durchsetzung bereit ist, kann zu Problemen fรผhren. Weitere Beispiele fรผr Fehlkonfigurationen sind die nicht vollstรคndige Implementierung von HTTPS oder Probleme mit gemischten Inhalten. Wenn dies auftritt, kommt es bei Benutzern zu eingeschrรคnkter Funktionalitรคt oder Problemen mit der Zugรคnglichkeit.
  • Subdomain-Abdeckung. Wenn der einschlieรŸenSubDomains Wird die Direktive nicht verwendet, sind Subdomains nicht durch die HSTS-Richtlinie geschรผtzt. Dies kann sie anfรคllig fรผr Angriffe machen und die Sicherheitsvorteile von HSTS untergraben.
  • Zugรคnglichkeit der Website. Wenn das SSL/TLS-Zertifikat einer Site ablรคuft oder falsch konfiguriert ist, kรถnnen Benutzer nicht auf die Site zugreifen, bis das Problem behoben ist, da HSTS nur HTTPS-Verbindungen vorschreibt.
  • Cache-Probleme. Sobald ein Browser einen HSTS-Header empfรคngt, erzwingt er HTTPS fรผr die Site, bis der Hรถchstalter Frist lรคuft ab. Wenn eine Site HTTPS nicht mehr verwenden mรถchte oder ihre Konfiguration รคndert, sind Benutzer aufgrund zwischengespeicherter HSTS-Richtlinien mรถglicherweise dennoch gezwungen, HTTPS zu verwenden.
  • Nicht unterstรผtzte Browser. Nicht alle Browser unterstรผtzen HSTS. Benutzer mit รคlteren oder weniger verbreiteten Browsern, die den HSTS-Header nicht erkennen, profitieren nicht von seinen SicherheitsmaรŸnahmen.
  • Nachteile beim Vorladen. Wรคhrend das Vorladen die Sicherheit erhรถht, ist es eine Verpflichtung. Sobald eine Site in die HSTS-Preload-Liste aufgenommen wurde, kann sie nicht einfach entfernt werden, und alle Probleme mit HTTPS auf der Site fรผhren zu erheblichen Zugriffsproblemen fรผr Benutzer.
  • Auswirkung auf die Leistung. Das Erzwingen von HTTPS fรผhrt aufgrund der Verschlรผsselung zu einem leichten Leistungsaufwand Entschlรผsselung Prozesse. Obwohl es im Allgemeinen minimal ist, kann es bei stark frequentierten Websites oder Benutzern mit langsameren Verbindungen spรผrbar sein.

HSTS-Browserkompatibilitรคt

Die folgende Tabelle vergleicht die HSTS-Kompatibilitรคt mit den heute am hรคufigsten verwendeten Browsern.

BrowserUnterstรผtzte Versionen
Google Chrome4 und hรถher
Mozilla Firefox4 und hรถher
Microsoft Edge12 und hรถher
Apple Safari7 und hรถher
Opera12 und hรถher
Internet ExplorerKeine Unterstรผtzung

Best Practices fรผr die HSTS-Bereitstellung

Fรผr die effektive Bereitstellung von HTTP Strict Transport Security (HSTS) mรผssen Best Practices befolgt werden, um eine robuste Sicherheit zu gewรคhrleisten und potenzielle Probleme zu minimieren. Hier sind einige Best Practices fรผr die Bereitstellung von HSTS:

  • Stellen Sie die vollstรคndige HTTPS-Unterstรผtzung sicher. Stellen Sie vor der Aktivierung von HSTS sicher, dass Ihre gesamte Website HTTPS unterstรผtzt, einschlieรŸlich aller Subdomains und Ressourcen. Gemischte Inhalte kรถnnen Probleme verursachen, wenn HSTS erzwungen wird.
  • SSL/TLS richtig konfigurieren. Verwenden Sie starke SSL/TLS-Konfigurationen, um Schwachstellen zu vermeiden. Stellen Sie sicher, dass Ihre SSL/TLS-Zertifikate gรผltig, aktuell und korrekt installiert sind.
  • Legen Sie das entsprechende Hรถchstalter fest. Beginnen Sie mit einem kurzen Hรถchstalter Wert (z. B. einen Tag), um die Implementierung zu testen und sicherzustellen, dass alles ordnungsgemรครŸ funktioniert. Erhรถhen Sie schrittweise die Hรถchstalter auf eine lรคngere Dauer (z. B. ein Jahr), sobald Sie mit der Einrichtung vertraut sind.
  • Subdomains einbeziehen. Benutze die einschlieรŸenSubDomains Richtlinie, um sicherzustellen, dass alle Subdomains von der HSTS-Richtlinie abgedeckt werden und so umfassenden Schutz fรผr Ihre gesamte Domain bieten.
  • Vorspannung verwenden. Senden Sie Ihre Website an die HSTS-Preload-Liste, um sicherzustellen, dass Browser HSTS ab dem ersten Besuch erzwingen. Dies erfordert die Einstellung a Hรถchstalter von mindestens einem Jahr, einschlieรŸlich der einschlieรŸenSubDomains Direktive und Hinzufรผgen der Vorspannung Direktive in Ihren HSTS-Header einfรผgen.
  • HTTP auf HTTPS umleiten. Konfiguration server-seitige Weiterleitungen von HTTP zu HTTPS. Dadurch wird sichergestellt, dass Benutzer, die zunรคchst รผber HTTP auf Ihre Website zugreifen, auf die sichere Version umgeleitet werden.
  • รœberwachen und testen. รœberwachen Sie Ihre Website regelmรครŸig auf SSL/TLS-Probleme, gemischte Inhalte und andere potenzielle Probleme. Verwenden Sie Tools wie den SSL-Test von SSL Labs, um Ihre Konfiguration zu รผberprรผfen und sicherzustellen, dass sie den Best Practices entspricht.
  • Sicherheitsrichtlinien aktualisieren. Halten Sie Ihre Sicherheitsrichtlinien und -konfigurationen, einschlieรŸlich HSTS, regelmรครŸig mit den neuesten Empfehlungen und Praktiken auf dem neuesten Stand.
  • Informieren Sie Benutzer und Stakeholder. Kommunizieren Sie die ร„nderungen an Ihre Benutzer und Stakeholder und erlรคutern Sie die Vorteile und mรถglichen Auswirkungen der HSTS-Implementierung. Dies hilft, Erwartungen zu verwalten und stellt sicher, dass etwaige Probleme umgehend gemeldet und behoben werden.
  • Bereiten Sie sich auf Notfรคlle vor. Halten Sie einen Plan fรผr den Umgang mit Notfรคllen bereit, z. B. beim Ablauf von Zertifikaten oder bei Konfigurationsfehlern. Bei Bedarf sollten Sie in der Lage sein, Ihre Website aus der HSTS-Preload-Liste zu entfernen, obwohl dieser Vorgang aufgrund der Aktualisierungszyklen des Browsers einige Zeit in Anspruch nehmen kann.

Anastazija
Spasojeviฤ‡
Anastazija ist eine erfahrene Content-Autorin mit Wissen und Leidenschaft fรผr cloud Computer, Informationstechnologie und Online-Sicherheit. Bei phoenixNAP, konzentriert sie sich auf die Beantwortung brennender Fragen zur Gewรคhrleistung der Datenrobustheit und -sicherheit fรผr alle Teilnehmer der digitalen Landschaft.