Saturday, September 9, 2023

Der Zugriff auf SNI-SSL-Websites über Threat Management Gateway 2010 schlägt fehl, wenn die HTTPS-Inspektion aktiviert ist – Microsoft-Support

Symptome

Stellen Sie sich das folgende Szenario vor:

  • Sie versuchen, über Microsoft Forefront Threat Management Gateway 2010 auf eine Secure Sockets Layer (SSL)-Website zuzugreifen.

  • Die Website verwendet Server Name Indication (SNI), um zu bestimmen, welches Zertifikat bereitgestellt werden soll.

  • Die HTTPS-Inspektion des Threat Management Gateway ist aktiviert.

  • Der Threat Management Gateway-Server verwendet Web-Chaining, um ausgehende Web-Anfragen an einen Upstream-Proxy-Server zu senden.

  • Der Herstellerparametersatz HTTPSiDontUseOldClientProtocols ist aktiviert (gemäß KB 2545464 ).

In diesem Szenario können Sie nicht auf die Website zugreifen.

Ursache

Dieses Problem tritt auf, weil das Threat Management Gateway einen falschen SNI-Header erstellt, der Verbindungsfehler oder Webserverfehler verursacht.

Auflösung

Um dieses Problem zu beheben, wenden Sie diesen Hotfix auf alle Mitglieder des Threat Management Gateway-Arrays an. Dieser Hotfix ist standardmäßig nicht aktiviert. Nachdem Sie diesen Hotfix installiert haben, müssen Sie die folgenden Schritte ausführen, um den Fix zu aktivieren:

  1. Kopieren Sie das folgende Skript in einen Texteditor wie Notepad und speichern Sie es dann als UseOriginalHostNameInSslContex.vbs:

     '
    ' Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten.
    ' DIESER CODE WIRD OHNE JEGLICHE GEWÄHRLEISTUNG ZUR VERFÜGUNG GESTELLT. DAS GANZE
    ' Das Risiko der Nutzung oder der Ergebnisse aus der Nutzung dieses Codes verbleibt bei der
    ' BENUTZER. Die Nutzung und Weiterverbreitung dieses Codes, mit oder ohne Änderung, ist
    ' HIERMIT ZULÄSSIG.
    '''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''
    '''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''
    ' Dieses Skript zwingt TMG, den ursprünglichen Hostnamen für den SSL-Kontext zu verwenden, wenn über den Upstream-Proxy eine Verbindung zum Zielserver hergestellt wird
    '''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "UseOriginalHostNameInSslContex"
    Const SE_VPS_VALUE = TRUE
    Sub SetValue()
    ' Erstellen Sie das Stammobjekt.
    Dunkle Wurzel
    ' Das FPCLib.FPC-Stammobjekt
    Setze root = CreateObject("FPC.Root")
    „Deklarieren Sie die anderen benötigten Objekte."
    Dim array ' Ein FPCArray-Objekt
    VendorSets dimmen
    ' Eine FPCVendorParametersSets-Sammlung
    Dim VendorSet
    ' Ein FPCVendorParametersSet-Objekt
    Setze array = root.GetContainingArray
    Setzen Sie VendorSets = array.VendorParametersSets
    Bei Fehler Weiter fortsetzen
    Setze VendorSet = VendorSets.Item( SE_VPS_GUID )
    Wenn Err.Number <> 0, dann
    Err.Clear ' Element hinzufügen.
    Setze VendorSet = VendorSets.Add( SE_VPS_GUID )
    CheckError
    WScript.Echo „Neues VendorSet hinzugefügt..." & VendorSet.Name
    Anders
    WScript.Echo „Vorhandenes VendorSet gefunden... Wert:" & VendorSet.Value(SE_VPS_NAME)
    Ende wenn
    if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Dann
    Err.Clear
    VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
    Wenn Err.Number <> 0, dann
    CheckError
    Anders
    VendorSets.Save false, true
    CheckError
    Wenn Err.Number = 0, dann
    WScript.Echo „Fertig mit „ & SE_VPS_NAME & „, gespeichert!"
    Ende wenn
    Ende wenn
    Anders
    WScript.Echo „Fertig mit „ & SE_VPS_NAME & „, keine Änderung!"
    Ende wenn
    End Sub
    Sub CheckError()
    Wenn Err.Number <> 0, dann
    WScript.Echo „Ein Fehler ist aufgetreten: 0x" & Hex(Err.Number) & „ „ & Err.Description
    Err.Clear
    Ende wenn
    End Sub
    SetValue
  2. Kopieren Sie die Skriptdatei auf ein Threat Management Gateway-Array-Mitglied und doppelklicken Sie dann auf die Datei, um das Skript auszuführen.

Um zum Standardverhalten zurückzukehren, führen Sie die folgenden Schritte aus:

  1. Suchen Sie die folgende Zeile des Skripts:

     Const SE_VPS_VALUE = true 
  2. Ändern Sie diese Zeile wie folgt:

     Const SE_VPS_VALUE = false 
  3. Führen Sie das Skript erneut auf einem der Mitglieder des Threat Management Gateway-Arrays aus.

Hotfix-Informationen

Ein unterstützter Hotfix ist beim Microsoft-Support erhältlich. Dieser Hotfix soll jedoch nur das in diesem Artikel beschriebene Problem beheben. Wenden Sie diesen Hotfix nur auf Systemen an, bei denen das in diesem Artikel beschriebene Problem auftritt. Dieser Hotfix wird möglicherweise weiteren Tests unterzogen. Wenn Sie von diesem Problem nicht schwerwiegend betroffen sind, empfehlen wir Ihnen daher, auf das nächste Software-Update zu warten, das diesen Hotfix enthält.

Wenn der Hotfix zum Download verfügbar ist, finden Sie oben in diesem Knowledge Base-Artikel den Abschnitt „Hotfix-Download verfügbar". Wenn dieser Abschnitt nicht angezeigt wird, wenden Sie sich an den Kundendienst und Support von Microsoft, um den Hotfix zu erhalten.

Hinweis Wenn weitere Probleme auftreten oder eine Fehlerbehebung erforderlich ist, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Für weitere Supportfragen und Probleme, die für diesen speziellen Hotfix nicht in Frage kommen, fallen die üblichen Supportkosten an. Eine vollständige Liste der Microsoft-Kundendienst- und Support-Telefonnummern oder zum Erstellen einer separaten Serviceanfrage finden Sie auf der folgenden Microsoft-Website:

http://support.microsoft.com/contactus/?ws=support Hinweis Im Formular „Hotfix-Download verfügbar" werden die Sprachen angezeigt, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, liegt das daran, dass für diese Sprache kein Hotfix verfügbar ist.

Voraussetzungen

Um diesen Hotfix anwenden zu können, muss Service Pack 2 für Microsoft Forefront Threat Management Gateway 2010 installiert sein.

Informationen zum Neustart

Möglicherweise müssen Sie den Computer neu starten, nachdem Sie dieses Hotfix-Rollup angewendet haben.

Informationen zum Ersatz

Dieses Hotfix-Rollup ersetzt kein zuvor veröffentlichtes Hotfix-Rollup.

Die englische Version dieses Hotfixes verfügt über die Dateiattribute (oder spätere Dateiattribute), die in der folgenden Tabelle aufgeführt sind. Die Datums- und Uhrzeitangaben für diese Dateien werden in der koordinierten Weltzeit (UTC) angegeben. Wenn Sie die Dateiinformationen anzeigen, werden diese in die Ortszeit konvertiert. Um den Unterschied zwischen UTC und Ortszeit zu ermitteln, verwenden Sie die Registerkarte „Zeitzone " im Element „Datum und Uhrzeit" in der Systemsteuerung.

Dateiname

Dateiversion

Dateigröße

Datum

Zeit

Plattform

Authdflt.dll

7.0.9193.650

252.768

22.04.15

9:46

x64

Comphp.dll

7.0.9193.650

257.912

22.04.15

9:46

x64

Complp.dll

7.0.9193.650

108.032

22.04.15

9:46

x64

Cookieauthfilter.dll

7.0.9193.650

682.760

22.04.15

9:46

x64

Dailysum.exe

7.0.9193.650

186.288

22.04.15

9:46

x64

Diffserv.dll

7.0.9193.650

162.616

22.04.15

9:46

x64

Diffservadmin.dll

7.0.9193.650

310.400

22.04.15

9:46

x64

Empfilter.dll

7.0.9193.650

711.088

22.04.15

9:46

x64

Empscan.dll

7.0.9193.650

267.664

22.04.15

9:46

x64

Gwpafltr.dll

7.0.9193.650

191.456

22.04.15

9:46

x64

Httpadmin.dll

7.0.9193.650

242.944

22.04.15

9:46

x64

Httpfilter.dll

7.0.9193.650

251.208

22.04.15

9:46

x64

Isarepgen.exe

7.0.9193.650

79.704

22.04.15

9:46

x64

Ldapfilter.dll

7.0.9193.650

189.896

22.04.15

9:46

x64

Linktranslation.dll

7.0.9193.650

418.592

22.04.15

9:46

x64

Managedapi.dll

7.0.9193.650

80.752

22.04.15

9:46

x64

Microsoft.isa.reportingservices.dll

7.0.9193.650

876.328

22.04.15

9:46

x64

Microsoft.isa.rpc.managedrpcserver.dll

7.0.9193.650

172.440

22.04.15

9:46

x64

Microsoft.isa.rpc.rwsapi.dll

7.0.9193.650

136.920

22.04.15

9:46

x64

Mpclient.dll

7.0.9193.650

128.632

22.04.15

9:46

x64

Msfpc.dll

7.0.9193.650

1.079.304

22.04.15

9:46

x64

Msfpccom.dll

7.0.9193.650

13.446.024

22.04.15

9:46

x64

Msfpcmix.dll

7.0.9193.650

569.448

22.04.15

9:46

x64

Msfpcsec.dll

7.0.9193.650

386.656

22.04.15

9:46

x64

Msfpcsnp.dll

7.0.9193.650

17.112.848

22.04.15

9:46

x64

Mspadmin.exe

7.0.9193.650

1.121.552

22.04.15

9:46

x64

Mspapi.dll

7.0.9193.650

130.680

22.04.15

9:46

x64

Msphlpr.dll

7.0.9193.650

1.279.136

22.04.15

9:46

x64

Mspmon.dll

7.0.9193.650

150.232

22.04.15

9:46

x64

Mspsec.dll

7.0.9193.650

84.872

22.04.15

9:46

x64

Pcsqmconfig.com.xml

Unzutreffend

137.103

13.02.12

20:24

Unzutreffend

Preapi.dll

7.0.9193.650

21.536

22.04.15

9:46

x64

Radiusauth.dll

7.0.9193.650

138.408

22.04.15

9:46

x64

Ratlib.dll

7.0.9193.650

148.184

22.04.15

9:46

x64

Reportadapter.dll

7.0.9193.650

723.888

22.04.15

9:46

x86

Reportdatacollector.dll

7.0.9193.650

1.127.648

22.04.15

9:46

x86

Softblockfltr.dll

7.0.9193.650

143.552

22.04.15

9:46

x64

Updateagent.exe

7.0.9193.650

211.520

22.04.15

9:46

x64

W3filter.dll

7.0.9193.650

1.409.416

22.04.15

9:46

x64

W3papi.dll

7.0.9193.650

21.024

22.04.15

9:46

x64

W3pinet.dll

7.0.9193.650

35.432

22.04.15

9:46

x64

W3prefch.exe

7.0.9193.650

341.312

22.04.15

9:46

x64

Webobjectsfltr.dll

7.0.9193.650

170.320

22.04.15

9:46

x64

Weng.sys

7.0.9193.572

845.440

12.12.12

21:31

x64

Wengnotify.dll

7.0.9193.572

154.280

12.12.12

21:31

x64

Wploadbalancer.dll

7.0.9193.650

203.840

22.04.15

9:46

x64

Wspapi.dll

7.0.9193.650

49.840

22.04.15

9:46

x64

Wspperf.dll

7.0.9193.650

131.192

22.04.15

9:46

x64

Wspsrv.exe

7.0.9193.650

2.464.136

22.04.15

9:46

x64



Mehr Informationen

SNI ist eine Funktion der SSL-Transportschichtsicherheit (TLS), die es einem Client ermöglicht, einen Header in der „Hallo"-Nachricht des SSL-Clients zu senden, der angibt, auf welchen vollqualifizierten Domänennamen (FQDN) zugegriffen wird. Mit dieser Aktion kann ein Server anhand des SNI-Headers bestimmen, welches Zertifikat an den Client gesendet werden soll.

Wenn Threat Management Gateway SSL Inspection aktiviert ist, übernimmt Threat Management Gateway die SSL-Aushandlung mit dem Ziel-Webserver und wird von der SSL-Aushandlung des Webservers als Client identifiziert.

Threat Management Gateway erstellt den SNI-Header falsch, indem es den Namen des Upstream-Servers und nicht den Namen des Ziel-Webservers verwendet, wenn die folgenden Bedingungen zutreffen:

  • Threat Management Gateway ist ein Downstream-Proxyserver.

  • Threat Management Gateway kettet ausgehende Anfragen an einen vorgelagerten Threat Management Gateway-Server.

  • Der Herstellerparametersatz HTTPSiDontUseOldClientProtocols ist gemäß KB 2545464 aktiviert.

Dies kann zu Verbindungsfehlern oder Webserverfehlern führen, je nachdem, wie der Webserver auf den falschen SNI-Header reagiert.

No comments:

Post a Comment