Content Security Policy
Silktide tarkistaa, että jokaisella sivulla on määritetty Content Security Policy, vakiintunut tietoturvatoimi, joka kertoo selaimille, mitä skriptien, kuvien ja muun sisällön lähteitä sivu saa käyttää.
Content Security Policy (CSP) välitetään tai metatunnisteena, esimerkiksi:
Content-Security-Policy: default-src 'self'; script-src 'self' scripts.example.com
Tämä esimerkki kertoo selaimelle, että se saa ladata sisältöä vain omasta verkkotunnuksestasi sekä skriptejä yhdestä luotetusta palvelimesta.
Miksi tämä on tärkeää
Ilman CSP:tä sivu suorittaa kaiken sille annetun sisällön. Jos hyökkääjä onnistuu lisäämään skriptin – vaarantuneen kolmannen osapuolen tunnisteen, haavoittuvan kommenttikentän tai kaapatun mainosverkoston kautta – selain suorittaa sen sivun täydellä käyttöoikeudella, mukaan lukien kaiken, mitä kävijäsi kirjoittavat. Tällainen hyökkäystyyppi, sivustojen välinen komentosarjahyökkäys, on edelleen yksi yleisimmistä tavoista, joilla verkkosivustoja vaarannetaan.
CSP toimii selaimen turvaverkkona: hyväksymättömästä lähteestä lisätty sisältö ei yksinkertaisesti lataudu. Se myös dokumentoi, minkä kolmansien osapuolten kanssa sivusi kommunikoivat, mikä auttaa osoittamaan tietosuojasäädösten, kuten , noudattamisen.
Näin korjaat ongelman
- Luettele luotettavat lähteet, joista sivusi lataavat sisältöä: oma verkkotunnuksesi, , analytiikka, fontit ja upotettu media.
- Kirjoita käytäntö, joka sallii vain nämä lähteet. Aloita tiukasti, esimerkiksi
default-src 'self', ja lisää tarvittaessa sisältötyyppikohtaisia lähteitä (script-src,img-src,style-src). - Määritä verkkopalvelimesi, hosting-alustasi tai CDN:si lähettämään käytäntö
Content-Security-Policy-otsakkeena jokaisella sivulla. Jos et voi muuttaa otsakkeita, sivun head-osiossa oleva<meta http-equiv="Content-Security-Policy">-tunniste toimii myös, vaikka otsake on suositeltavampi. - Testaa ennen käyttöönottoa: lähetä käytäntö ensin muodossa
Content-Security-Policy-Report-Onlyja seuraa selaimen konsolista sisältöä, joka olisi estetty. Huomaa, että tämä tarkistus etsii pakottavaa otsaketta, joten pelkkä raportointikäytäntö ei läpäise sitä.
Näin Silktide testaa tämän
- Lataa jokainen sivu ja kerää sen HTTP-otsakkeet sekä sivulla olevat
http-equiv-metatunnisteet, joita selaimet käsittelevät samalla tavalla. - Etsi
Content-Security-Policy-arvo kummastakin paikasta. - Ilmoita sivusta, jos kumpaakaan ei ole tai arvo on tyhjä.
- Silktide ei arvioi käytännön laatua – ainoastaan sitä, että sellainen on olemassa.
Vianmääritys
Määritin käytännön, mutta tarkistus epäonnistuu edelleen
Varmista, että otsake näkyy täsmälleen niillä sivuilla, joita skannataan – käytännöt määritetään joskus vain etusivulle tai yhdelle virtuaaliselle palvelimelle. Näet sivun palauttamat otsakkeet selaimesi kehittäjätyökaluista Verkko-välilehdeltä.
Rikkooko CSP verkkosivustoni?
Liian tiukka käytäntö voi estää omat skriptisi tai tyylisi. Siksi testaamista ensin
Content-Security-Policy-Report-Only-tilassa suositellaan vahvasti – se raportoi
rikkomuksista estämättä mitään.