Einführung in das HSTS
HSTS steht für HTTP Strict-Transport-Security, ein Mechanismus der Websicherheitspolitik. HSTS wurde erstmals 2015 in das ThoughtWorks Technology Radar aufgenommen, und in der neuesten Ausgabe des Technology Radar 2016 ging es direkt von der "Trial"-Phase in die "Adopt"-Phase über, was bedeutet, dass ThoughtWorks sich stark für die aktive Einführung dieser Sicherheitsverteidigungsmaßnahme durch die Branche einsetzt und sie auf eigene Projekte angewandt hat. Der Kern von HSTS ist ein HTTP-Antwort-Header. Er informiert den Browser darüber, dass der aktuelle Domainname für die nächste Zeit nur über HTTPS zugänglich ist, und wenn der Browser feststellt, dass die aktuelle Verbindung nicht sicher ist, wird er die nachfolgenden Zugriffsanfragen des Nutzers gewaltsam ablehnen.
Eine Website mit einer HSTS-Richtlinie stellt sicher, dass der Browser stets mit der HTTPS-verschlüsselten Version der Website verbunden ist, wodurch die Nutzer die verschlüsselte Adresse manuell in die URL-Adressleiste eingeben müssen, wodurch das Risiko von Sitzungs-Hijacking verringert wird.
HTTPS (SSL und TLS) stellt sicher, dass Nutzer und Websites sicher kommunizieren, was es Angreifern erschwert, sie abzufangen, zu verändern und zu imitieren. Wenn ein NutzerGeben Sie manuell einen Domainnamen oder http:// Link ein, der WebsiteDie erste Anfrage ist unverschlüsselt, mit einfachem HTTP. Die sichersten Webseiten senden jedoch sofort eine Weiterleitung zurück, die den Nutzer auf eine HTTPS-Verbindung weiterleitet, allerdings,Ein Man-in-the-Middle-Angreifer kann angreifen, um die erste HTTP-Anfrage abzufangen und so die anschließende Antwort des Benutzers zu kontrollieren。
HSTS-Prinzipien
HSTS steuert hauptsächlich die Browseroperationen, indem es Antwortheader vom Server sendet: Wenn ein Client eine Anfrage über HTTPS stellt, fügt der Server das Strict-Transport-Security-Feld in den HTTP-Antwortheader ein, den er zurückgibt. Nachdem der Browser diese Informationen erhalten hat,Jede Anfrage an die Seite innerhalb eines bestimmten Zeitraums wird in HTTPS initiiertohne vom von HTTP initiierten Server auf HTTPS umgeleitet zu werden.
HSTS-Antwortheader-Format
Parameterbeschreibung:
max-age (in Sekunden): Wird verwendet, um dem Browser mitzuteilen, dass die Website innerhalb eines festgelegten Zeitraums über das HTTPS-Protokoll aufgerufen werden muss. Das heißt, für die HTTP-Adresse dieser Website muss der Browser sie lokal durch HTTPS ersetzen, bevor die Anfrage gesendet wird. includeSubDomains (optional): Wenn dieser Parameter angegeben ist, zeigt er an, dass alle Unterdomänen der Seite ebenfalls über das HTTPS-Protokoll zugänglich sein müssen. Preload: Eine Liste von Domainnamen, die HTTPS verwenden, die im Browser eingebaut sind.
HSTS Preload-Liste
Während HSTS eine gute Lösung für HTTPS-Degradationsangriffe ist, ist es für HSTSDie erste HTTP-Anfrage, bevor sie wirksam wird, immer nochEs lässt sich nicht vermeidenEntführt。 Um dieses Problem zu lösen, haben Browserhersteller die HSTS Preload List-Lösung vorgeschlagen. (weggelassen)
IIS-Konfiguration
Besuchen Sie vor der Konfiguration die unten gezeigte Website:
Um dies in IIS7+ zu implementieren, fügen Sie einfach die CustomHeader-Anforderung für HSTS in web.config hinzu, die wie folgt konfiguriert ist:
Nach der Änderung besuchen Sie die Website erneut, wie unten gezeigt:
Nginx-Konfiguration
Wenn die Website nginx Reverse Proxy verwendet, kannst du nginx auch direkt konfigurieren, um es zu implementieren, wie folgt:
Chrome-Ansichtsregeln
Um die aktuellen HSTS-Regeln zu sehen, verwenden Sie Google Chrome Chrome zum Tippenchrome://net-internals/#hstsSteigt das Auto ein, wie in der untenstehenden Abbildung gezeigt:
Referenz
HTTP Strikte Transportsicherheit:Der Hyperlink-Login ist sichtbar.
(Ende)
|