Supportare GZip su HTTPS in ASP.NET Core

di Moreno Gentili, in ASP.NET Core,

Nello scorso script (https://www.aspitalia.com/script/1258/Compressione-GZip-ASP.NET-Core.aspx) abbiamo visto come attivare il supporto a GZip in ASP.NET Core.

Una nota importante riguarda HTTPS: per default, infatti, il middleware di compressione non funziona se l'applicazione viene acceduta via HTTPS. Questo comportamento è stato imposto per motivi precauzionali, per l'esistenza di un potenziale attacco al protocollo HTTPS denominato CRIME/BREACH.

Dato che HTTPS rende riservato il contenuto della risposta ma non la sua dimensione in byte, è teoricamente possibile per un attaccante determinare se un testo è contenuto nella risposta semplicemente osservando il variare della dimensione di un contenuto compresso.
Maggiori dettagli sono disponibili in questa pagina del sito ArsTechnica (https://arstechnica.com/security/2013/08/gone-in-30-seconds-new-attack-plucks-secrets-from-https-protected-pages/).

L'attacco è rivolto solo a risposte che contengono dati sensibili, come indirizzi e-mail, carte di credito o token CSRF. Per tutti gli altri tipi di contenuto, come pagine statiche HTML, immagini SVG o file CSS e JS, possiamo tranquillamente abilitare la compressione su HTTPS modificando in questo modo l'invocazione a AddResponseCompression che abbiamo visto in precedenza.

services.AddResponseCompression(options =>
{
  options.EnableForHttps = true;
});

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi