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

Näkymä: 17891|Vastaus: 0

[ASP.NET] Kiertotie, jolla MVC voi havaita mahdollisesti vaarallisen Request.Form-arvon asiakkaalta

[Kopioi linkki]
Julkaistu 25.11.2016 16.33.35 | | | |


[HttpRequestValidationException (0x80004005): Asiakkaalta... Mahdollisesti vaarallinen Request.Form-arvo havaitaan Request.Form-arvossa. ]
System.Web.HttpRequest.ValidateString(Merkkijono s, merkkijonon valueName, merkkijonon kokoelmaNimi)



1. Itse asiassa virhe on selvästi selitetty ja ratkaisu on kerrottu:


Asiakkaalta havaittiin mahdollisesti vaarallinen Request.Form-arvo (txtUEditor="<p>a</p>").

Kuvaus: Pyynnön validointiprosessi havaitsi mahdollisesti vaaralliset asiakassyötteen arvot ja pyynnön käsittely on keskeytetty. Tämä arvo voi viitata siihen, että sovelluksen tietoturvaa pyritään vaarantamaan, kuten poikkisivuston skriptaushyökkäys. Jotta sivu voi ohittaa sovelluksen pyynnön validointiasetukset, aseta requestValidationMode-ominaisuus httpRuntime-konfiguraatioosiossa requestValidationMode="2.0". Esimerkki: <httpRuntime requestValidationMode="2.0" />. Kun tämä arvo on asetettu, <pages> pyyntöjen validointi voidaan poistaa käytöstä asettamalla validateRequest="false" sivudirektiivissä tai konfiguraatioosiossa. Tässä tapauksessa on kuitenkin erittäin suositeltavaa, että sovellus tarkistaa kaikki syötteet erikseen. Katso http://Go.microsoft.com/fwlink/?LinkId=153133 lisätietoja varten.

Poikkeustiedot: System.Web.HttpRequestValidationException: Asiakkaalta havaittiin mahdollisesti vaarallinen Request.Form-arvo (txtUEditor="<p>a"a</p>).

2. Toinen tapa on asettaa se web.configin Sivut-osioon, esimerkiksi:




Mutta tämä menetelmä ei ole hyvä, liian väkivaltainen, koska se saa koko projektin sivut lopettamaan lähetetyn sisällön tarkistamisen, ja turvallisuus heikkenee huomattavasti.

3. Suositellut käytännöt:
Lisää toimintoon attribuutti:[ValidateInput(false)], joka estää sivua vain vahvistamasta lähetystä, eikä vaikuta muihin sivuihin.




Huomautus: Jos Request.Form["XXX"] saadaan tällä tavalla, mahdollisesti vaarallinen poikkeama havaitaan silti, joten muista laittaa haluamasi tiedot ohjaimen parametreihin!




Edellinen:EasyUI-vahvistus vahvistaa, että salasana ja uusi salasana ovat yhdenmukaiset
Seuraava:uEditorin monikuvalataus poistaa verkkohallinnan ja kuvahakuvälilehden toiminnot
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