Windows 11: più sicurezza con TLS 1.3, ma c'è un prezzo da pagare

https://www.hdblog.it/microsoft/articoli/n630077/windows-11-iis-tls-1-3-renegotiation-sicurezza/

HDblog.it Sep 01, 2025 · 1 min read
Windows 11: più sicurezza con TLS 1.3, ma c'è un prezzo da pagare
Share this

Microsoft ha deciso di spingere ancora più forte su sicurezza e performance con Windows 11, ma la scelta sta creando qualche grattacapo agli sviluppatori web. La conferma arriva da Matt Hamrick, dipendente Microsoft, che ha spiegato come il passaggio alla versione 1.3 di TLS come nuovo default causi alcune modifiche significative al comportamento di Internet Information Services (IIS) e della sua versione “leggera” IIS Express.

TLS 1.3, infatti, elimina del tutto il vecchio meccanismo chiamato “renegotiation”, presente nelle versioni precedenti dello standard, che in buona sostanza permetteva al server di chiedere un certificato al client anche dopo che la connessione era già stata stabilita. L’abbandono di questo meccanismo garantisce, a detta di Microsoft, connessioni più veloci, handshake più sicuri, perfino meno carico per la CPU... ma anche meno compatibilità.

Il driver preposto a questo tipo di operazioni è lo storico http.sys. In edizioni di Windows 11 precedenti alla 24H2 e alla futura Windows Server 2025, se il client non supportava la richiesta di certificato "a posteriori", il driver terminava la connessione e la reinizializzava, invece dalla 24H2 in poi restituirà un errore “not supported”. Di conseguenza, IIS a quel punto risponde con un errore HTTP codice 500, che sì, conferma che qualcosa non quadra, ma è un messaggio di errore molto generico che non aiuta granché a capirne le origini.

Il problema principale è che, come osserva Microsoft stessa, la maggior parte dei browser e dei client non supportano ancora l’alternativa moderna alla renegotiation, ovvero la post-handshake client authentication; e quindi, se il certificato non viene richiesto subito al primo handshake, non lo si può più ottenere - a meno di mettere mano al codice e alle opzioni di configurazione. Hamrick, sul suo post, ammette di dubitare fortemente che arrivi mai una soluzione vera e propria, ma propone alcuni workaround: disabilitare TLS 1.3 per le connessioni in ingresso, modificare i binding via netsh per forzare la richiesta di certificato già all’inizio, oppure rimuovere l’obbligo del certificato. Chi è interessato ad approfondire e ottenere una spiegazione più dettagliata di queste procedure può seguire il link FONTE qui di seguito.