Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 3317|Antwoord: 2

[Bron] ASP.NET MVC vraagt XSS Dangerous Content Validation aan (ValidateInput)

[Link kopiëren]
Geplaatst op 08-07-2023 22:05:07 | | | |
Vereisten: Haal de broncode uit ASP.NET MVC om mogelijk gevaarlijke gegevens in het aanvraagformulier te valideren. Simpel gezegd verifieert het dat de gevraagde data cross-site scripting (XSS) inhoud bevat,XSS is standaard geblokkeerd in MVC

Cross-site scripting (XSS) is een beveiligingslek die in sommige webapplicaties voorkomt. XSS-aanvallen stellen aanvallers in staat om client-side scripts te injecteren in webpagina's die door andere gebruikers worden bekeken. Aanvallers konden cross-site scripting-kwetsbaarheden misbruiken om toegangscontroles zoals beleid van dezelfde oorsprong te omzeilen.

ValidateInput: Valideert collecties die via de eigenschappen Cookies, Form en QueryString worden benaderd. horenHttpRequestDe klasse gebruikt de invoervalidatievlag om te volgen of validatie wordt uitgevoerd op een verzameling verzoeken die toegang krijgen tot de QueryString via het Cookies-eigenschapsformulier.

public void ValidateInput() {
            Het heeft geen zin om dit meerdere keren per verzoek te bellen.
            Bovendien, als validatie werd onderdrukt, is het nu geen operatie.
            if (ValidateInputWasCalled || RequestValidationSuppressed) {
                terugkeren;
            }

            _Vlaggen. Set(hasValidateInputBeenCalled);

            Dit is om sommige XSS (cross site scripting) aanvallen (ASURT 122278) te voorkomen
            _Vlaggen. Set(needToValidateQueryString);
            _Vlaggen. Set(needToValidateForm);
            _Vlaggen. Set(needToValidateCookies);
            _Vlaggen. Set(needToValidatePostedFiles);
            _Vlaggen. Set(needToValidateRawUrl);
            _Vlaggen. Set(needToValidatePath);
            _Vlaggen. Set(needToValidatePathInfo);
            _Vlaggen. Set(needToValidateHeaders);
        }

Documentatie:De hyperlink-login is zichtbaar.

Valideer mogelijk gevaarlijke gegevens:HttpRequest -> ValidateString -> CrossSiteScriptingValidation.IsDangerousString, zoals getoond in de onderstaande figuur:



Broncode-adres:

De hyperlink-login is zichtbaar.
De hyperlink-login is zichtbaar.

Kopieer de broncode naar je project en test deze als volgt:



Bron:


Als je echt gevaarlijke inhoud wilt ontvangen, kun je Request.Unvalidated.Form gebruiken

(Einde)




Vorig:ASP.NET MVC krijgt alle interfaceadressen via reflectie
Volgend:.NET/C# gebruikt SqlConnectionStringBuilder om databaseverbindingen te vergelijken
 Huisbaas| Geplaatst op 08-07-2023 22:06:32 |
AllowHtmlAttribut-klasse: Maakt het mogelijk om verzoeken HTML-opmaak op te nemen tijdens modelbinding door verzoekvalidatie voor attributen over te slaan. (Het wordt sterk aanbevolen dat applicaties expliciet alle modellen controleren die verzoekvalidatie uitschakelen om scripting-aanvallen te voorkomen.) )

https://learn.microsoft.com/zh-c ... .allowhtmlattribute
 Huisbaas| Geplaatst op 08-07-2023 22:06:49 |
ValidateAntiForgeryToken en AutoValidateAntiforgeryToken anti-vervalsingstags worden uitvoerig uitgelegd
https://www.itsvse.com/thread-9568-1-1.html
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com