KB5017811 - Gestire Transport Layer Security (TLS) 1.0 e 1.1 dopo la modifica del comportamento predefinito il 20 settembre 2022

Si applica a
Win 10 Ent LTSC 2019 Win 10 IoT Ent LTSC 2019 Windows 10 IoT Core LTSC Windows Server 2019 Windows 10 Enterprise Multi-Session, version 20H2 Windows 10 Enterprise and Education, version 20H2 Windows 10 IoT Enterprise, version 20H2 Windows 10 on Surface Hub Windows 10, version 21H1, all editions Windows 10, version 21H2, all editions

Riepilogo

Transport Layer Security (TLS) 1.0 e 1.1 sono protocolli di sicurezza per la creazione di canali di crittografia su reti di computer. Microsoft li supporta da Windows XP e Windows Server 2003. Tuttavia, i requisiti normativi stanno cambiando. Inoltre, ci sono nuovi punti deboli della sicurezza in TLS 1.0. Pertanto, Microsoft consiglia di rimuovere le dipendenze TLS 1.0 e 1.1. È anche consigliabile disabilitare TLS 1.0 e 1.1 a livello di sistema operativo, ove possibile. Per altre informazioni, vedere Disabilitazione di TLS 1.0 e 1.1. Nell'aggiornamento dell'anteprima del 20 settembre 2022, disabiliteremo TLS 1.0 e 1.1 per impostazione predefinita per le applicazioni basate su winhttp e wininet. Questo fa parte di uno sforzo continuo. Questo articolo ti aiuterà a riabilitarli. Queste modifiche si rifletteranno dopo l'installazione degli aggiornamenti di Windows rilasciati a partire dal 20 settembre 2022.

Dopo il 20 settembre 2022, verrà visualizzato un messaggio quando il browser apre un sito Web che usa TLS 1.0 o 1.1. Vedere la Figura 1. Il messaggio indica che il sito utilizza un protocollo TLS obsoleto o non sicuro. Per risolvere questo problema, è possibile aggiornare il protocollo TLS a TLS 1.2 o versioni successive. Se ciò non è possibile, è possibile abilitare TLS come descritto in Abilitazione di TLS versione 1.1 e successive.

Finestra di Internet Explorer quando si accede al collegamento TLS 1.0 e 1.1

Figura 1: Finestra del browser quando si accede alla pagina Web TLS 1.0 e 1.1

Dopo l'aggiornamento, le applicazioni basate su winhttp potrebbero non riuscire. Il messaggio di errore è "ERROR_WINHTTP_SECURE_FAILURE durante l'esecuzione dell'operazione WinHttpSendRequest".

Quando un'applicazione tenta di creare una connessione utilizzando TLS 1.1 e versioni precedenti, la connessione potrebbe sembrare non riuscita. Quando si chiude un'applicazione o smette di funzionare, viene visualizzata la finestra di dialogo Assistente compatibilità programmi (PCA), come illustrato nella Figura 2.

Popup di Assistente compatibilità programmi dopo la chiusura dell'applicazione

Figura 2: Finestra di dialogo di Assistente compatibilità programmi dopo la chiusura di un'applicazione

La finestra di dialogo PCA indica "Questo programma potrebbe non essere stato eseguito correttamente". In questo caso, ci sono due opzioni:

  • Eseguire il programma usando le impostazioni di compatibilità
  • Questo programma è stato eseguito correttamente

Eseguire il programma usando le impostazioni di compatibilità

Quando si sceglie questa opzione, l'applicazione viene riaperta. Ora, tutti i collegamenti che usano TLS 1.0 e 1.1 funzionano correttamente. Da quel momento in poi, non verrà visualizzata alcuna finestra di dialogo PCA. L'editor del Registro di sistema aggiunge voci ai percorsi seguenti:

  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store.
  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.

Se si è scelto questa opzione per errore, è possibile eliminare queste voci. Se li elimini, vedrai la finestra di dialogo PCA alla successiva apertura dell'app.

Elenco dei programmi che devono essere eseguiti con le impostazioni di compatibilità

Figura 3: elenco dei programmi che devono essere eseguiti con le impostazioni di compatibilità

Questo programma è stato eseguito correttamente

Quando si sceglie questa opzione, l'applicazione viene chiusa normalmente. Alla successiva riapertura dell'applicazione, non viene visualizzata alcuna finestra di dialogo PCA. Il sistema blocca tutto il contenuto di TLS 1.0 e 1.1. L'editor del Registro di sistema aggiunge la voce seguente al percorsoComputer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store. Vedere la Figura 4. Se si è scelto questa opzione per errore, è possibile eliminare questa voce. Se elimini la voce, vedrai la finestra di dialogo PCA alla successiva apertura dell'app.

Voce nell'editor del Registro di sistema che specifica che l'app è stata eseguita correttamente

Figura 4: Voce nell'editor del Registro di sistema che indica che l'app è stata eseguita correttamente

Consigli I protocolli TLS legacy sono abilitati solo per applicazioni specifiche. Questo vale anche se sono disabilitate nelle impostazioni a livello di sistema.

Abilita TLS versione 1.1 e precedenti (impostazioni wininet e Internet Explorer)

