Um servidor ISA Server 2004 ou ISA Server 2006 descendente não reutilizar as ligações TCP um servidor de montante de outros fabricantes

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

934022
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Sintomas
Considere o seguinte cenário. Um servidor jusante está a executar Microsoft Internet Security e Acceleration (ISA) Server 2004 ou o Microsoft Internet Security and Acceleration (ISA) Server 2006. Este servidor a jusante é encadeada a um servidor montante terceiros através da configuração de encadeamento Web. Neste cenário, ISA Server não reutilizar as ligações TCP que criou para o servidor a montante. Em vez disso, o ISA Server fecha cada ligação TCP após é recebida uma resposta HTTP.

Quando a rede estiver numa carga elevada, este comportamento pode fazer com que ISA Server para exaustão todas as portas TCP disponíveis.
Causa
Alguns servidores proxy de terceiros enviam uma resposta HTTP que inclui os cabeçalhos seguintes:
  • Content-Length
  • Codificação de transferência: secção
Acordo com a secção 4.4 das especificações RFC 2616, estes dois cabeçalhos são mutuamente exclusivos e não devem ser utilizados em conjunto. Esta resposta HTTP indica um potencial ataque de smuggling de HTTP. Por conseguinte, o ISA Server processa a resposta ignorando o cabeçalho Content-Length. Em seguida, ISA Server encerra a ligação TCP para evitar o ataque potencial.
Resolução
Resolução
Para resolver este problema, obtenha o ISA Server service pack mais recente. Para obter mais informações, clique números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft:
954258Como obter o Internet Security and Acceleration (ISA) Server 2006 service pack mais recente
891024Como obter o ISA Server 2004 service pack mais recente
importante Estes passos podem aumentar o risco de segurança. Estes passos podem também tornar o computador ou rede mais vulnerável a ataques de utilizadores mal intencionados ou software malicioso como vírus. Recomendamos o processo descrito neste artigo para permitir que programas a funcionar como foram concebidos para ou para implementar capacidades específicas de programa. Antes de efectuar estas alterações, recomendamos que avalie os riscos associados à implementação deste processo no seu ambiente específico. Se decidir implementar este processo, tome medidas adicionais adequadas para ajudar a proteger o sistema. Recomendamos que utilize este processo apenas se for realmente necessário este processo.
aviso Depois de seguir os passos nesta secção, o ISA Server 2004 não fechará a ligações TCP, o mesmo cabeçalho Content-Length e o "codificação de transferência: secção" cabeçalho estão presentes na resposta HTTP. Esta resolução reduz a protecção fornecida pelo ISA Server. Por conseguinte, não recomendamos que aplique esta alteração, excepto se o servidor a montante fornece protecção contra ataques de smuggling de HTTP.

Para alterar o comportamento do ISA predefinido, siga estes passos:
  1. Para resolver este problema, obtenha o ISA Server service pack mais recente. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
    954258Como obter o Internet Security and Acceleration (ISA) Server 2006 service pack mais recente
    891024Como obter o ISA Server 2004 service pack mais recente
  2. Inicie o bloco de notas.
  3. Copie o seguinte código e cole-o no bloco de notas:
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 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 sets whether ISA will keep connections open after it receives an HTTP ' response that contains both a Content-Length header and a Transfer-Encoding: Chunked header.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "EnableKb934022"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 needed.    Dim array       ' An FPCArray object    Dim VendorSets  ' An FPCVendorParametersSets collection    Dim VendorSet   ' An FPCVendorParametersSet object    ' Get references to the array object    ' and to the network rules collection.    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
  4. Guarde o ficheiro de texto como "Enable934022."
  5. Abra uma linha de comandos, mude para a localização na qual o script é guardado e, em seguida, execute o seguinte comando na linha de comandos:
    cscript Enable934022.vbs
Nota Para reverter para a definição predefinida, edite o script alterando "Const SE_VPS_VALUE = true"para"Const SE_VPS_VALUE = false." Guardar o script e, em seguida, executá-la novamente.
Ponto Da Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".
Mais Informação
Para obter mais informações sobre como instalar o ISA Server correcções e actualizações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
885957Como instalar o ISA Server correcções e actualizações

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 934022 - Última Revisão: 01/15/2015 09:28:26 - Revisão: 2.0

  • Microsoft Internet Security and Acceleration Server 2004 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2004 Enterprise Edition
  • Microsoft Internet Security and Acceleration Server 2006 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2006 Enterprise Edition
  • kbnosurvey kbarchive kbmt kbtshoot kbexpertiseinter kbprb KB934022 KbMtpt
Esta informação foi útil?