Defaults.Exposed

Defaults.ExposedFikser › HSTS (Strict-Transport-Security)

Slik fikser du HSTS (Strict-Transport-Security)

HSTS er en en-linje instruksjon nettstedet ditt gir alle nettlesere: 'kom alltid tilbake til meg over den sikre, krypterte tilkoblingen — aldri den usikre.' Uten den kan hengelåsen stille strippes bort på delt WiFi, og det aller første besøket på siden er eksponert.

Bunnlinjen for virksomheten din: Å ha HTTPS (hengelåsen) er ikke det samme som å håndheve den. Uten HSTS kan en angriper på samme WiFi som kunden stille nedgradere tilkoblingen til vanlig, ukryptert HTTP — og fange pålogginger, kortdetaljer og skjemadata mens kunden ser ingenting feil. SSL-sertifikatet du kanskje betaler for, omgås. Fiksen er gratis og tar omtrent 15 minutter for den som driver siden.

Hva dette kan koste deg

Hvorfor det er viktig. HTTPS beskytter en tilkobling når den er kryptert — men den tvinger ikke nettlesere til å bruke den. Angripere utnytter det gapet med 'SSL-stripping': på delt nettverk holder de stille besøkende på usikker HTTP og leser alt. HSTS forteller nettleseren å nekte vanlig HTTP for domenet ditt fullstendig, i lang tid, slik at gapet lukkes etter det første besøket. Det er én enkelt svarhodet, gratis å legge til, og i scoring vår er det verdt reelle poeng fordi en manglende eller for-kort verdi lar alle besøkende på offentlig WiFi stå eksponert.

Hva dette er, i enkle ord

Du har nesten sikkert HTTPS — den lille hengelåsen i nettleserlinjen. Bra. Men her er delen nesten ingen forteller deg: å ha HTTPS er ikke det samme som å håndheve det.

HTTPS krypterer en tilkobling når nettleseren bestemmer seg for å bruke den. HSTS — kort for HTTP Strict Transport Security — er instruksjonen som gjør at nettleseren alltid bruker den. Det er én enkelt, usynlig linje nettstedet ditt sender til alle besøkende som sier, i praksis:

«Fra nå av, for domenet mitt, snakk bare med meg over den sikre tilkoblingen. Aldri den usikre. Ikke engang prøv.»

Nettleseren husker det og adlyder det i like lang tid som du forteller den — typisk ett år. Etter en besøkendes første sikre besøk, vil nettleseren rett og slett nekte å laste siden din over vanlig, ukryptert HTTP, selv om noe prøver å tvinge det.

Uten HSTS eksisterer ikke den «bruk alltid den sikre versjonen»-regelen — og angripere vet nøyaktig hvordan de skal utnytte gapet.

Hva dette kan koste deg

Dette er realistiske, hverdagsscenarioer. Vi nevner aldri en ekte virksomhet; disse er illustrasjoner på hvordan gapet brukes.

  1. Utsjekking på kafé. En kunde åpner butikken din på kafé-WiFi og går til kassen. En angriper på samme nettverk kjører et gratis, velkjent verktøy som holder kunden på vanlig HTTP i stedet for HTTPS. Kunden ser hva som ser ut som siden din normal — ingen advarsel, ingen ødelagt hengelås på stedet de ville blikket — og taster inn kortdetaljene. Angriperen leser hvert tastetrykk. SSL-sertifikatet ditt gjorde ingenting, fordi tilkoblingen aldri fikk lov til å bli sikker i utgangspunktet.

  2. Den reisende ansatte. En ansatt logger inn på adminpanelet eller nettposten din fra et hotell eller en flyplass. Det samme nedgraderingstrikset fanger brukernavnet og passordet. Nå har angriperen en vei inn i virksomheten din — ikke fordi passordpolicyen var svak, men fordi innloggingssiden var nåbar over usikker HTTP.

  3. Avtalen som staller. En større kunde sender deg standard sikkerhets-spørreskjema før de signerer. Én linje spør: «Håndhever nettstedet ditt HTTPS via HSTS?» IT-kontakten din må svare «nei», og innkjøpsprosessen pause mens du haster for å fikse en gratis, 15-minutters innstilling som nå ser ut som et rødt flagg foran en kjøper.

  4. Nettforsikrings- eller samsvarssjekken. En forsikrerers skanning, eller en revisor som gjennomgår databeskyttelsesposturet ditt, flagget den manglende toppteksten. Kryptering av persondata er en eksplisitt forventning under databeskyttelsesregler (GDPR Artikkel 32), og «vi har et sertifikat, men håndhever det ikke» er et svakt sted å stå.

  5. Den falske trygghetsfølelsen. Du betaler for SSL, hengelåsen vises, og alle antar at siden er trygg. Den er det for det meste — til en kunde er på et delt nettverk, som er nøyaktig når de er mest sårbare og minst sannsynlig til å legge merke til noe feil.

