Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 45075|Válasz: 7

[ASP.NET] ASP.NET CSRF támadás Ajax kapszulációt kér

[Linket másol]
Közzétéve: 2019-9-12 09:42:54 | | | |
Mi az a CSRF?

CSRF (Cross-site request forgery), más néven egy kattintásos támadás/session riding, kínai rövidítés: CSRF/XSRF. A CSRF (Cross Site Request Forgery) egy hálózati támadási módszer, amelyet 2007-ben az interneten a 20 legnagyobb biztonsági kockázat közé soroltak. Az utóbbi években más biztonsági kockázatok, mint például SQL szkript-befecskendezés és a weboldalakon átívelő domain szkripttámadások, jól ismertté váltak, és sok weboldal védte meg magukat ellenük. Ugyanakkor a CSRF még mindig idegen fogalma a legtöbb ember számára. Még a legismertebb Gmail is CSRF sebezhetőséggel küzdött 2007 végén, amelyet feltörtek, és hatalmas veszteségeket okozott a Gmail felhasználóknak.

Mit tehet a CSRF?

A CSRF támadásokat így értheted: egy támadó ellopta az identitásodat, és rosszindulatú kéréseket küldött a nevedre. A CSRF képes olyan dolgokra, mint e-mailek küldése, üzenetküldés, ellopás a számláda, vagy akár árut vásárolhat és virtuális valuta átvitelét is végezheti az Ön nevében...... A problémák közé tartozik: személyes adatvédelem szivárogtatása és ingatlanbiztonság.

ASP.NET MVC AntiForgeryToken hamisításellenes márka

ASP.NET MVC-ben az űrlaptokenek és a cookie tokenek alapértelmezés szerint automatikusan generálódnak, amikor a @Html.AntiForgeryToken() használatot használják a megtekintési oldalon. Azonban, ha háttérben szeretnénk kézi lekérdezést elérni, a System.Web.Helpers.AntiForgery osztályt kell használnunk, és azok a barátok, akik érdeklődnek a forráskód megtekintése iránt, azt tapasztalják, hogy valójában a @Html.AntiForgeryToken() belső hívásának módszere megegyezik az AntiForgery osztályéval.

Főként a megfelelő forma és cookie token megszerzésére használják két statikus módszerrel: AntiForgery.GetHtml() vagy AntiForgery.GetTokens (string oldCookieToken, out string newCookieToken, out string formToken). Ugyanakkor fontos megjegyezni, hogy amint a GetHtml metódus meghívása után automatikusan generálódik a megfelelő cookie token, majd közvetlenül visszaküld egy HTML kód a form token érték rejtett mezőjével, amely a visszaküldött érték a következő formában lesz:

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

A rejtett mező névneve általában "__RequestVerificationToken"-re van rögzítve, az érték pedig egy titkosított biztonsági token. Ez a rejtett mező általában a beküldendő űrlapban található, és a végső beküldést a süti tokenhez ellenőrzik.

Ha a GetTokens módszert használod, akkor a titkosított űrlapot és a cookie tokent a megfelelő paraméterek átadása után megszerezheted, de itt magadnak kell tárolnod a megfelelő értékeket.

Ezután bemutatjuk az AntiForgeryToken manuális frissítésének módszerét, főként az AJAX-on keresztül.

Csomagkód:



Tesztkód:



Azt tapasztaltuk, hogy ajax kérés küldésekor automatikusan __RequestVerificationToken paraméterek kerülnek bele, ahogy az alábbi ábrán látható:







Előző:Windows CMD Történelmi parancstörténet útmutató
Következő:Meet Azure DevOps
 Háziúr| Közzétéve: 2019-9-25 18:09:46 |
Közzétéve: 2019-11-10 15:06:37 |
Nem írtál háttérkezelési tervet? A fejlécben lévő háttérfeldolgozás eltér a fejléc nélküli háttérfeldolgozástól
 Háziúr| Közzétéve: 2019-11-21 10:38:40 |
Danqingcheng 2019-11-10-kor írt, 15:06
Nem írtál háttérkezelési tervet? A fejlécben lévő háttérfeldolgozás eltér a fejléc nélküli háttérfeldolgozástól

Hmm, újra kell írnom a szűrőt
 Háziúr| Közzétéve: 2021-2-20 19:22:14 |
mvc ajax AntiForgeryToken-lel, hogy megakadályozza a CSRF támadásokat
https://www.itsvse.com/thread-4207-1-1.html
Közzétéve: 2021-12-9 18:41:29 |
testtesttesttesttesttesttest test
 Háziúr| Közzétéve: 2022-4-17 12:59:39 |
 Háziúr| Közzétéve: 2024-9-26 15:57:52 |
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com