What is "X-Content-Type-Options=nosniff"?

What is "X-Content-Type-Options=nosniff"?

Che cosa rappresenta l'utile impostazione "X-Content-Type-Options=nosniff"?

L'intestazione HTTP "X-Content-Type-Options: nosniff" indica al browser di non effettuare il "content sniffing" sull'input. Il "content sniffing" è il processo in cui il browser analizza il contenuto di una risorsa per determinare il tipo effettivo della risorsa, anche se il tipo è stato dichiarato in modo errato o mancante. Impostando l'opzione "nosniff" sul server, si indica al browser di utilizzare solo il tipo di contenuto dichiarato dal server e di non effettuare alcuna analisi del contenuto. Ciò può aiutare a prevenire alcune vulnerabilità di sicurezza, come gli attacchi "MIME sniffing".

Per una applicazione, come ben saprete, il file webconfig contiene tutte le impostazioni utili al suo funzionamento.

Ora vi suggerisco una configurazione che può prevenire alcuni attacchi.

Biogna mettere nel web.config la seguente istruzione:

<httpProtocol>

...
      <customHeaders>
       ...
        <add name="X-Content-Type-Options" value="nosniff"/>
      </customHeaders>
    </httpProtocol>

  </system.webServer>

 

L'impostazione dell'intestazione di risposta HTTP X-Content-Type-Options di un server su nosniff indica ai browser di disabilitare il contenuto o lo sniffing che viene utilizzato per sovrascrivere le intestazioni Content-Type di risposta per indovinare ed elaborare i dati utilizzando un tipo di contenuto implicito. Sebbene ciò possa essere conveniente in alcuni scenari, può servire ad evitare alcuni attacchi. La configurazione del server per restituire l'intestazione della risposta HTTP X-Content-Type-Options impostata su nosniff indicherà ai browser che supportano lo sniffing MIME di utilizzare il Content-Type fornito dal server e di non interpretare il contenuto come un tipo di contenuto diverso. Un attacco potrebbe proprio fare questo. Forzare il browser ad interpretare il file "come" un altro tipo di file.

 

Per essere pignoli questa stessa impostazione la si può mettere nel Global.asax:

protected void Application_BeginRequest(object sender, EventArgs e)
{
            this.Response.Headers["X-Content-Type-Options"] = "nosniff";
}

 

Buon lavoro!

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.