Gjennomgangstemaet: kostnadene er ikke abstrakte. Det er en ekte kundes kort eller pålogging, fanget på det verst mulige tidspunktet, uten at noe alarm går av.

Hva det faktisk er

Når en nettleser ber nettstedet ditt om en side, sender serveren tilbake siden pluss noen usynlige «topptekster» — ekstra instruksjoner nettleseren leser, men den besøkende aldri ser. HSTS er én av disse topptekstene:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

Tre deler betyr noe:

Hvorfor «det første besøket» betyr noe

HSTS har én iboende begrensning: en nettleser adlyder bare regelen etter at den har sett toppteksten minst én gang. Så en helt ny besøkendes aller første tilkobling er fortsatt et lite eksponeringsvindu. To ting innsnevrer det: en HTTP-til-HTTPS-omdirigering (som får dem raskt over til den sikre versjonen) og preload (som fjerner vinduet fullstendig). Det er grunnen til at et komplett oppsett kombinerer HSTS med en riktig omdirigering.

Hva «bra» ser ut som — og hvordan det scores

Sjekken vår leser den live toppteksten din og bedømmer max-age:

max-age-verdiHva det betyrResultat
1 år eller mer (≥ 31536000)Utmerket — den anbefalte innstillingenFull score
6 måneder eller mer (≥ 15768000)Bra, men ikke fullt årDelvis
1 dag eller mer (≥ 86400)Svakt — for kort til å være påliteligLav / delvis
Under 1 dag, eller ingen topptekstPraktisk talt ingen beskyttelseFeil (høy alvorlighetsgrad)

Så en topptekst som eksisterer men er satt til noen minutter behandles som en feil — den ser konfigurert ut, men gjør ikke jobben. Sikt mot ett år. Sjekken merker også om includeSubDomains og preload er til stede.

Slik fikser du det (gratis, ~15 minutter)

Send denne seksjonen til den som driver nettstedet — IT-personen, webutvikleren eller vertskapssupporten. Fiksen er gratis. Det er én topptekst, eller et bytte i webhotellet ditt. Det er ingenting å kjøpe.

Én viktig rekkefølgeregel først: HSTS er klebrig — når den er aktivert, vil nettlesere nekte vanlig HTTP for domenet ditt i hele max-age. Så bekreft at HTTPS fungerer riktig på siden din og hvert underdomene før du slår det på bredt. Den trygge veien er: test med en kort verdi → bekreft at ingenting går i stykker → hev til ett år.

Steg 1 — Sørg for at HTTPS allerede fungerer overalt

Besøk siden og viktige underdomener over https:// og bekreft at de laster rent med et gyldig sertifikat. Bekreft også at vanlige http://-forespørsler omdirigeres til https://. (Hvis de ikke gjør det, fiks HTTP-til-HTTPS-omdirigeringen først — HSTS forutsetter at den er på plass.)

Steg 2 — Legg til toppteksten (velg plattform)

Cloudflare (eller lignende CDN): Dette er det enkleste. Gå til SSL/TLS → Kantesertifikater → HTTP Strict Transport Security (HSTS) og aktiver det. Sett Max-Age til 6 måneder eller 12 måneder, og aktiver «Bruk HSTS-policy på underdomener» når du er sikker på at alle underdomener er på HTTPS.

Nginx: legg til inne i HTTPS server-blokken:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

Apache: sørg for at mod_headers er aktivert, og legg til i den virtuelle HTTPS-verten:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

Microsoft IIS: legg til i web.config inne i <customHeaders>:

<add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains; preload" />

