Podsumowanie
Protokoły Transport Layer Security (TLS) 1.0 i 1.1 to protokoły zabezpieczeń do tworzenia kanałów szyfrowania za pośrednictwem sieci komputerowych. Microsoft obsługuje je od wersji Windows XP i Windows Server 2003. Zmieniają się jednak wymogi regulacyjne. Ponadto istnieją nowe niedociągnięcia zabezpieczeń w usłudze TLS 1.0. Dlatego Microsoft zaleca usunięcie zależności TLS 1.0 i 1.1. Zalecamy również wyłączenie protokołu TLS 1.0 i 1.1 na poziomie systemu operacyjnego, jeśli to możliwe. Aby uzyskać więcej informacji, zobacz Wyłączanie TLS 1.0 i 1.1. W aktualizacji preview z 20 września 2022 r. domyślnie wyłączymy TLS 1.0 i 1.1 dla aplikacji opartych na winhttp i wininet. Jest to część ciągłych wysiłków. Ten artykuł pomoże Ci je ponownie włączyć. Te zmiany zostaną odzwierciedlone po zainstalowaniu aktualizacji systemu Windows wydanych 20 września 2022 r. lub później.
Zachowanie podczas uzyskiwania dostępu do linków TLS 1.0 i 1.1 w przeglądarce
Po 20 września 2022 r. zostanie wyświetlony komunikat, gdy przeglądarka otworzy witrynę internetową korzystającą z protokołu TLS 1.0 lub 1.1. Zobacz Rysunek 1. Komunikat informuje, że witryna korzysta z przestarzałego lub niebezpiecznego protokołu TLS. Aby rozwiązać ten problem, możesz zaktualizować protokół TLS do protokołu TLS 1.2 lub nowszego. Jeśli nie jest to możliwe, możesz włączyć protokół TLS zgodnie z omówionymi w temacie Włączanie protokołu TLS w wersji 1.1 lub nowszej.
Rysunek 1. Okno przeglądarki podczas uzyskiwania dostępu do strony internetowej TLS 1.0 i 1.1
Zachowanie podczas uzyskiwania dostępu do linków TLS 1.0 i 1.1 w aplikacji winhttp applications
Po aktualizacji aplikacje oparte na winhttp mogą zakończyć się niepowodzeniem. Komunikat o błędzie to "ERROR_WINHTTP_SECURE_FAILURE podczas wykonywania operacji WinHttpSendRequest".
Zachowanie podczas uzyskiwania dostępu do linków TLS 1.0 i 1.1 w niestandardowych aplikacjach interfejsu użytkownika opartych na winhttp lub wininet
Gdy aplikacja próbuje utworzyć połączenie przy użyciu protokołu TLS 1.1 lub niższego, może się wydawać, że połączenie nie powiodło się. Gdy aplikacja zostanie zamknięta lub przestanie działać, zostanie wyświetlone okno dialogowe Asystenta zgodności programów (PCA), jak pokazano na ilustracji 2.
Rysunek 2. Okno dialogowe Asystenta zgodności programów po zamknięciu aplikacji
W oknie dialogowym PCA zostanie wyświetlony komunikat "Ten program mógł nie działać poprawnie". W tym obszarze są dwie opcje:
-
Uruchamianie programu przy użyciu ustawień zgodności
-
Ten program działał poprawnie
Uruchamianie programu przy użyciu ustawień zgodności
Po wybraniu tej opcji aplikacja zostanie ponownie otwarta. Teraz wszystkie linki używające protokołu TLS 1.0 i 1.1 działają poprawnie. Od tego czasu nie zostanie wyświetlone żadne okno dialogowe PCA. Edytor rejestru dodaje wpisy do następujących ścieżek:
-
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store.
-
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.
Jeśli ta opcja została wybrana przez pomyłkę, możesz usunąć te wpisy. Jeśli je usuniesz, przy następnym otwarciu aplikacji zostanie wyświetlone okno dialogowe PCA.
Rysunek 3. Lista programów, które powinny być uruchamiane przy użyciu ustawień zgodności
Ten program działał poprawnie
Po wybraniu tej opcji aplikacja zostanie zamknięta normalnie. Przy następnym ponownym otwarciu aplikacji nie zostanie wyświetlone okno dialogowe PCA. System blokuje całą zawartość TLS 1.0 i 1.1. Edytor rejestru doda następujący wpis do ścieżki Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store. Zobacz Rysunek 4. Jeśli ta opcja została wybrana przez pomyłkę, możesz usunąć ten wpis. Jeśli usuniesz wpis, przy następnym otwarciu aplikacji zostanie wyświetlone okno dialogowe PCA.
Rysunek 4. Wpis w Edytorze rejestru z informacją, że aplikacja działa poprawnie
Ważne Starsze protokoły TLS są włączone tylko dla określonych aplikacji. Dzieje się tak, nawet jeśli są one wyłączone w ustawieniach systemu.
Włącz protokół TLS w wersji 1.1 i nowszej (ustawienia wininet i Internet Explorer)
Nie zaleca się włączania protokołu TLS 1.1 lub niższego, ponieważ nie są one już uważane za bezpieczne. Są narażeni na różne ataki, takie jak atak POODLE. Przed włączeniem protokołu TLS 1.1 wykonaj jedną z następujących czynności:
-
Sprawdź, czy jest dostępna nowsza wersja aplikacji.
-
Poproś dewelopera aplikacji o wprowadzenie zmian w konfiguracji w aplikacji w celu usunięcia zależności od protokołu TLS 1.1 lub niższego.
Jeśli żadne rozwiązanie nie zadziała, istnieją dwa sposoby włączania starszych protokołów TLS w ustawieniach systemu:
-
Opcje internetowe
-
Edytor zasad grupy
Opcje internetowe
Aby otworzyć okno Opcje internetowe, wpisz Tekst Opcje internetowe w polu wyszukiwania na pasku zadań. Możesz również wybrać pozycję Zmień ustawienia w oknie dialogowym pokazanym na rysunku 1. Na karcie Zaawansowane przewiń w dół w panelu Ustawienia . W tym miejscu można włączyć lub wyłączyć protokoły TLS.
Rysunek 5. Okno dialogowe Właściwości internetowe
Edytor zasady grupy
Aby otworzyć Edytor zasady grupy, wpisz gpedit.msc w polu wyszukiwania na pasku zadań. Zostanie wyświetlone okno, takie jak to pokazane na rysunku 6.
Rysunek 6. Zasady grupy oknie Redaktora
-
Przejdź do > zasad komputera lokalnego(konfiguracja komputera lub konfiguracja użytkownika) > > składników systemu Windows> programu Internet Explorer > Panel sterowania internetowej > strony zaawansowanej > Wyłącz obsługę szyfrowania. Zobacz Rysunek 7.
-
Kliknij dwukrotnie pozycję Wyłącz obsługę szyfrowania.
Rysunek 7. Ścieżka wyłączania obsługi szyfrowania w edytorze zasady grupy
-
Wybierz opcję Włączone . Następnie z listy rozwijanej wybierz wersję TLS, którą chcesz włączyć, jak pokazano na ilustracji 8.
Rysunek 8. Włączanie obsługi i listy rozwijanej wyłączania szyfrowania
Po włączeniu zasad w Edytorze zasady grupy nie można ich zmienić w obszarze Opcje internetowe. Jeśli na przykład wybierzesz pozycję Użyj protokołu SSL3.0 i TLS 1.0, wszystkie inne opcje będą niedostępne w obszarze Opcje internetowe. Zobacz Rysunek 9. Jeśli włączysz obsługę szyfrowania w Edytorze zasady grupy, nie możesz zmienić żadnych ustawień w obszarze Opcje internetowe.
Rysunek 9. Opcje internetowe przedstawiające niedostępne ustawienia protokołu SSL i TLS
Włączanie protokołu TLS w wersji 1.1 i nowszej (winhttp settings)
Ważne ścieżki rejestru (ustawienia wininet i internet explorer)
-
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
-
Tutaj znajdziesz SecureProtocols, które przechowuje wartość obecnie włączonych protokołów, jeśli korzystasz z Edytora zasady grupy.
-
-
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
-
Tutaj można znaleźć SecureProtocols, który przechowuje wartość obecnie włączonych protokołów, jeśli używasz opcji internetowych.
-
-
zasady grupy SecureProtocols będą mieć pierwszeństwo przed ustawieniem ustawionym przez opcje internetowe.
Włączanie niezabezpieczonej rezerwy TLS
Powyższe modyfikacje umożliwią obsługę protokołu TLS 1.0 i TLS 1.1. Jednak nie będą one włączać rezerwy TLS. Aby włączyć rezerwowanie TLS, należy ustawić wartość EnableInsecureTlsFallback na 1 w rejestrze w ramach poniższych ścieżek.
-
Aby zmienić ustawienia: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
-
Aby ustawić zasady: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
Jeśli pozycja EnableInsecureTlsFallback nie jest obecna, należy utworzyć nowy wpis DWORD i ustawić go na wartość 1.
Ważne ścieżki rejestru
-
ForceDefaultSecureProtocols
-
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
-
Wartość domyślna to FAŁSZ. Ustawienie wartości różnej od zera spowoduje, że aplikacje nie będą ustawiać protokołów niestandardowych przy użyciu opcji winhttp.
-
-
EnableInsecureTlsFallback
-
Aby zmienić ustawienia: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
-
Aby ustawić zasady: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
-
Wartość domyślna to FAŁSZ. Ustawienie wartości niezerowej umożliwi aplikacjom przywrócenie niezabezpieczonych protokołów (TLS1.0 i 1.1) w przypadku niepowodzenia uzgadniania przy użyciu bezpiecznych protokołów (tls1.2 i nowszych).
-