Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 3317|Odgovoriti: 2

[Vir] ASP.NET MVC zahteva XSS preverjanje nevarnih vsebin (ValidateInput)

[Kopiraj povezavo]
Objavljeno na 8. 07. 2023 22:05:07 | | | |
Zahteve: Izvleči izvorno kodo v ASP.NET MVC za preverjanje potencialno nevarnih podatkov v obrazcu za zahtevo. Preprosto povedano, preverja, da zahtevani podatki vsebujejo vsebino za cross-site scripting (XSS),XSS je privzeto blokiran v MVC

Cross-site scripting (XSS) je varnostna ranljivost, ki jo najdemo v nekaterih spletnih aplikacijah. XSS napadi omogočajo napadalcem, da vbrizgajo skripte na strani odjemalca v spletne strani, ki si jih ogledajo drugi uporabniki. Napadalci bi lahko izkoristili ranljivosti skriptiranja med lokacijami za obhod nadzora dostopa, kot so politike istega izvora.

ValidateInput: Vrže preverjanje zbirk, dostopanih preko lastnosti piškotkov, obrazcev in QueryString. bi moralHttpRequestRazred uporablja vhodno zastavico validacije za sledenje, ali se validacija izvaja na zbirki zahtev, ki dostopajo do QueryString preko obrazca lastnosti Cookies.

public void ValidateInput() {
            Nima smisla, da to kličeš večkrat na zahtevo.
            Poleg tega, če je bila validacija potlačena, zdaj no-op.
            if (ValidateInputWasCalled || RequestValidationSuppressed) {
                vrnitev;
            }

            _Zastave. Set(hasValidateInputBeenCalled);

            To je namenjeno preprečevanju nekaterih XSS (cross site scripting) napadov (ASURT 122278)
            _Zastave. Set(needToValidateQueryString);
            _Zastave. Set(needToValidateForm);
            _Zastave. Set(needToValidateCookies);
            _Zastave. Set(needToValidatePostedFiles);
            _Zastave. Set(needToValidateRawUrl);
            _Zastave. Set(needToValidatePath);
            _Zastave. Set(needToValidatePathInfo);
            _Zastave. Set(needToValidateHeaders);
        }

Dokumentacija:Prijava do hiperpovezave je vidna.

Preverite potencialno nevarne podatke:HttpRequest -> ValidateString -> CrossSiteScriptingValidation.IsDangerousString, kot je prikazano na spodnji sliki:



Naslov izvorne kode:

Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.

Kopirajte izvorno kodo v svoj projekt in jo preizkusite na naslednji način:



Izvir:


Če res želite prejemati nevarno vsebino, lahko uporabite Request.Unvalidated.Form

(Konec)




Prejšnji:ASP.NET MVC pridobi vse naslove vmesnikov preko refleksije
Naslednji:.NET/C# uporablja SqlConnectionStringBuilder za primerjavo povezav med podatkovnimi bazami
 Najemodajalec| Objavljeno na 8. 07. 2023 22:06:32 |
Razred AllowHtmlAtribut: Omogoča zahteve za vključitev HTML označevanja med vezavo modela tako, da preskoči validacijo zahtevkov za atribute. (Močno priporočljivo je, da aplikacije eksplicitno preverijo vse modele, ki onemogočajo preverjanje zahtev, da preprečijo napade s skriptiranjem.) )

https://learn.microsoft.com/zh-c ... .allowhtmlattribute
 Najemodajalec| Objavljeno na 8. 07. 2023 22:06:49 |
ValidateAntiForgeryToken in AutoValidateAntiforgeryToken anti-counterfeiting oznake so podrobno pojasnjene
https://www.itsvse.com/thread-9568-1-1.html
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com