CA5363: Non disabilitare la convalida delle richieste

Proprietà valore
ID regola CA5363
Titolo Non disabilitare la convalida delle richieste
Categoria Sicurezza
Correzione che causa un'interruzione o un'interruzione Nessuna interruzione
Abilitato per impostazione predefinita in .NET 8 No

Causa

L'attributo ValidateInput è impostato su false per una classe o un metodo.

Descrizione regola

La convalida delle richieste è una funzionalità di ASP.NET che esamina le richieste HTTP e determina se contengono contenuto potenzialmente pericoloso che può causare attacchi injection, incluso lo scripting intersito.

Come correggere le violazioni

Impostare l'attributo ValidateInput su true o eliminarlo completamente. In alternativa, usare AllowHTMLAttribute per consentire il codice HTML in parti specifiche dell'input.

Quando eliminare gli avvisi

È possibile eliminare questa violazione se tutto il payload nella richiesta HTTP in ingresso viene originato da un'entità attendibile e non può essere manomesso da un antagonista prima o durante il trasporto.

Eliminare un avviso

Se si vuole eliminare una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable CA5363
// The code that's violating the rule is on this line.
#pragma warning restore CA5363

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità none su nel file di configurazione.

[*.{cs,vb}]
dotnet_diagnostic.CA5363.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Esempi di pseudo-codice

Violazione

Nell'esempio di pseudo-codice seguente viene illustrato il modello rilevato da questa regola. In questo modo viene disabilitata la convalida dell'input.

using System.Web.Mvc;

class TestControllerClass
{
    [ValidateInput(false)]
    public void TestActionMethod()
    {
    }
}

Soluzione

using System.Web.Mvc;

class TestControllerClass
{
    [ValidateInput(true)]
    public void TestActionMethod()
    {
    }
}