See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 37886|Vastuse: 4

[ASP.NET] mvc ajax koos AntiForgeryTokeniga, et takistada CSRF rünnakuid

[Kopeeri link]
Postitatud 02.11.2017 10:06:29 | | | |
Sageli nähakse, et ajaxi postitusandmed projektis serverisse ei ole märgistatud võltsimisvastaste siltidega, mis põhjustab CSRF-rünnakuid, ning võltsimisvastaste märkide lisamine MVC-Asp.net le on väga lihtne, lisades vormile Html.AntiForgeryToken() vormi.
Html.AntiForgeryToken() genereerib kaks krüpteeritud stringi, mis salvestatakse küpsistesse ja sisenditesse. Me toome ka AntiForgeryTokeni ajaxi postitusse
Html.AntiForgeryToken() MVC-s on meede, mis takistab ristsaidiliste päringute võltsimise (CSRF: Cross-site request forgery) rünnakuid, mis erineb XSS-ist (XSS on tuntud ka kui CSS: Cross-Site-Script). XSS kasutab tavaliselt usaldusväärseid kasutajaid saidil, et sisestada pahatahtlik skriptikood võrku rünnakuks. CSRF seevastu on pseudo-usaldusväärne kasutaja, kes ründab veebisaiti.
Esmalt vaatame koodi järgmiselt:

Käivitamisel näeb genereeritud html-kood välja selline:



Vajutame testi nupule, et testi tellida ja vaadata, kas sellel on võltsimisvastased küpsised, nagu alloleval joonisel näidatud:



Kontrolleri kood on järgmine:

Peame lisama igale kontrollerile ValidateAntiForgeryToken funktsiooni; kui kasutaja ei too AntiForgeryTokenit, saame kasutajale tagastada sõbraliku teate järgmiselt:







Eelmine:asp.net mvc BindAttribute binding feature
Järgmine:Üks võrdlus CMMI ja Agile'i vahel: nende kahe põhiline erinevus
 Üürileandja| Postitatud 02.11.2017 11:05:37 |
Ülaltoodud meetodi puhul pead funktsiooni kohandama ning vaikimisi ValidateAntiForgeryToken funktsiooni kasutada ei saa

Vaikimisi funktsioon on võtta väärtus vormivormis ja seejärel hinnata seda



Kapseldasin postitusmeetodi jQuery'ga võltsimisvastase valideerimisega ja kood on järgmine:



 Üürileandja| Postitatud 02.11.2017 11:17:36 |
IsAjaxRequest, et selgitada, kas tegemist on ajaxi päringuga

Põhimõtteliselt määrab IsAjaxRequest(), kas päises on X-Requested-With väli ja kas see on XMLHttpRequest

Dokumentatsiooni vaatamine on mõttetu, see sõltub lähtekoodist.
 Üürileandja| Postitatud 20.02.2021 19:22:26 |
ASP.NET CSRF rünnak Ajax taotleb kapseldamist
https://www.itsvse.com/thread-8077-1-1.html
Postitatud 09.12.2021 18:37:56 |
testtesttesttest
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com