Przejdź do zawartości

HTTP Strict Transport Security

Z Wikipedii, wolnej encyklopedii
To jest stara wersja tej strony, edytowana przez 109.241.245.159 (dyskusja) o 03:30, 31 lip 2016. Może się ona znacząco różnić od aktualnej wersji.

HTTP Strict Transport Security (HSTS) - mechanizm bezpieczeństwa sieci, który chroni strony przed atakami takimi, jak wymuszone zmniejszenie poziomu protokołu oraz przechwytywanie sesji. Dzięki niemu do serwerów można połączyć się tylko za pomocą przeglądarek, korzystających z bezpiecznych połączeń HTTPS[1], natomiast nigdy nie dopuszcza on połączeń na bazie niezabezpieczonego protokołu HTTP. HSTS jest uznawany za standardowy protokół przez IETF; został opisany w dokumencie RFC 6797.

O stosowaniu polityki HSTS[2] serwer informuje użytkownika za pomocą pola znajdującego się w nagłówku odpowiedzi HTTP o nazwie "Strict-Transport-Security". Polityka HSTS określa czas, w którym użytkownik może być połączony z serwerem tylko poprzez bezpieczne połączenie[3].

Historia specyfikacji

Specyfikację HSTS opublikowano jako RFC 6797 w dniu 19 listopada 2012 po tym, jak została zaaprobowana do proponowanego standardu RFC 2 października 2012 przez IESG.[4] Początkowo autorzy wydali ją 17 czerwca 2010. Nazwa specyfikacji została zmieniona ze "Strict Transport Security" (STS) na "HTTP Strict Transport Security", ponieważ odnosiła się ona tylko do protokołu HTTP[5]. Mimo tego, pole nagłówka odzewu(ang. response header field) HTTP sprecyzowana w specyfikacji HSTS pozostaje nazwane "Strict-Transport-Security".

Ostatnia tzw. "społecznościowa wersja" specyfikacji, nazywanej wtedy "STS", została opublikowana 18 grudnia 2009, z poprawkami wniesionymi na podstawie opinii użytkowników.[6]

Oryginalna specyfikacja, której autorami byli Jeff Hodges[7] z PayPal, Collin Jackson[8] oraz Adam Barth[9] została wydana 18 września 2009.[10]

Specyfikacja HSTS bazuje na oryginalnej pracy Jacksona i Barth'a jak opisano w ich artykule : “ForceHTTPS: Protecting High-Security Web Sites from Network Attacks”[11].

Ponadto, HSTS jest realizacją aspektu całościowej wizji poprawy bezpieczeństwa w internecie, którą zaproponowali Jeff Hodges oraz Andy Steingruebl w artykule z 2010 roku The Need for Coherent Web Security Policy Framework(s)[12].

Gdy witryna sieci web[13] mandatuje użycie Polityki HSTS do użytkowników, zgodne aplikacje użytkowników zachowują się, jak następuje:[14]

  1. Automatycznie zamieniają wszystkie niezabezpieczone odniesienia do witryny na połączenia chronione (Na ten przykład, http://example.pl/jakas/strona/ zmieni się w https://example.pl/jakas/strona/ przed nawiązaniem połączenia.)
  2. Jeżeli bezpieczeństwo połączenia nie może zostać zapewnione (t.zn. certyfikat SSL serwera jest niezaufany), pokazany zostanie komunikat o błędzie i użytkownik nie będzie wstanie skorzystać z witryny.[15]

Polityka HSTS pomaga chronić użytkowników sieci przed niektórymi pasywnymi (Nasłuch) i aktywnymi atakami.[16] Przy stosowaniu Polityki HSTS dla danej witryny przez preglądarkę, możliwość przechwytywania zapytań i odpowiedzi pomiędzy witryną a użytkownikiem w Ataku pośrednictwa została drastycznie zmniejszona.

  1. HTTPS oznacza protokół HTTP, wykorzystujący szyfrowanie Transport Layer Security (TLS/SSL). Zabezpieczone w ten sposób połączenia HTTP są określane w standardzie URI jako "https", natomiast taką "kombinację" często określa się mianem "protokołu HTTPS".
  2. Jeff Hodges, Jackson, Collin, Barth, Adam: Section 5.2. HSTS Policy. [w:] RFC 6797 [on-line]. Listopad 2012. [dostęp 21 listopada 2012].
  3. Piotr Bratkowski: HSTS czyli HTTP Strict Transport Security. sierpień 2013. [dostęp 19 maja 2016].
  4. [websec Protocol Action: 'HTTP Strict Transport Security (HSTS)' to Proposed Standard (draft-ietf-websec-strict-transport-sec-14.txt)]. 2 Oct 2012. [dostęp 2 Oct 2012].
  5. Re: [HASMAT "STS" moniker (was: IETF BoF @IETF-78 Maastricht: HASMAT...)]. 30 June 2010. [dostęp 22 July 2010].
  6. Strict Transport Security -06. 18 grudnia 2009. [dostęp 23 grudnia 2009].
  7. Jeff Hodges's homepage. [dostęp 26 Aug 2011].
  8. Collin Jackson's homepage. [dostęp 8 Mar 2011].
  9. Adam Barth's homepage. [dostęp 8 Mar 2011].
  10. Strict Transport Security -05. 18 wrzesień 2009. [dostęp 19 listopad 2009].
  11. ForceHTTPS: Protecting High-Security Web Site from Network Attacks. April 2008. [dostęp 19 November 2009].
  12. Jeff Hodges, Steinguebl, Andy: The Need for Coherent Web Security Policy Framework(s). 29 październik 2010. [dostęp 21 listopad 2012].
  13. Nations, Daniel. "Web Applications: What is a Web Application?". About.com. Z 21 listopada 2012.
  14. Hodges, Jeff; Jackson, Collin; Barth, Adam (Listopad 2012)."Section 5. HSTS Mechanism Overview". RFC 6797. IETF. Z 30 czerwca 2014 roku.
  15. Hodges, Jeff; Jackson, Collin; Barth, Adam (Listopad 2012). "Sekcja 12.1. No User Recourse". RFC 6797. IETF. Z 30 czerwca 2014 roku.
  16. Hodges, Jeff; Jackson, Collin; Barth, Adam (Listopad 2012). "Sekcja 2.3. Model Zagrożeń (Threat Model)". RFC 6797. IETF. Z 21 listopada 2012 roku.