Google Workspace / Microsoft 365-merknad: disse driver e-posten din, ikke webhotellet ditt — HSTS settes der det offentlige nettstedet faktisk befinner seg (CDN-en, nettserveren eller nettstedsbyggeren), ikke i Workspace/365-admin. Hvis siden er på en bygger som Squarespace, Wix eller Shopify, håndteres HSTS vanligvis for deg; sjekk SSL/sikkerhetsinnstillingene hvis sjekken vår flagget det.

Steg 3 — Test lite, så forplikter

Start med max-age=300 (5 minutter). Bekreft at siden fortsatt laster perfekt overalt. Hev deretter til max-age=31536000 (ett år). Det er full-score-innstillingen.

Steg 4 (valgfritt, gullstandard) — preload

Når du er trygg og har kjørt en ett-årig topptekst med includeSubDomains en stund, kan du sende domenet ditt til hstspreload.org for å bakes inn i nettlesere. Dette lukker det første-besøket-vinduet fullstendig. Behandle det som en bevisst forpliktelse — å fjerne et domene fra listen er tregt.

Vanlige feil

FAQ

Vi har allerede HTTPS og hengelåsen vises. Er ikke det nok?

Nei — og dette er den vanligste misforståelsen. Hengelåsen betyr at en tilkobling KAN krypteres; den tvinger ikke nettlesere til å bruke den krypterte versjonen. Uten HSTS kan en angriper på samme nettverk holde en besøkende på vanlig HTTP (kalt SSL-stripping) og lese alt de skriver, mens kunden ser et normalt-utseende nettsted. HSTS er instruksjonen som gjør 'kun kryptert' obligatorisk. HTTPS uten HSTS er en låst dør som faktisk ikke er lukket ordentlig.

Er dette dyrt eller risikabelt å slå på?

Selve fiksen er gratis — det er én linje i nettserveren eller et bytte i CDN-en — og tar omtrent 15 minutter. Den ene reelle forsiktigheten: HSTS er klebrig. Når en nettleser ser den, vil den nekte vanlig HTTP for domenet i like lang tid som du spesifiserte. Så du må være sikker på at HTTPS fungerer på hovedsiden OG hvert underdomene før du aktiverer det bredt. Start med en kort testverdi, bekreft at ingenting går i stykker, og hev det deretter til ett år. Gjort i den rekkefølgen er risikoen ubetydelig.

Hva ser 'bra' faktisk ut som?

En max-age på minst ett år (31536000 sekunder). Sjekken vår gir full score ved ett år eller mer, delvis ved seks måneder, svak/delvis ved én dag, og behandler alt under én dag som praktisk talt fraværende. Det sterkeste oppsettet legger også til includeSubDomains (dekker butikk.nettstedet.com, app.nettstedet.com osv.) og preload (bakes beskyttelse inn i nettlesere slik at selv det aller første besøket er trygt).

Hva er 'preload' og trenger vi det?

HSTS beskytter bare en besøkende ETTER at nettleseren har sett toppteksten minst én gang — så en helt ny besøkendes første forespørsel er fortsatt et lite vindu. HSTS preload-listen, innebygd i Chrome, Firefox, Safari og Edge, lukker det vinduet ved å sende domenet til nettlesere på forhånd. Det er valgfritt og en litt større forpliktelse (fjerning er treg), men det er gullstandarden. For de fleste små virksomheter er ett-årig max-age med includeSubDomains allerede et sterkt, trygt resultat; preload er det ekstra steget når du er godt etablert.

Vi er på Squarespace / Wix / Shopify — trenger vi å gjøre noe?

De fleste fullstyrte nettstedsbyggere (Squarespace, Wix, Shopify og lignende) håndhever HTTPS og setter ofte HSTS for deg automatisk — så du er kanskje allerede godkjent uten å gjøre noe. Unntaket er når du bruker et eget domene eller CDN foran nettstedet; da kan innstillingen falle gjennom sprekkene. Kjør sjekken: hvis den består, er du ferdig. Hvis den flagget, er fiksen byttet i plattformens SSL/sikkerhetsinnstillinger, eller én linje hos CDN-en.

Hvis vi ikke fikser det, senker det karakteren vår?

Ja. HSTS er en scoret web-sikkerhetssjekk, ikke informativ — en manglende eller for-kort topptekst koster poeng og er vurdert som høy alvorlighetsgrad, fordi den direkte eksponerer besøkendes data på delte nettverk. Det er også et av de billigste poengene å gjenvinne: én enkelt gratis topptekst, omtrent 15 minutters arbeid.