Gå til indhold
SilktideHjælp

Content Security Policy

Silktide tjekker, at hver side angiver en Content Security Policy, en standardiseret sikkerhedsforanstaltning, der fortæller browsere, hvilke kilder til scripts, billeder og andet indhold siden må bruge.

En Content Security Policy (CSP) leveres som en eller et meta-tag, for eksempel:

Content-Security-Policy: default-src 'self'; script-src 'self' scripts.example.com

Dette eksempel fortæller browseren, at den kun må indlæse indhold fra dit eget domæne samt scripts fra én pålidelig vært.

Hvorfor dette er vigtigt

Uden en CSP kører en side alt, hvad den får leveret. Hvis en angriber formår at indsætte et script – via et kompromitteret tredjepartstag, et sårbart kommentarfelt eller et kapret annoncenetværk – udfører browseren det med fuld adgang til siden, herunder alt, dine besøgende skriver. Denne angrebstype, cross-site scripting, er fortsat en af de mest almindelige måder, websites kompromitteres på.

En CSP er sikkerhedsnettet på browsersiden: Indsat indhold fra en ikke-godkendt kilde indlæses ganske enkelt ikke. Den dokumenterer også, hvilke tredjeparter dine sider kommunikerer med, hvilket hjælper med at påvise overholdelse af regler om beskyttelse af personoplysninger såsom .

Sådan løser du det

  1. Angiv de legitime kilder, som dine sider indlæser indhold fra: dit eget domæne, dit , analytics, skrifttyper og indlejrede medier.
  2. Skriv en politik, der kun tillader disse kilder. Start strengt, for eksempel default-src 'self', og tilføj specifikke kilder for hver indholdstype (script-src, img-src, style-src) efter behov.
  3. Konfigurer din webserver, hostingplatform eller CDN til at sende politikken som Content-Security-Policy-header på hver side. Hvis du ikke kan ændre headere, virker et <meta http-equiv="Content-Security-Policy">-tag i sidens head også, selv om headeren foretrækkes.
  4. Test før du håndhæver: Send først politikken som Content-Security-Policy-Report-Only, og hold øje med browserkonsollen for indhold, der ville være blevet blokeret. Bemærk, at dette tjek leder efter den håndhævende header, så en politik, der kun rapporterer, ikke består det.

Sådan tester Silktide dette

  1. Indlæs hver side, og indsamle dens HTTP-headere sammen med eventuelle http-equiv-meta-tags på siden, som browsere behandler på samme måde.
  2. Se efter en Content-Security-Policy-værdi et af stederne.
  3. Rapportér siden, hvis ingen af dem findes, eller hvis værdien er tom.
  4. Silktide vurderer ikke politikkens kvalitet – kun om der findes en.

Fejlfinding

Jeg har angivet en politik, men tjekket fejler stadig

Bekræft, at headeren vises på de præcise sider, der scannes – politikker er nogle gange kun konfigureret for forsiden eller én virtuel vært. Du kan se de headere, som en side returnerer, i din browsers udviklerværktøjer under fanen Netværk.

Vil en CSP ødelægge mit website?

En politik, der er for streng, kan blokere dine egne scripts eller typografier. Derfor anbefales det på det kraftigste først at teste med Content-Security-Policy-Report-Only – den rapporterer overtrædelser uden at blokere noget.

Få mere at vide

Sidst opdateret

Var denne side nyttig?