Aggiornamento straordinario .NET falle RCE: come applicare le patch

Schermata di aggiornamento software su un monitor in una sala server aziendale
Schermata di aggiornamento software su un monitor in una sala server aziendale

Microsoft ha rilasciato una patch di emergenza per correggere vulnerabilità critiche in .NET. Necessario aggiornare i server e ricompilare le app.

Domenica 25 ottobre 2026, Microsoft ha rilasciato un aggiornamento straordinario .NET per falle RCE (Remote Code Execution) critiche. Questo intervento fuori banda (out-of-band) si è reso necessario perché le correzioni distribuite in precedenza, il 13 ottobre 2026, non risolvevano in modo definitivo i problemi di sicurezza segnalati. L'aggiornamento coinvolge tutte le versioni attualmente supportate del framework: .NET 8, .NET 9, .NET 10 e l'anteprima .NET 11 Release Candidate 3. I responsabili IT devono verificare immediatamente le versioni installate sui server aziendali e applicare le patch, tra cui l'aggiornamento KB5133964 per gli ambienti Windows Server e le correzioni per la vulnerabilità principale CVE-2026-70197.

Le vulnerabilità corrette e i componenti interessati

Il rilascio d'emergenza chiude diverse falle di sicurezza che colpiscono sia il runtime che gli strumenti di sviluppo. I difetti principali riguardano:

  • CVE-2026-70197: Vulnerabilità di esecuzione di codice da remoto in .NET e Visual Studio. Il problema risiede nel sottosistema System.Net.Sockets, in particolare nella classe SocketAsyncEventArgs su sistemi Windows. Quando un'istanza viene riutilizzata tra datagrammi IPv4 e IPv6, il buffer nativo allocato risulta sottodimensionato. Questo causa una scrittura di memoria fuori dai limiti durante l'operazione ReceiveFromAsync, che un utente malintenzionato può sfruttare da remoto senza alcuna autenticazione.
  • CVE-2026-111497: Errore di scrittura fuori dai limiti (buffer overflow) nell'algoritmo di decompressione Brotli. Il difetto colpisce Windows, Linux e macOS. Si attiva quando le applicazioni elaborano flussi compressi tramite ASP.NET Core request decompression, HttpClient automatic response decompression o le API dirette System.IO.Compression. La vulnerabilità porta alla corruzione della memoria o all'esecuzione arbitraria di codice.
  • CVE-2026-102870: Vulnerabilità di esecuzione di codice da remoto nel debugger di ASP.NET Core Blazor WebAssembly. Per risolverla è necessario aggiornare il pacchetto BrowserDebugHost.
  • CVE-2026-114148: Difetto relativo a permessi e proprietà insicure nei metadati degli archivi compressi tarball per i sistemi Linux, che può consentire un'elevazione locale dei privilegi.

Le versioni corrette rilasciate da Microsoft sono:

  • .NET 8: versione 8.0.33 (distribuita su Windows anche tramite KB5133964).
  • .NET 9: versione 9.0.22.
  • .NET 10: versione 10.0.14.
  • .NET 11: versione 11.0.0-rc.3.
  • Visual Studio 2026: versione 18.11.2.

Perché il problema riguarda le aziende italiane

Molti applicativi gestionali, portali B2B, microservizi ed ERP aziendali in uso nelle PMI poggiano su runtime .NET o ASP.NET Core. Trattandosi di vulnerabilità di esecuzione remota del codice sfruttabili senza la necessità di credenziali, i server esposti a Internet che elaborano richieste HTTP o traffico di rete tramite socket rischiano la compromissione totale della macchina host.

Esiste inoltre un rischio legato alle applicazioni autonome (self-contained). In queste configurazioni, il software incorpora al suo interno una copia del runtime .NET. Questo espone le aziende a un falso senso di sicurezza: l'aggiornamento centralizzato del server tramite Windows Update non protegge i software self-contained, che continueranno a eseguire la versione vulnerabile del runtime fino a quando non verranno ricompilati.

Come verificare le versioni e applicare l'aggiornamento

Microsoft non ha fornito soluzioni temporanee complete per mitigare il problema. L'unica soluzione definitiva è l'applicazione immediata delle patch e, dove necessario, la ricompilazione dei pacchetti.

1. Verificare le versioni attive sui server

Aprire il terminale (PowerShell, Prompt dei comandi o shell Linux) sui server aziendali ed eseguire i seguenti comandi:

  • dotnet --info per ottenere una panoramica generale del sistema.
  • dotnet --list-runtimes per verificare la presenza di rami 8.x, 9.x o 10.x con numeri di versione inferiori a quelli corretti.
  • dotnet --list-sdks per controllare le librerie di sviluppo installate.

2. Aggiornare l'infrastruttura di runtime

  • Ambienti Windows Server: scaricare e installare le patch tramite Windows Server Update Services (WSUS), Microsoft Update Catalog o dal sito ufficiale Microsoft. Al termine, riavviare i servizi host o i siti IIS.
  • Ambienti Linux: procedere all'aggiornamento tramite il gestore di pacchetti della specifica distribuzione, oppure scaricare nuovamente i tarball sicuri dal canale ufficiale.
  • Host containerizzati: rigenerare le immagini base Docker o dei container prelevando le versioni aggiornate dai repository ufficiali.

3. Intervenire sugli applicativi specifici

  • Applicazioni self-contained: gli sviluppatori devono ricompilare i progetti utilizzando i nuovi SDK (8.0.33, 9.0.22 o 10.0.14) e ridistribuire gli eseguibili aggiornati sui server di produzione.
  • Progetti Blazor WebAssembly: è necessario aggiornare nei file di progetto i riferimenti NuGet ai pacchetti Microsoft.AspNetCore.Components.WebAssembly.Server e Microsoft.AspNetCore.Components.WebAssembly.DevServer.

Si consiglia di mappare l'elenco dei servizi web aziendali attivi per pianificare il riavvio controllato delle istanze subito dopo l'aggiornamento dei runtime.

Fonti

/Continua a leggere

Tutti gli articoli

Hai un progetto in mente?

Raccontacelo in due righe. Ti rispondiamo entro un giorno lavorativo con un primo parere concreto, senza impegno.