9. Nagłówki protokołu HTTP

Ostatnim tematem, który warto poruszyć to wsparcie w przeglądarkach w zakresie bezpieczeństwa. Współczesne przeglądarki internetowe wspierają obsługę zestawu nagłówków otrzymywanych z serwera definiujących konteksty bezpieczeństwa. Ich obecność pozwala uniknąć niektórych podatności poprzez zdefiniowanie zasad korzystania z różnych zasobów i protokołów.

  • Strict-Transport-Security – nagłówek specyfikujący, że strona korzysta wyłącznie z protokołu HTTPS do komunikacji, uniemożliwia załadowanie zasobów nieszyfrowanych z domeny go deklarującej,
  • X-Frame-Options – nagłówek umożliwiający zdefiniowanie czy bieżąca strona może zostać załadowana jako zagnieżdżona w IFRAME,
  • X-Content-Type-Options – umożliwia wyłączenie możliwości zgadywania rodzaju odbieranych plików po zawartości, wymuszając sztywne stosowanie nagłówka Content-Type; współczesne przeglądarki są w stanie skorygować automatycznie błędy typu plików (np. obrazek w formacie JPG z rozszerzeniem PNG), co może stanowić niewielkie zagrożenie,
  • Referrer-Policy – umożliwia zdefiniowanie polityki ujawniania strony z której wykonano żądanie,
  • Clear-Site-Data – umożliwia zdefiniowanie polityki czyszczenia danych po wylogowaniu,
  • Cache-Control – umożliwia zdefiniowanie w jaki sposób będą przechowywane dane w pamięci podręcznej lub na serwerach pośredniczących,
  • Content-Security-Policy – najważniejsze narzędzie do definiowania zasad wykorzystania elementów zewnętrznych – omówione już wcześniej.
Odpowiednie stosowanie kombinacji tych nagłówków może znacząco poprawić zarówno bezpieczeństwo jak i prywatność użytkowników.