Objawy
Rozważ następujący scenariusz:
-
Podczas próby dostępu Secure Sockets Layer (SSL) witryny sieci Web za pośrednictwem programu Microsoft Forefront zagrożenie Management Gateway 2010.
-
Witryna sieci Web używa nazwy serwera (SNI), aby określić który certyfikat służyć.
-
Jest włączona inspekcja HTTPS bramy zarządzania zagrożeniem.
-
Serwer Threat Management Gateway używa instalacjami do wysyłania wychodzących żądań sieci web do serwera nadrzędnego serwera proxy w sieci web.
-
Zestaw parametrów dostawcy HTTPSiDontUseOldClientProtocols jest włączony (na KB 2545464).
W tym scenariuszu nie można uzyskać dostępu witryny sieci Web.
Przyczyna
Ten problem występuje, ponieważ Threat Management Gateway buduje niepoprawny nagłówek SNI, który powoduje błędy połączeń lub błąd serwera sieci web.
Rozwiązanie
Aby rozwiązać ten problem, należy zastosować tę poprawkę na wszystkich elementach członkowskich macierzy Threat Management Gateway. Ta poprawka nie jest domyślnie włączona. Po zainstalowaniu tej poprawki, należy wykonać następujące kroki, aby włączyć tę poprawkę:
-
Skopiuj poniższy skrypt do edytora tekstu takiego jak Notatnik, a następnie zapisz je jako UseOriginalHostNameInSslContex.vbs:
'' Copyright (c) Microsoft Corporation. All rights reserved.
' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE ' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE ' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS ' HEREBY PERMITTED. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' This script forces TMG to use original host name for SSL context when connecting to target server via upstream proxy '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}" Const SE_VPS_NAME = "UseOriginalHostNameInSslContex" Const SE_VPS_VALUE = TRUE Sub SetValue() ' Create the root object. Dim root ' The FPCLib.FPC root object Set root = CreateObject("FPC.Root") 'Declare the other objects that are needed. Dim array ' An FPCArray object Dim VendorSets ' An FPCVendorParametersSets collection Dim VendorSet ' An FPCVendorParametersSet object Set array = root.GetContainingArray Set VendorSets = array.VendorParametersSets On Error Resume Next Set VendorSet = VendorSets.Item( SE_VPS_GUID ) If Err.Number <> 0 Then Err.Clear ' Add the item. Set VendorSet = VendorSets.Add( SE_VPS_GUID ) CheckError WScript.Echo "New VendorSet added... " & VendorSet.Name Else WScript.Echo "Existing VendorSet found... value: " & VendorSet.Value(SE_VPS_NAME) End If if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then Err.Clear VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE If Err.Number <> 0 Then CheckError Else VendorSets.Save false, true CheckError If Err.Number = 0 Then WScript.Echo "Done with " & SE_VPS_NAME & ", saved!" End If End If Else WScript.Echo "Done with " & SE_VPS_NAME & ", no change!" End If End Sub Sub CheckError() If Err.Number <> 0 Then WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear End If End Sub SetValue -
Skopiuj plik skryptu do elementu tablicy Threat Management Gateway, a następnie kliknij dwukrotnie plik, aby uruchomić skrypt.
Aby powrócić do domyślnego zachowania, wykonaj następujące kroki:
-
Zlokalizuj następujący wiersz skryptu:
Const SE_VPS_VALUE = true
-
Zmień ten wiersz na następujący:
Const SE_VPS_VALUE = false
-
Uruchomienie skryptu na jednego z członków tablicy Threat Management Gateway.
Informacje o poprawce
Obsługiwana poprawka dostępna jest z witryny Microsoft Support. Jednak ta poprawka jest przeznaczona tylko do usunięcia problemu opisanego w tym artykule. Zastosuj poprawkę tylko w systemach, w których występuje problem opisany w tym artykule. Ta poprawka może być wciąż w fazie testowania. Jeśli dany system nie jest poważnie narażony na ten problem, firma Microsoft zaleca, aby poczekać na następną aktualizację oprogramowania zawierającą tę poprawkę.
Jeśli poprawka jest dostępna do pobrania, pojawi się sekcja "Poprawka dostępna do pobrania" na początku tego artykułu z bazy wiedzy Knowledge Base. Jeśli nie ma tej sekcji, skontaktuj się z Obsługą i Wsparciem Klienta Microsoft w celu uzyskania poprawki. Uwaga Jeśli wystąpią dodatkowe błędy lub konieczność rozwiązania problemu, być może trzeba będzie utworzyć osobne zlecenie usługi. Zwykłe koszty obsługi będą zastosowane do dodatkowych pytań i problemów, których nie można rozwiązać przy użyciu określonej poprawki. Aby uzyskać pełną listę numerów telefonów działu obsługi klienta firmy Microsoft lub utworzyć osobne zlecenie usługi odwiedź następujące witryny firmy Microsoft:http://support.microsoft.com/contactus/?ws=supportUwaga "Poprawka dostępna do pobrania" zawiera listę języków, dla których dostępna jest poprawka. Jeśli odpowiedni język nie jest widoczny, to dlatego, że poprawka nie jest dostępna dla danego języka.
Wymagania wstępne
Musi mieć dodatek Service Pack 2 dla programu Microsoft Forefront zagrożenie Management Gateway 2010 zainstalować tę poprawkę.
Informacje dotyczące ponownego uruchamiania
Należy ponownie uruchomić komputer po zastosowaniu tego pakietu zbiorczego poprawek.
Informacje o zastępowaniu
Ten pakiet zbiorczy poprawek nie zastępuje pakiet wcześniej wydanych poprawek.
Wersja anglojęzyczna tej poprawki ma atrybuty plików (lub nowsze) wymienione w poniższej tabeli. Daty i godziny odpowiadające tym plikom zostały podane w formacie uniwersalnego czasu koordynowanego (UTC, Coordinated Universal Time). Po wyświetleniu informacji o pliku są konwertowane na czas lokalny. Aby zobaczyć różnicę między czasem UTC i czasem lokalnym, należy użyć z karty Strefa czasowa w aplecie Data i godzina w Panelu sterowania.
Nazwa pliku |
Wersja pliku |
Rozmiar pliku |
Data |
Godzina |
Platforma |
---|---|---|---|---|---|
Authdflt.dll |
7.0.9193.650 |
252,768 |
22-Apr-15 |
9:46 |
x64 |
Comphp.dll |
7.0.9193.650 |
257,912 |
22-Apr-15 |
9:46 |
x64 |
Complp.dll |
7.0.9193.650 |
108,032 |
22-Apr-15 |
9:46 |
x64 |
Cookieauthfilter.dll |
7.0.9193.650 |
682,760 |
22-Apr-15 |
9:46 |
x64 |
Dailysum.exe |
7.0.9193.650 |
186,288 |
22-Apr-15 |
9:46 |
x64 |
Diffserv.dll |
7.0.9193.650 |
162,616 |
22-Apr-15 |
9:46 |
x64 |
Diffservadmin.dll |
7.0.9193.650 |
310,400 |
22-Apr-15 |
9:46 |
x64 |
Empfilter.dll |
7.0.9193.650 |
711,088 |
22-Apr-15 |
9:46 |
x64 |
Empscan.dll |
7.0.9193.650 |
267,664 |
22-Apr-15 |
9:46 |
x64 |
Gwpafltr.dll |
7.0.9193.650 |
191,456 |
22-Apr-15 |
9:46 |
x64 |
Httpadmin.dll |
7.0.9193.650 |
242,944 |
22-Apr-15 |
9:46 |
x64 |
Httpfilter.dll |
7.0.9193.650 |
251,208 |
22-Apr-15 |
9:46 |
x64 |
Isarepgen.exe |
7.0.9193.650 |
79,704 |
22-Apr-15 |
9:46 |
x64 |
Ldapfilter.dll |
7.0.9193.650 |
189,896 |
22-Apr-15 |
9:46 |
x64 |
Linktranslation.dll |
7.0.9193.650 |
418,592 |
22-Apr-15 |
9:46 |
x64 |
Managedapi.dll |
7.0.9193.650 |
80,752 |
22-Apr-15 |
9:46 |
x64 |
Microsoft.isa.reportingservices.dll |
7.0.9193.650 |
876,328 |
22-Apr-15 |
9:46 |
x64 |
Microsoft.isa.rpc.managedrpcserver.dll |
7.0.9193.650 |
172,440 |
22-Apr-15 |
9:46 |
x64 |
Microsoft.isa.rpc.rwsapi.dll |
7.0.9193.650 |
136,920 |
22-Apr-15 |
9:46 |
x64 |
Mpclient.dll |
7.0.9193.650 |
128,632 |
22-Apr-15 |
9:46 |
x64 |
Msfpc.dll |
7.0.9193.650 |
1,079,304 |
22-Apr-15 |
9:46 |
x64 |
Msfpccom.dll |
7.0.9193.650 |
13,446,024 |
22-Apr-15 |
9:46 |
x64 |
Msfpcmix.dll |
7.0.9193.650 |
569,448 |
22-Apr-15 |
9:46 |
x64 |
Msfpcsec.dll |
7.0.9193.650 |
386,656 |
22-Apr-15 |
9:46 |
x64 |
Msfpcsnp.dll |
7.0.9193.650 |
17,112,848 |
22-Apr-15 |
9:46 |
x64 |
Mspadmin.exe |
7.0.9193.650 |
1,121,552 |
22-Apr-15 |
9:46 |
x64 |
Mspapi.dll |
7.0.9193.650 |
130,680 |
22-Apr-15 |
9:46 |
x64 |
Msphlpr.dll |
7.0.9193.650 |
1,279,136 |
22-Apr-15 |
9:46 |
x64 |
Mspmon.dll |
7.0.9193.650 |
150,232 |
22-Apr-15 |
9:46 |
x64 |
Mspsec.dll |
7.0.9193.650 |
84,872 |
22-Apr-15 |
9:46 |
x64 |
Pcsqmconfig.com.xml |
Nie dotyczy |
137,103 |
13-Feb-12 |
20:24 |
Nie dotyczy |
Preapi.dll |
7.0.9193.650 |
21,536 |
22-Apr-15 |
9:46 |
x64 |
Radiusauth.dll |
7.0.9193.650 |
138,408 |
22-Apr-15 |
9:46 |
x64 |
Ratlib.dll |
7.0.9193.650 |
148,184 |
22-Apr-15 |
9:46 |
x64 |
Reportadapter.dll |
7.0.9193.650 |
723,888 |
22-Apr-15 |
9:46 |
x86 |
Reportdatacollector.dll |
7.0.9193.650 |
1,127,648 |
22-Apr-15 |
9:46 |
x86 |
Softblockfltr.dll |
7.0.9193.650 |
143,552 |
22-Apr-15 |
9:46 |
x64 |
Updateagent.exe |
7.0.9193.650 |
211,520 |
22-Apr-15 |
9:46 |
x64 |
W3filter.dll |
7.0.9193.650 |
1,409,416 |
22-Apr-15 |
9:46 |
x64 |
W3papi.dll |
7.0.9193.650 |
21,024 |
22-Apr-15 |
9:46 |
x64 |
W3pinet.dll |
7.0.9193.650 |
35,432 |
22-Apr-15 |
9:46 |
x64 |
W3prefch.exe |
7.0.9193.650 |
341,312 |
22-Apr-15 |
9:46 |
x64 |
Webobjectsfltr.dll |
7.0.9193.650 |
170,320 |
22-Apr-15 |
9:46 |
x64 |
Weng.sys |
7.0.9193.572 |
845,440 |
12-Dec-12 |
21:31 |
x64 |
Wengnotify.dll |
7.0.9193.572 |
154,280 |
12-Dec-12 |
21:31 |
x64 |
Wploadbalancer.dll |
7.0.9193.650 |
203,840 |
22-Apr-15 |
9:46 |
x64 |
Wspapi.dll |
7.0.9193.650 |
49,840 |
22-Apr-15 |
9:46 |
x64 |
Wspperf.dll |
7.0.9193.650 |
131,192 |
22-Apr-15 |
9:46 |
x64 |
Wspsrv.exe |
7.0.9193.650 |
2,464,136 |
22-Apr-15 |
9:46 |
x64 |
Więcej informacji
SNI jest to funkcję SSL zabezpieczeń TLS (Transport Layer), która umożliwia klientowi wysyłania nagłówka w komunikacie "Hello" klienta SSL, który wskazuje, które w pełni kwalifikowaną nazwę domeny (FQDN) jest dostępny. Ta akcja umożliwia serwera, aby sprawdzić, który certyfikat do wysłania do klienta, oparte na nagłówek SNI.
Po włączeniu inspekcji SSL bramy zarządzania zagrożeniem Threat Management Gateway obsługuje negocjowanie SSL na serwerze sieci web docelowej i jest identyfikowany jako klient negocjowanie SSL serwera sieci web. Threat Management Gateway tworzy nagłówek SNI niepoprawnie przy użyciu nazwy serwera nadrzędnego i nie miejsce docelowe nazwę serwera sieci web, jeśli spełnione są następujące warunki:-
Threat Management Gateway jest serwerem proxy niższego rzędu.
-
Threat Management Gateway łańcuchy wychodzące żądania do serwera nadrzędnego Threat Management Gateway.
-
Włączono zestaw parametrów dostawcy HTTPSiDontUseOldClientProtocols per KB 2545464.
Może to spowodować błędy połączenia lub błąd serwera sieci web, w zależności od tego, jak serwer sieci web reaguje na niepoprawny nagłówek SNI.