Simptome
Să luăm în considerare următorul scenariu:
-
Într-un mediu Microsoft Forefront Threat Management Gateway (TMG) 2010, activați HTTPS control.
-
Setați valoarea HTTPSiClientProtocols Const SE_VPS_VALUE la 160. Această valoare este menționat în articolul 982876 din baza de cunoștințe Microsoft.
-
Când încercați să accesați un site web HTTPS care nu acceptă criptarea TLS v1.0.
În acest scenariu, se pot accesa site-ul web.
Cauză
Această problemă apare deoarece TMG 2010 trimite un client "Salut" mesaj care oferă TLS. Cu toate acestea, deoarece serverul web nu acceptă TLS, se respinge mesajul și se închide conexiunea. În acest scenariu, clientul de obicei revine la SSL v3.0. Cu toate acestea, TMG nu revină la SSL v3.0 atunci când este activată HTTPS control.
Rezolvare
Pentru a rezolva această problemă, instalați actualizarea de software care este descrisă în următorul articol din baza de cunoștințe Microsoft:
2517957 software Update 1 Rollup 4 pentru Forefront Threat Management Gateway (TMG) 2010 Service Pack 1Pentru a activa această remediere, urmați acești pași:
-
Porniți Notepad.
-
Copiați și lipiți următorul script în Notepad:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 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 disables the use of old client protocols like PCT and SSLv2''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "HTTPSiDontUseOldClientProtocols"Const SE_VPS_VALUE = TRUESub 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 IfEnd SubSub CheckError() If Err.Number <> 0 Then WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear End IfEnd SubSetValue
-
Salvați fișierul Notepad utilizând extensia numelui de fișier .vbs. De exemplu, utilizați următorul nume atunci când Salvați acest fișier:
EnableHTTPSiDontUseOldClientProtocols.vbs
-
La promptul de comandă, executați scriptul. De exemplu, utilizați următoarea sintaxă pentru a executa scriptul:
cscript.exe EnableHTTPSiDontUseOldClientProtocols.vbs
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.