Non è consigliabile abilitare TLS 1.1 e versioni precedenti perché non sono più considerati sicuri. Sono vulnerabili a vari attacchi, come l'attacco POODLE. Prima di abilitare TLS 1.1, eseguire una delle operazioni seguenti:

  • Verificare se è disponibile una versione più recente dell'applicazione.
  • Chiedere allo sviluppatore dell'app di apportare modifiche alla configurazione dell'app per rimuovere la dipendenza da TLS 1.1 e versioni precedenti.

Nel caso in cui nessuna delle soluzioni funzioni, esistono due modi per abilitare i protocolli TLS legacy nelle impostazioni a livello di sistema:

  • Opzioni Internet
  • Editor Criteri di gruppo

Opzioni Internet

Per aprire Opzioni Internet, digitare Opzioni Internet nella casella di ricerca sulla barra delle applicazioni. È anche possibile selezionare Modifica impostazioni dalla finestra di dialogo mostrata nella Figura 1. Nella scheda Avanzate , scorri verso il basso nel pannello Impostazioni . Qui è possibile abilitare o disabilitare i protocolli TLS.

Finestra Opzioni Internet

Figura 5: Finestra di dialogo Proprietà Internet

Editor dei criteri di gruppo

Per aprire l'Editor criteri di gruppo, digitare gpedit.msc nella casella di ricerca della barra delle applicazioni. Viene visualizzata una finestra come quella mostrata nella Figura 6.

Finestra Editor Criteri di gruppo

Figura 6: Finestra Editor Criteri di gruppo

  1. Passare a Criteri >computer locale(Configurazione computer o Configurazione utente)>Templet> amministrativiComponenti> di WindowsInternet Explorer>Pannello di controllo InternetPaginaavanzata>Disattiva il supporto per> la crittografia. Vedere la Figura 7.
  2. Fai doppio clic su Disattiva il supporto per la crittografia.
    Percorso per disattivare il supporto della crittografia in GPedit.msc
    Figura 7: Percorso per disattivare il supporto della crittografia nell'Editor criteri di gruppo
  3. Selezionare l'opzione Abilitato . Utilizzare quindi l'elenco a discesa per selezionare la versione TLS che si desidera abilitare, come illustrato nella Figura 8.
    Disattiva il supporto per la crittografia abilitato con il menu a discesa che mostra varie opzioni
    Figura 8: Abilitare Disattivare il supporto per la crittografia e l'elenco a discesa

Dopo aver abilitato il criterio nell'Editor Criteri di gruppo, non sarà possibile modificarlo in Opzioni Internet. Ad esempio, se si seleziona Usa SSL3.0 e TLS 1.0, tutte le altre opzioni non saranno disponibili in Opzioni Internet. Vedere la Figura 9. Non è possibile modificare alcuna delle impostazioni di Opzioni Internet se si abilita Disattiva supporto crittografia nell'Editor criteri di gruppo.

Opzioni Internet con impostazioni SSL e TLS disattivate

Figura 9: Opzioni Internet che mostrano impostazioni SSL e TLS non disponibili

Abilita TLS versione 1.1 e precedenti (impostazioni winhttp)

Vedere Aggiornamento per abilitare TLS 1.1 e TLS 1.2 come protocolli sicuri predefiniti in WinHTTP in Windows.

Importanti percorsi del Registro di sistema (impostazioni wininet e Internet Explorer)

  • Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

    • Qui è possibile trovare SecureProtocols, che archivia il valore dei protocolli attualmente abilitati se si utilizza l'Editor criteri di gruppo.
  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings

    • Qui è possibile trovare SecureProtocols, che archivia il valore dei protocolli attualmente abilitati se si utilizza Opzioni Internet.
  • I criteri di gruppo SecureProtocols avranno la precedenza su quello impostato da Opzioni Internet.

Abilitazione del fallback TLS non sicuro

Le modifiche precedenti abiliteranno TLS 1.0 e TLS 1.1. Tuttavia, non abiliteranno il fallback TLS. Per abilitare il fallback TLS, è necessario impostare EnableInsecureTlsFallback su 1 nel Registro di sistema nei percorsi seguenti.

  • Per modificare le impostazioni: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Impostazioni\winhttp
  • Per impostare il criterio: SOFTWARE\Criteri\Microsoft\Windows\CurrentVersion\Internet Settings

Se EnableInsecureTlsFallback non è presente, è necessario creare una nuova voce DWORD e impostarla su 1.

Percorsi importanti del Registro di sistema

  1. ForceDefaultSecureProtocols

    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Impostazioni\winhttp
    • Per impostazione predefinita è FALSE. L'impostazione di un valore diverso da zero impedirà alle applicazioni di impostare protocolli personalizzati usando l'opzione winhttp.
  2. EnableInsecureTlsFallback

    • Per modificare le impostazioni: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Impostazioni\winhttp
    • Per impostare il criterio: SOFTWARE\Criteri\Microsoft\Windows\CurrentVersion\Internet Settings
    • Per impostazione predefinita è FALSE. L'impostazione di un valore diverso da zero consentirà alle applicazioni di eseguire il fallback a protocolli non sicuri (TLS1.0 e 1.1) se l'handshake non riesce con protocolli sicuri (TLS1.2 e versioni successive).