Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 17891|Atsakyti: 0

[ASP.NET] MVC sprendimas, kaip aptikti potencialiai pavojingą kliento Request.Form reikšmę

[Kopijuoti nuorodą]
Paskelbta 2016-11-25 16:33:35 | | | |


[HttpRequestValidationException (0x80004005): Iš kliento... Potencialiai pavojinga Request.Form reikšmė aptikta Request.Form reikšmėje. ]
System.Web.HttpRequest.ValidateString(String s, String valueName, String collectionName)



1. Tiesą sakant, klaida buvo aiškiai paaiškinta ir sprendimas yra pasakytas:


Klientas aptiko potencialiai pavojingą Request.Form reikšmę (txtUEditor="<p>a</p>").

Aprašas: užklausos tikrinimo procesas aptiko potencialiai pavojingas kliento įvesties reikšmes ir užklausos apdorojimas buvo nutrauktas. Ši reikšmė gali reikšti, kad bandoma pakenkti programos saugai, pvz., kelių svetainių scenarijų ataka. Norėdami leisti puslapiui perrašyti programos užklausos tikrinimo parametrus, nustatykite ypatybę requestValidationMode httpRuntime konfigūracijos skyriuje į requestValidationMode="2.0". Pavyzdys: <httpRuntime requestValidationMode="2.0" />. Nustačius šią reikšmę, <pages> užklausos tikrinimą galima išjungti nustatant validateRequest="false" puslapio direktyvoje arba konfigūracijos skyriuje. Tačiau šiuo atveju labai rekomenduojama, kad programa aiškiai patikrintų visas įvestis. Daugiau informacijos rasite http://Go.microsoft.com/fwlink/?LinkId=153133.

Išsami išimties informacija: System.Web.HttpRequestValidationException: klientas aptiko potencialiai pavojingą Request.Form reikšmę (txtUEditor="<p>a"a</p>).

2. Kitas būdas yra nustatyti jį web.config puslapių skiltyje, pvz.:




Tačiau šis metodas nėra geras, per daug smurtinis, nes dėl to visi viso projekto puslapiai nebetikrins pateikto turinio, o saugumas labai sumažės.

3. Rekomenduojama praktika:
Prie veiksmo pridėkite atributą:[ValidateInput(false)], kuris tik neleis puslapiui tikrinti pateikimo ir neturės įtakos kitiems puslapiams.




Pastaba: Jei tokiu būdu gaunama Request.Form["XXX"], potencialiai pavojinga anomalija vis tiek bus aptikta, todėl būtinai įveskite duomenis, kuriuos norite gauti, į valdiklio parametrus! !




Ankstesnis:"EasyUI" patvirtinimas patvirtina, kad slaptažodis ir naujas slaptažodis yra nuoseklūs
Kitą:"uEditor" kelių vaizdų įkėlimas pašalina internetinio valdymo ir vaizdų paieškos skirtuko funkcijas
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com