Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 45075|Svare: 7

[ASP.NET] ASP.NET CSRF-angrep Ajax-forespørsel innkapsling

[Kopier lenke]
Publisert 2019-9-12 09:42:54 | | | |
Hva er CSRF?

CSRF (Cross-site request forgery), også kjent som ett klikk angrep/session riding, kinesisk forkortelse: CSRF/XSRF. CSRF (Cross Site Request Forgery) er en nettverksangrepsmetode som ble listet som en av de 20 største sikkerhetsrisikoene på Internett i 2007. Andre sikkerhetsrisikoer, som SQL-skriptinjeksjon og angrep på tvers av domene-skript, har blitt godt kjent de siste årene, og mange nettsteder har forsvart seg mot dem. CSRF er imidlertid fortsatt et fremmed begrep for de fleste. Selv den mest kjente Gmail hadde en CSRF-sårbarhet sent i 2007, som ble hacket og forårsaket store tap for Gmail-brukere.

Hva kan CSRF gjøre?

Du kan forstå CSRF-angrep som dette: en angriper har stjålet identiteten din og sendt ondsinnede forespørsler i ditt navn. CSRF kan gjøre ting som å sende e-poster, sende meldinger, stjele kontoen din, eller til og med kjøpe varer og overføre virtuell valuta på dine vegne...... Problemene som oppstår inkluderer: lekkasje av personlig privatliv og sikkerhet på eiendommen.

ASP.NET MVC AntiForgeryToken anti-forfalskningsmerke

I ASP.NET MVC genereres skjematokens og informasjonskapsel-tokens automatisk som standard når @Html.AntiForgeryToken() brukes på visningssiden. Men hvis vi vil oppnå manuell henting i bakgrunnen, må vi bruke System.Web.Helpers.AntiForgery-klassen, og venner som er interessert i å se kildekoden vil oppdage at metoden for internt kall @Html.AntiForgeryToken() faktisk er den samme som for AntiForgery-klassen.

Den brukes hovedsakelig for å hente den tilsvarende formen og cookie-token gjennom to statiske metoder: AntiForgery.GetHtml() eller AntiForgery.GetTokens(streng oldCookieToken, ut-streng newCookieToken, ut-streng formToken). Det bør imidlertid bemerkes at når GetHtml-metoden er kalt, vil den tilsvarende cookie-tokenen automatisk bli generert, og deretter vil et HTML-kode med skjematoken-verdien skjult felt returneres direkte, og den returnerte verdien vil være i denne formen:

<input name="__RequestVerificationToken" type="hidden" value="8_nUk_3z0svQr9qcvRBi9SWMZ2-SYmuy9kRe9OgRobGULkb2Z4JZxRZFhR0ndeoy9hmDLDru7MFk-W4xrnL5z5T6VbkfXK7fyRk-egQBGm41">

Navnenavnet på det skjulte feltet er vanligvis fastsatt til "__RequestVerificationToken", og verdien er en kryptert sikkerhetstoken. Dette skjulte feltet plasseres vanligvis i skjemaet som skal sendes inn, og den endelige innsendingen verifiseres mot cookie-tokenet.

Hvis du bruker GetTokens-metoden, kan du hente det krypterte skjemaet og cookie-tokenet etter å ha sendt inn de tilsvarende parameterne, men her må du lagre de tilsvarende verdiene selv.

Deretter vil vi introdusere metoden for manuell oppdatering av AntiForgeryToken, hovedsakelig gjennom AJAX.

Pakkekode:



Testkode:



Vi fant at når man sender en ajax-forespørsel, inkluderes __RequestVerificationToken parametere automatisk, som vist i figuren under:







Foregående:Windows CMD View Historisk kommandohistorikkveiledning
Neste:Møt Azure DevOps
 Vert| Publisert 25.09.2019 kl. 18:09:46 |
Publisert 2019-11-10 15:06:37 |
Skrev du ikke en bakgrunnsbehandlingsplan? Bakgrunnsbehandlingen inne i headeren er annerledes enn bakgrunnsbehandlingen uten headeren
 Vert| Publisert 21.11.2019 10:38:40 |
Danqingcheng publisert 2019-11-10 15:06
Skrev du ikke en bakgrunnsbehandlingsplan? Bakgrunnsbehandlingen inne i headeren er annerledes enn bakgrunnsbehandlingen uten headeren

Hmm, jeg må skrive om filteret
 Vert| Publisert 20.20.2021 19:22:14 |
mvc ajax med AntiForgeryToken for å forhindre CSRF-angrep
https://www.itsvse.com/thread-4207-1-1.html
Publisert 2021-12-9 18:41:29 |
testtesttesttesttesttesttest
 Vert| Publisert 17.04.2022 00:59:39 |
 Vert| Publisert 26.09.2024 kl. 15:57:52 |
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com