Vai al contenuto

.NET, patch fuori ciclo per la falla Brotli: aggiornare 8, 9 e 10

Grafica ufficiale con logo .NET e testo .NET Security Updates Out-of-band release.
Foto: Microsoft / Source (Used with permission from Microsoft.)

Chi sviluppa o gestisce applicazioni .NET 8, .NET 9 o .NET 10 deve aggiornare il runtime: Microsoft ha pubblicato aggiornamenti di sicurezza fuori ciclo, insieme a .NET 11 Release Candidate 3, e raccomanda di installarli il prima possibile. La falla, CVE-2026-111497, è un buffer overflow nella decompressione Brotli.

Secondo Microsoft, può permettere a un attaccante non autenticato di leggere o corrompere la memoria del processo, con possibili conseguenze di divulgazione di informazioni, denial of service o elevazione di privilegi.

Chi è esposto e cosa fare

Secondo Microsoft, le applicazioni possono essere interessate se elaborano dati compressi con Brotli in uno di questi modi:

  • decompressione delle richieste di ASP.NET Core;
  • decompressione automatica delle risposte di HttpClient;
  • API Brotli di System.IO.Compression.

Microsoft precisa che la decompressione delle richieste e quella automatica delle risposte non sono abilitate per impostazione predefinita, che .NET Framework non è interessato e che la vulnerabilità riguarda tutte le piattaforme.

Versioni corrette

Versione di .NET Aggiornamento
.NET 8 8.0.33
.NET 9 9.0.22
.NET 10 10.0.14
.NET 11 Release Candidate 3

Chi usa .NET 11 RC2 deve passare a RC3 per ricevere le correzioni.

Come aggiornare e controllare

Il modo di aggiornare dipende da come l’applicazione è distribuita:

  • Framework-dependent: installa il runtime aggiornato per la versione .NET di destinazione e riavvia l’applicazione.
  • Self-contained: ricompila e ripubblica con il runtime aggiornato. Installare un runtime più recente sull’host non aggiorna quello incluso nell’app.
  • Container: ricompila e ridistribuisci usando le immagini container .NET aggiornate.

Per vedere i runtime installati usa dotnet --list-runtimes. Nei deployment framework-dependent verifica che sia presente il runtime aggiornato. Le app self-contained e i container vanno controllati a parte, perché portano con sé il proprio runtime. Se dopo l’aggiornamento compare un problema, Microsoft indica di segnalarlo nelle issue di feedback sulle release di .NET.

Il secondo problema: i tarball per Linux

Lo stesso rilascio corregge CVE-2026-114148, in .NET 8, 9, 10 e 11. Secondo Microsoft, metadati di proprietà non sicuri nei tarball .NET per Linux potrebbero permettere a un attaccante locale di modificare file e ottenere privilegi elevati.

Per .NET 10 e .NET 11 il problema riguarda solo i tarball source-build. Per .NET 8 e .NET 9 interessa anche le distribuzioni ASP.NET Core ottenute dai tarball ASP.NET Core, anche per chi non compila .NET dai sorgenti.

  • Source-build: ottieni gli artefatti aggiornati e ricompila i pacchetti.
  • ASP.NET Core su .NET 8 e 9: aggiorna con il tarball ASP.NET Core Runtime rinnovato per la tua versione.

Due correzioni del 13 ottobre completate

Microsoft ripubblica anche gli avvisi per CVE-2026-70197, corruzione di memoria in SocketAsyncEventArgs (.NET 8, 9, 10 e 11), e per CVE-2026-102870, sul debugger di Blazor WebAssembly (.NET 10 e 11). Secondo l’azienda, il rilascio del 13 ottobre 2026 non le aveva corrette del tutto: gli aggiornamenti di questo rilascio contengono quelle correzioni.