Security

HTTP Headers

Wyświetl nagłówki odpowiedzi i audytuj polityki bezpieczeństwa.

URL http or https (default https). Up to 3 redirects are followed.
https://example.com/
Status: 200 HTTP/1.1 88 ms
F
Security grade?
Score
0 / 100
Status
200
Protocol?
HTTP/1.1
Latency?
88 ms
Security audit
  • fail Strict-Transport-Security? +0/25
    No HSTS header — a downgrade attack on a public Wi-Fi can redirect the user to plaintext HTTP.
  • fail Content-Security-Policy? +0/25
    No CSP — a single XSS bug can execute arbitrary scripts on this origin.
  • fail X-Frame-Options / frame-ancestors? +0/15
    Page can be framed by any site — vulnerable to clickjacking.
  • fail X-Content-Type-Options +0/10
    nosniff is missing — IE/old-Edge may execute disguised scripts based on content sniffing.
  • fail Referrer-Policy? +0/15
    No Referrer-Policy — full URLs (including query strings) leak to every clicked link.
  • fail Permissions-Policy? +0/10
    No Permissions-Policy — third-party iframes can request sensitive features without restriction.
Response headers
date: Sun, 26 Jul 2026 18:12:57 GMT content-type: text/html transfer-encoding: chunked connection: keep-alive server: cloudflare last-modified: Tue, 21 Jul 2026 07:16:00 GMT allow: GET, HEAD accept-ranges: bytes age: 9 cf-cache-status: HIT cf-ray: a21560248c6271cb-FRA
What does each field mean?

Field reference

Ocena bezpieczeństwa

Zagregowany wynik nagłówków bezpieczeństwa ważony wpływem: HSTS i CSP ważą najwięcej. A+ wymaga poprawnego ustawienia wszystkich pięciu nagłówków; F oznacza brak jakichkolwiek. Użyj jako szybkiej miary pierwszego rzutu oka, a potem zajrzyj do szczegółów per-nagłówek poniżej.

Protokół HTTP

HTTP/1.1 to przestarzały protokół tekstowy. HTTP/2 multipleksuje strumienie po jednym połączeniu TCP (kompresja nagłówków, server push). HTTP/3 działa na QUIC (UDP) — lepiej na łączach niestabilnych i mobilnych. Nowoczesny serwer powinien udostępniać co najmniej HTTP/2.

Opóźnienie

Round-trip od naszego serwera do celu, aż do pierwszego bajtu odpowiedzi. To nie benchmark CDN — wpływają na niego odległość geograficzna, TLS handshake i rozgrzewka serwera. Traktuj jako orientacyjny sygnał świeżości, a nie produkcyjne dane wydajności.

Łańcuch przekierowań

Długi łańcuch (3+ przekierowania) szkodzi SEO i wydajności. Klasyczny wzorzec to <code>http://example.com → https://example.com → https://www.example.com</code>: dwa hopy, akceptowalnie. Powyżej pięciu — błąd konfiguracji.

Strict-Transport-Security (HSTS)

HSTS mówi przeglądarce: "nigdy więcej nie łącz się ze mną po zwykłym HTTP". <code>max-age=15768000</code> (6 miesięcy) to praktyczne minimum; <code>includeSubDomains; preload</code> dopisuje domenę do globalnej listy preload. Po wpisaniu na listę nie da się jej opuścić przez ~12 miesięcy — najpierw skonfiguruj resztę.

Content-Security-Policy (CSP)

CSP określa, skąd mogą się ładować skrypty, style, obrazy i ramki. <code>default-src 'self'</code> to rozsądny baseline; oparte na nonce <code>script-src</code> jest najmocniejsze. Uwaga na <code>unsafe-inline</code> i <code>unsafe-eval</code> — niemal niwelują ochronę CSP przed XSS. Używaj report-uri / report-to do monitoringu.

X-Frame-Options

Ustaw <code>DENY</code>, aby całkowicie zabronić ramek, lub <code>SAMEORIGIN</code>, aby zezwolić tylko na ramki tego samego pochodzenia. Nowoczesnym odpowiednikiem jest <code>frame-ancestors</code> w CSP (bogatsza składnia) — każdy z tych dwóch spełnia nasz audyt.

Referrer-Policy

Określa, co przeglądarka wysyła w nagłówku <code>Referer</code>. <code>strict-origin-when-cross-origin</code> (domyślne w nowoczesnych przeglądarkach) to dobry baseline: pełny URL przy same-origin, jedynie origin przy cross-origin, nic przy downgrade. <code>no-referrer</code> usuwa referer całkowicie; <code>unsafe-url</code> wycieka pełne URL-e przy downgrade — unikać.

Permissions-Policy

Następca Feature-Policy. Pozwala zezwalać / zabraniać API przeglądarki per-origin: <code>camera=(), microphone=(), geolocation=(self)</code>. Głównie defense-in-depth; egzekwowane na iframe, więc bezpieczniejsze zachowanie dla osadzonej treści.

X-Content-Type-Options: nosniff

