Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 32621|Vastaus: 2

[Tietoturva-aukko] Puuttuvat tai turvattomat haavoittuvuudet "Content-Security-Policy" -otsikossa

[Kopioi linkki]
Julkaistu 11.6.2021 10.36.39 | | | |
HTTP-vastausotsikko Content-Security-Policy antaa sivustolle mahdollisuuden hallita, mitä resursseja käyttäjäagentti lataa tietylle sivulle. Poikkeustapauksia lukuun ottamatta käytännöt perustuvat pääasiassa palvelimen lähde- ja skriptipäätepisteiden määrittelyyn. Tämä auttaa estämään sivustojen välisiä skriptaushyökkäyksiä

Dokumentaatio:Hyperlinkin kirjautuminen on näkyvissä.

Tässä artikkelissa kuvataan W3C:n sisältöturvallisuuspolitiikkaa, lyhyesti CSP:tä. Kuten nimikin kertoo, tämä määrittely liittyy sisällön turvallisuuteen ja sitä käytetään pääasiassa määrittelemään, mitkä resurssit sivu voi ladata ja vähentää XSS:n esiintymistä.

Varhainen Chrome tuki CSP:tä X-WebKit-CSP-vastausotsikon kautta, kun taas Firefox ja IE tukivat X-Content-Security-Policyä, ja Chrome25 sekä Firefox23 alkoivat tukea standardia Content-Security-Policyä.

Arkaluonteisia tietoja verkkosovelluksista, kuten käyttäjätunnuksista, salasanoista, koneen nimistä ja/tai arkaluonteisista tiedostojen sijainnista, voidaan kerätä
Aloittelijat saatetaan suostutella antamaan arkaluonteisia tietoja, kuten käyttäjätunnuksia, salasanoja, luottokorttinumeroita, sosiaaliturvatunnuksia jne


Ensiksi luodaan uusi projekti MVC:n ASP.NET, luodaan uusi js-skripti ja ladataan dynaamisesti Baidu-tilastojen js-koodi seuraavasti:




Kuten yllä olevassa kuvassa näkyy, voimme nähdä JS-skriptikoodin, joka on onnistuneesti tuotu kolmannelle osapuolelle (Baidu), jos kolmannen osapuolen JS:ssä on haitallista koodia, kuten evästeiden varastamista, sisällön muokkaamista, linkkien hyppäämistä jne.

Miten voin estää epävarmojen kolmannen osapuolen JS-skriptien käyttöönoton?

Kiertotie

VastejohtoLisää "Sisältöturvallisuuspolitiikka"esimerkiksi:

Content-Security-Policy: default-src 'self' Hyperlinkin kirjautuminen on näkyvissä.;
                         connect-src 'ei mitään';
Content-Security-Policy: connect-src Hyperlinkin kirjautuminen on näkyvissä.
                         script-srcHyperlinkin kirjautuminen on näkyvissä.

Direktiivi
Esimerkki käskyarvosta
havainnollistaa
default-src
'itse' cnd.a.com
Määrittele oletuslatauskäytäntö kaikille resurssityypeille (JS, IMAGE, CSS, WEB FONT, AJAX-pyynnöt, iframet, multimedia jne.), ja käytä oletusta tietyille resurssityypeille, jos erillistä määriteltyä politiikkaa ei ole.
script-src
'itse' js.a.com
Määrittele JavaScriptille latauskäytäntö.
style-src
'itse' css.a.com
Määrittele latauspolitiikka tyylille.
img-src
'itse' img.a.com
Määrittele latauskäytäntö kuville.
connect-src
'itse'
Käytännöt ladataan pyyntöjä Ajaxista, WebSocketeista jne. Jos sitä ei sallita, selain simuloi vastausta, jonka tila on 400.
font-src
font.a.com
WebFontin latauskäytäntö.
object-src
'itse'
<object><embed> <applet> Lisäosien, kuten flashin, latauskäytännöt on otettu käyttöön tunnisteille kuten , tai .
media-src
media.a.com
<audio> <video> HTML-multimedian latausstrategiat on esitellä tunnisteille kuten tai .
frame-src
'itse'
Latauspolitiikka kehyksille.
Hiekkalaatikko
sallitut muodot
Ota käyttöön hiekkalaatikko (samankaltainen kuin iframen hiekkalaatikkoominaisuus) pyydetylle resurssille.
report-uri
/report-uri
Kerro selaimelle, mihin osoitteeseen lokitiedot tulee lähettää, jos pyydetty resurssi ei ole voimassa politiikassa. Erikois: Jos haluat, että selain raportoi vain lokit eikä estä mitään, voit käyttää Content-Security-Policy-Report-Only -otsikkoa.

Muokataan projektin web.config-tiedostoa lisäämällä mukautettu vastausotsikko seuraavasti:

Toista projekti alla esitetyllä tavalla:



Selain esti onnistuneesti kolmannen osapuolen js-skriptien latauksen:

Kieltäytyi lataamasta skriptiä 'https://hm.baidu.com/hm.js?6dbaac17dfeb2840b5b09d2dff6d2319', koska se rikkoo seuraavaa Content Security Policy -direktiiviä: "script-src 'self' http://localhost:56888/ ". Huomaa, että 'script-src-elem' ei ollut nimenomaisesti asetettu, joten 'script-src' on varasuunnitelma.
(Loppu)




Edellinen:ASP.NET MVC HttpApplication suoritusjärjestys
Seuraava:Yhteenvetona suosittu selaimen User-Agent-tietosanakirja
Julkaistu 17.12.2021 22.38.43 |
Opi !!!!!!!!!!!!!!
Julkaistu 18.10.2022 17.16.34 |
Olen etsinyt pitkään ja oppinut vähän
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com