Wprowadzenie do HSTS
HSTS oznacza HTTP Strict-Transport-Security, czyli mechanizm polityki bezpieczeństwa webowego. HSTS po raz pierwszy został włączony do ThoughtWorks Technology Radar w 2015 roku, a w najnowszym numerze Technology Radar z 2016 roku przeszedł bezpośrednio z etapu "Testowego" do fazy "Adopt", co oznacza, że ThoughtWorks zdecydowanie opowiada się za aktywnym przyjęciem tego środka obrony bezpieczeństwa przez branżę, a ThoughtWorks zastosował go także w swoich projektach. Rdzeniem HSTS jest nagłówek odpowiedzi HTTP. To właśnie ona informuje przeglądarkę, że aktualna domena jest dostępna tylko przez HTTPS przez najbliższy czas, a jeśli okaże się, że obecne połączenie nie jest bezpieczne, przymusowo odrzuci kolejne żądania dostępu użytkownika.
Strona z polityką HSTS zapewni, że przeglądarka będzie zawsze połączona z wersją zaszyfrowaną HTTPS, eliminując konieczność ręcznego wprowadzania zaszyfrowanego adresu w pasku adresowym URL, zmniejszając ryzyko przejęcia sesji.
HTTPS (SSL i TLS) zapewnia bezpieczną komunikację użytkowników i stron internetowych, co utrudnia atakującym przechwytywanie, modyfikowanie i podszywanie się. Gdy użytkownikRęcznie wpisz nazwę domeny lub link http://, na stronie internetowejPierwsze żądanie jest nieszyfrowane, używając zwykłego http. Najbezpieczniejsze strony natychmiast wysyłają przekierowanie do połączenia https, jednakAtakujący typu man-in-the-middle może atakować, aby przechwycić początkowe żądanie HTTP i tym samym kontrolować kolejną odpowiedź użytkownika。
Zasady HSTS
HSTS głównie steruje operacjami przeglądarki, wysyłając nagłówki odpowiedzi z serwera: Gdy klient wykonuje żądanie przez HTTPS, serwer zawiera pole Strict-Transport-Security w nagłówku odpowiedzi HTTP, który zwraca. Po otrzymaniu takich informacji przez przeglądarkę,Każde żądanie do strony w określonym czasie jest inicjowane przez HTTPSbez przekierowywania na HTTPS przez serwer inicjowany przez HTTP.
Format nagłówka odpowiedzi HSTS
Opis parametrów:
maksymalny wiek (w sekundach): Używany do informowania przeglądarki, że strona musi być dostępna za pomocą protokołu HTTPS w określonym czasie. Oznacza to, że dla adresu HTTP tej strony przeglądarka musi zastąpić go lokalnie HTTPS przed wysłaniem żądania. includeSubDomains (opcjonalnie): Jeśli ten parametr jest określony, oznacza to, że wszystkie poddomeny strony muszą być również dostępne za pomocą protokołu HTTPS. Preload: Lista nazw domen korzystających z HTTPS wbudowana w przeglądarkę.
Lista wstępnych obciążeń HSTS
HSTS jest dobrym rozwiązaniem na ataki degradacyjne HTTPS, ale dla HSTSPierwsze zapytanie HTTP przed jego wejściem w życie, nadalNie da się tego uniknąćPorwany。 Aby rozwiązać ten problem, producenci przeglądarek zaproponowali rozwiązanie HSTS Preload List. (pominięte)
Konfiguracja IIS
Przed konfiguracją odwiedź stronę internetową pokazaną poniżej:
Aby to zaimplementować w IIS7+, wystarczy dodać wymóg CustomHeader dla HSTS w web.config, który jest skonfigurowany następująco:
Po modyfikacji ponownie odwiedź stronę internetową, jak pokazano poniżej:
Konfiguracja Nginx
Jeśli strona korzysta z progi odwrotnej nginx, możesz także skonfigurować nginx bezpośrednio, aby go zaimplementować, w następujący sposób:
Zasady Chrome View
Aby zobaczyć aktualne zasady HSTS, użyj Google Chrome Chrome do wpisywaniachrome://net-internals/#hstsWprowadź samochód, jak pokazano na poniższym rysunku:
odniesienie
Ścisłe bezpieczeństwo transportu HTTP:Logowanie do linku jest widoczne.
(Koniec)
|