Bez tego nagłówka przeglądarka może wykonać odpowiedź JSON jako JavaScript, jeśli "wygląda jak skrypt". Ustawienie <code>X-Content-Type-Options: nosniff</code> wymusza honorowanie zadeklarowanego Content-Type. Tani, zawsze bezpieczny do włączenia — nie ma dobrego powodu, by go pomijać.

O tym narzędziu

HTTP Headers pobiera Twój URL prawdziwym żądaniem HTTPS, przechwytuje każdy nagłówek odpowiedzi (oraz każdą pośrednią odpowiedź na trasie przekierowań) i przepuszcza wynik przez audyt bezpieczeństwa pokrywający nowoczesne nagłówki hardeningu: Strict-Transport-Security, Content-Security-Policy, X-Frame-Options / CSP frame-ancestors, X-Content-Type-Options, Referrer-Policy i Permissions-Policy. Każdy nagłówek jest sprawdzany pod kątem obecności, sensowności wartości i luk względem best practices.

Poza audytem wymieniamy każdy nagłówek dosłownie, byś mógł potwierdzić politykę cache'owania (Cache-Control, ETag, Vary), śledzenie CDN (CF-Ray, X-Cache, X-Served-By), kompresję (Content-Encoding: br/gzip) i wszelkie własne nagłówki, które emituje Twój stack. Metoda HTTP (GET lub HEAD), negocjowana wersja HTTP (HTTP/1.1, HTTP/2, HTTP/3) i wersja TLS są raportowane w pasku żądania.

Kiedy używać tego narzędzia

  • Hardening bezpieczeństwa. Przed produkcją potwierdź, że HSTS, CSP i reszta są ustawione na bezpieczne wartości — minimum baseline Mozilla Observatory.
  • Debugowanie cache. Zobacz dokładnie, jakie Cache-Control i Vary emituje Twój CMS lub framework — częsta przyczyna "stara wersja się trzyma".
  • Audyty łańcuchów przekierowań. Wykryj przypadkowe łańcuchy 302-potem-301, pętle HTTP-do-HTTPS-do-innego-hosta i brakującą kanonizację.
  • Zachowanie CDN. Potwierdź, że Cloudflare/Fastly/CloudFront faktycznie cache'uje to, co myślisz, czytając nagłówki Age, X-Cache i specyficzne dla CDN.

Co pokrywa nasz audyt bezpieczeństwa

Dla każdego z sześciu nagłówków hardeningu raportujemy: obecny lub brakujący, rzeczywistą wartość i krótki werdykt ("good", "needs tightening", "vulnerable"). HSTS bez includeSubDomains, CSP z unsafe-inline lub Referrer-Policy pozostawiony na default są flagowane. Nigdy nie mówimy "idealnej" polityki, bo każda strona jest inna — ale mówimy, które pokrętła nadal są na ustawieniu fabrycznym.

Najczęstsze pytania

Co to jest HSTS i dlaczego ma znaczenie?

Strict-Transport-Security mówi przeglądarce "zawsze używaj HTTPS dla tej domeny, nawet jeśli użytkownik wpisał http:// lub kliknął link http://". Raz ustawione z rozsądnym max-age (typowo 31536000 = 1 rok), zapobiega atakom SSL-stripping przy kolejnych wizytach. Dodanie includeSubDomains rozszerza ochronę na każdą subdomenę — mocny default dla większości stron, ale upewnij się najpierw, że wszystkie naprawdę obsługują HTTPS.

Brakuje mi CSP — jak bardzo to niebezpieczne?

Bez CSP każda dziura XSS na Twojej stronie wykonuje się z pełną mocą: może wycieknąć ciasteczka, załadować skrypty kontrolowane przez atakującego lub przepisać DOM. Startowy CSP default-src 'self' blokuje najpopularniejsze ładunki XSS (inline skrypty, zewnętrzne ładowanie skryptów) niemal bezkosztowo. Bardziej restrykcyjne polityki zakazujące inline skryptów wymagają refaktoryzacji, ale dają znacznie silniejszą ochronę.

Czy podążacie za przekierowaniami?

Tak — do pięciu hopów. Każdy krok jest pokazany z metodą, statusem, location i nagłówkami, byś mógł wykryć hopy mieszanego protokołu (HTTP→HTTPS), brakującą kanonizację (apex vs www) lub przypadkowe pętle. Większość produkcyjnych stron powinna przekierowywać najwyżej raz (HTTP → HTTPS), a potem serwować zawartość; więcej niż dwa hopy to zwykle znak nakładających się reguł rewrite.

Dlaczego narzędzie pokazuje HTTP/2, choć skonfigurowałem HTTP/3?

HTTP/3 (QUIC nad UDP) wymaga od klienta opt-in poprzez nagłówek Alt-Svc przy pierwszym połączeniu. Nasz checker używa domyślnie HTTP/2 nad TCP, co wciąż robi większość klientów HTTP; jeśli Twój serwer ogłasza HTTP/3 w Alt-Svc, zobaczysz ten nagłówek w wyniku, ale sama odpowiedź pozostanie na HTTP/2. Obecność Alt-Svc to właściwa rzecz do sprawdzenia.