Zusammenfassung
Transport Layer Security (TLS) 1.0 und 1.1 sind Sicherheitsprotokolle zum Erstellen von Verschlüsselungskanälen über Computernetzwerke. Microsoft unterstützt sie seit Windows XP und Windows Server 2003. Die regulatorischen Anforderungen ändern sich jedoch. Außerdem gibt es neue Sicherheitsschwächen in TLS 1.0. Daher empfiehlt Microsoft, die Abhängigkeiten von TLS 1.0 und 1.1 zu entfernen. Außerdem empfehlen wir, TLS 1.0 und 1.1 nach Möglichkeit auf Betriebssystemebene zu deaktivieren. Weitere Informationen finden Sie unter TLS 1.0- und 1.1-Deaktivierung. Im Vorschauupdate vom 20. September 2022 werden TLS 1.0 und 1.1 standardmäßig für Anwendungen deaktiviert, die auf winhttp und wininet basieren. Dies ist Teil fortlaufender Bemühungen. Dieser Artikel hilft Ihnen, sie wieder zu aktivieren. Diese Änderungen werden nach der Installation von Windows-Updates übernommen, die am oder nach dem 20. September 2022 veröffentlicht wurden.
Verhalten beim Zugriff auf TLS 1.0- und 1.1-Links im Browser
Nach dem 20. September 2022 wird eine Meldung angezeigt, wenn Ihr Browser eine Website öffnet, die TLS 1.0 oder 1.1 verwendet. Siehe Abbildung 1. Die Meldung besagt, dass die Website ein veraltetes oder unsicheres TLS-Protokoll verwendet. Um dieses Problem zu beheben, können Sie das TLS-Protokoll auf TLS 1.2 oder höher aktualisieren. Wenn dies nicht möglich ist, können Sie TLS aktivieren, wie unter Aktivieren von TLS Version 1.1 und niedriger beschrieben.
Abbildung 1: Browserfenster beim Zugriff auf die TLS 1.0- und 1.1-Webseite
Verhalten beim Zugriff auf TLS 1.0- und 1.1-Links in WinHTTP-Anwendungen
Nach dem Update können Anwendungen, die auf winhttp basieren, fehlschlagen. Die Fehlermeldung lautet: "ERROR_WINHTTP_SECURE_FAILURE beim Ausführen des WinHttpSendRequest-Vorgangs."
Verhalten beim Zugriff auf TLS 1.0- und 1.1-Links in benutzerdefinierten UI-Anwendungen, die auf winhttp oder wininet basieren
Wenn eine Anwendung versucht, eine Verbindung mit TLS 1.1 und niedriger herzustellen, scheint die Verbindung fehlzuschlagen. Wenn Sie eine Anwendung schließen oder sie nicht mehr funktioniert, wird das Dialogfeld "Programmkompatibilitäts-Assistent" (PCA) angezeigt, wie in Abbildung 2 dargestellt.
Abbildung 2: Dialogfeld "Programmkompatibilitätsassistent" nach dem Schließen einer Anwendung
Das PCA-Dialogfeld besagt "Dieses Programm wurde möglicherweise nicht ordnungsgemäß ausgeführt". Darunter gibt es zwei Optionen:
- Ausführen des Programms mithilfe von Kompatibilitätseinstellungen
- Dieses Programm wurde ordnungsgemäß ausgeführt
Ausführen des Programms mithilfe von Kompatibilitätseinstellungen
Wenn Sie diese Option auswählen, wird die Anwendung erneut geöffnet. Jetzt funktionieren alle Links, die TLS 1.0 und 1.1 verwenden, ordnungsgemäß. Von da an wird kein PCA-Dialogfeld mehr angezeigt. Der Registrierungs-Editor fügt den folgenden Pfaden Einträge hinzu:
- Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store.
- Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.
Wenn Sie diese Option versehentlich ausgewählt haben, können Sie diese Einträge löschen. Wenn Sie sie löschen, wird beim nächsten Öffnen der App das PCA-Dialogfeld angezeigt.
Abbildung 3: Liste der Programme, die unter Verwendung von Kompatibilitätseinstellungen ausgeführt werden sollen
Dieses Programm wurde ordnungsgemäß ausgeführt
Wenn Sie diese Option auswählen, wird die Anwendung normal geschlossen. Wenn Sie die Anwendung das nächste Mal öffnen, wird kein PCA-Dialogfeld angezeigt. Das System blockiert alle Inhalte von TLS 1.0 und 1.1. Der Registrierungs-Editor fügt dem PfadComputer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store den folgenden Eintrag hinzu . Siehe Abbildung 4. Wenn Sie diese Option versehentlich ausgewählt haben, können Sie diesen Eintrag löschen. Wenn Sie den Eintrag löschen, wird beim nächsten Öffnen der App das PCA-Dialogfeld angezeigt.
Abbildung 4: Eintrag im Registrierungseditor, der besagt, dass die App korrekt ausgeführt wurde
Wichtig Ältere TLS-Protokolle sind nur für bestimmte Anwendungen aktiviert. Dies gilt selbst dann, wenn sie in systemweiten Einstellungen deaktiviert sind.
Aktivieren von TLS Version 1.1 und niedriger (Wininet- und Internet Explorer-Einstellungen)
Es wird nicht empfohlen, TLS 1.1 und niedriger zu aktivieren, da sie nicht mehr als sicher gelten. Sie sind anfällig für verschiedene Angriffe, wie z. B. den Pudelangriff. Führen Sie also vor dem Aktivieren von TLS 1.1 einen der folgenden Schritte aus:
- Überprüfen Sie, ob eine neuere Version der Anwendung verfügbar ist.
- Bitten Sie den App-Entwickler, Konfigurationsänderungen in der App vorzunehmen, um die Abhängigkeit von TLS 1.1 und niedriger zu entfernen.
Falls keine der Lösungen funktioniert, gibt es zwei Möglichkeiten, veraltete TLS-Protokolle in systemweiten Einstellungen zu aktivieren:
- Internetoptionen
- Gruppenrichtlinien-Editor
Internetoptionen
Um "Internetoptionen" zu öffnen, geben Sie "Internetoptionen " in das Suchfeld auf der Taskleiste ein. Sie können auch in dem in Abbildung 1 gezeigten Dialogfeld "Einstellungen ändern " auswählen. Scrollen Sie auf der Registerkarte "Erweitert " im Bereich "Einstellungen " nach unten. Dort können Sie TLS-Protokolle aktivieren oder deaktivieren.
Abbildung 5: Dialogfeld "Interneteigenschaften"
Den Gruppenrichtlinien-Editor
Um den Gruppenrichtlinien-Editor zu öffnen, geben Sie gpedit.msc in das Suchfeld der Taskleiste ein. Ein Fenster wie das in Abbildung 6 gezeigte wird eingeblendet.
Abbildung 6: Fenster Gruppenrichtlinie-Editor
- Navigieren Sie zur Richtlinie >für lokale Computer(Computerkonfiguration oder Benutzerkonfiguration)>Administrative Vorlagen>Windows-Komponenten>Internet ExplorerInternet>SystemsteuerungErweiterte>Seite>Deaktivieren Sie die Verschlüsselungsunterstützung. Siehe Abbildung 7.
- Doppelklicken Sie auf Verschlüsselungsunterstützung deaktivieren.
Abbildung 7: Pfad zum Deaktivieren der Verschlüsselungsunterstützung im Gruppenrichtlinien-Editor - Wählen Sie die Option "Aktiviert " aus. Verwenden Sie dann die Dropdownliste, um die TLS-Version auszuwählen, die Sie aktivieren möchten, wie in Abbildung 8 dargestellt.
Abbildung 8: Aktivieren der Deaktivieren der Verschlüsselungsunterstützung und Dropdownliste
Nachdem Sie die Richtlinie im Gruppenrichtlinien-Editor aktiviert haben, können Sie sie in den Internetoptionen nicht mehr ändern. Wenn Sie beispielsweise SSL3.0 und TLS 1.0 verwenden auswählen, sind alle anderen Optionen in den Internetoptionen nicht verfügbar. Siehe Abbildung 9. Sie können keine der Einstellungen in den Internetoptionen ändern, wenn Sie die Option Verschlüsselungsunterstützung deaktivieren im Gruppenrichtlinien-Editor aktivieren.
Abbildung 9: Internetoptionen mit nicht verfügbaren SSL- und TLS-Einstellungen
Aktivieren von TLS Version 1.1 und niedriger (winhttp-Einstellungen)
Lesen Sie Update zum Aktivieren von TLS 1.1 und TLS 1.2 als sichere Standardprotokolle in WinHTTP in Windows.
Wichtige Registrierungspfade (Wininet- und Internet Explorer-Einstellungen)
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
- Hier finden Sie SecureProtocols, das den Wert der derzeit aktivierten Protokolle speichert, wenn Sie den Gruppenrichtlinien-Editor verwenden.
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- Hier finden Sie SecureProtocols, das den Wert der aktuell aktivierten Protokolle speichert, wenn Sie Internetoptionen verwenden.
Die SecureProtocols der Gruppenrichtlinie haben Vorrang vor den in den Internetoptionen festgelegten Protokollen.
Aktivieren des unsicheren TLS-Fallbacks
Die oben genannten Änderungen aktivieren TLS 1.0 und TLS 1.1. Sie aktivieren jedoch kein TLS-Fallback. Um TLS-Fallback zu aktivieren, müssen Sie EnableInsecureTlsFallback in der Registrierung unter den folgenden Pfaden auf 1 festlegen.
- So ändern Sie die Einstellungen: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- So legen Sie eine Richtlinie fest: SOFTWARE\Richtlinien\Microsoft\Windows\CurrentVersion\Internet Einstellungen
Wenn EnableInsecureTlsFallback nicht vorhanden ist, müssen Sie einen neuen DWORD-Eintrag erstellen und auf 1 festlegen.
Wichtige Registrierungspfade
ForceDefaultSecureProtocols
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- Der Wert ist standardmäßig FALSE. Das Festlegen eines Werts ungleich Null verhindert, dass Anwendungen benutzerdefinierte Protokolle mit der Option winhttp festlegen.
EnableInsecureTlsFallback
- So ändern Sie die Einstellungen: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- So legen Sie eine Richtlinie fest: SOFTWARE\Richtlinien\Microsoft\Windows\CurrentVersion\Internet Einstellungen
- Der Wert ist standardmäßig FALSE. Das Festlegen eines Werts ungleich Null ermöglicht es Anwendungen, auf unsichere Protokolle (TLS1.0 und 1.1) zurückzugreifen, wenn der Handshake mit sicheren Protokollen (TLS1.2 und höher) fehlschlägt.