Como proteger a pilha de TCP/IP contra ataques denial-of-service no Windows 2000

Traduções de Artigos Traduções de Artigos
Artigo: 315669 - Ver produtos para os quais este artigo se aplica.
Este artigo foi publicado anteriormente em PT315669
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Os ataques do tipo denial-of-service são ataques de rede que têm como objectivo fazer com que um computador ou um determinado serviço de um computador fique indisponível para os utilizadores da rede. Os ataques denial-of-service podem ser de difícil defesa. Par ajudar a impedir ataques denial-of-service, pode utilizar um ou os dois métodos seguintes:
  • Manter o computador actualizado com as correcções de segurança mais recentes. As correcções de segurança estão localizadas no seguinte Web site da Microsoft:
    http://www.microsoft.com/security/
  • Proteger a pilha do protocolo TCP/IP em estações de trabalho e servidores baseados no Windows 2000. A configuração predefinida da pilha de TCP/IP está optimizada para processar tráfego padrão da intranet. Se ligar um computador directamente à Internet, a Microsoft recomenda a protecção da pilha de TCP/IP contra ataques denial-of-service.

Valores de TCP/IP do registo que protegem a pilha de TCP/IP

AVISO: se utilizar incorrectamente o Editor de registo, poderá provocar problemas graves que poderão forçar a reinstalação do sistema operativo. A Microsoft não garante que os problemas resultantes da utilização incorrecta do Editor de registo possam ser resolvidos. Todo e qualquer risco decorrente da utilização do Editor de registo é da responsabilidade do utilizador.

A lista que se segue descreve os valores de registo relacionados com o TCP/IP que pode configurar para proteger a pilha de TCP/IP em computadores ligados directamente à Internet. Todos estes valores estão localizados na seguinte chave do registo:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
NOTA: Todos os valores estão em formato hexadecimal salvo indicação em contrário.
  • Nome do valor: SynAttackProtect
    Chave: Tcpip\Parameters
    Tipo de valor: REG_DWORD
    Intervalo válido: 0,1,2
    Predefinição: 0

    Este valor de registo faz com que o protocolo TCP (Transmission Control Protocol - protocolo de controlo de transmissão) ajuste as retransmissões de SYN-ACKS. Ao configurar este valor, o limite de tempo das respostas de ligação esgota-se mais rapidamente durante um ataque SYN (um tipo de ataque denial-of-service).

    A lista seguinte descreve os parâmetros que pode utilizar com este valor do registo:
    • 0 (valor predefinido): Defina SynAttackProtect como 0 para protecção normal contra ataques SYN.
    • 1: defina SynAttackProtect como 1 para obter uma maior protecção contra ataques SYN. Este parâmetro faz com que o TCP ajuste a retransmissão de SYN-ACKS. Quando define SynAttackProtect como 1, o limite de tempo das respostas de ligação esgota-se mais rapidamente se parecer que está em curso um ataque SYN. O Windows utiliza os seguintes valores para determinar se um ataque está em curso:
      • TcpMaxPortsExhausted
      • TCPMaxHalfOpen
      • TCPMaxHalfOpenRetried

    • 2: defina SynAttackProtect como 2 para obter a melhor protecção contra ataques SYN. Este valor adiciona atrasos a indicações de ligação e os pedidos de ligação TCP atingirão o tempo limite rapidamente quando estiver em curso um ataque SYN. Este parâmetro é a definição recomendada.

      NOTA: As opções de sockets que se seguem deixarão de funcionar em todos os sockets quando definir o valor de SynAttackProtect como 2:
      • Janelas dimensionáveis
      • Parâmetros de TCP configurados em cada adaptador (incluindo RTT inicial e tamanho da janela)
  • Nome do valor: EnableDeadGWDetect
    Chave: Tcpip\Parameters
    Tipo de valor: REG_DWORD
    Intervalo válido: 0, 1 (False, True)
    Predefinição: 1 (True)

    A lista seguinte descreve os parâmetros que pode utilizar com este valor do registo:
    • 1: quando define EnableDeadGWDetect como 1, é permitido ao TCP executar a detecção de gateways inactivos. Quando a detecção de gateways inactivos está activada, o TCP pode pedir ao protocolo Internet (IP, Internet Protocol) que mude para um gateway de reserva se existir um determinado número de ligações com dificuldades. Os gateways de reserva são definidos na secção Avançadas da caixa de diálogo Definições de TCP/IP no Painel de controlo.
    • 0: a Microsoft recomenda a definição do valor de EnableDeadGWDetect como 0. Se não definir este valor como 0, um ataque poderá forçar o servidor a mudar de gateway e provocar a mudança para um gateway não desejado.
  • Nome do valor: EnablePMTUDiscovery
    Chave: Tcpip\Parameters
    Tipo de valor: REG_DWORD
    Intervalo válido: 0, 1 (False, True)
    Predefinição: 1 (True)

    A lista seguinte descreve os parâmetros que pode utilizar com este valor do registo:
    • 1: quando define EnablePMTUDiscovery como 1, o TCP tenta identificar a unidade máxima de transmissão (MTU, Maximum Transmission Unit) ou o tamanho máximo de pacote no caminho para um anfitrião remoto. O TCP pode eliminar a fragmentação nos routers existentes no caminho entre redes com MTU diferentes, identificando a MTU do caminho e limitando os segmentos de TCP a este tamanho. A fragmentação prejudica o débito do TCP.
    • 0: a Microsoft recomenda a definição do valor de EnablePMTUDiscovery como 0. Ao fazê-lo, é utilizada uma MTU de 576 bytes para todas as ligações que não são anfitrião na sub-rede local. Se não definir este valor como 0, um intruso poderá definir a MTU com um valor muito pequeno e sobrecarregar a pilha.

      Importante A definição de EnablePMTUDiscovery como 0 afecta negativamente o desempenho e o débito de TCP/IP. Apesar da Microsoft recomendar esta definição, ela não deverá ser utilizada a menos que esteja totalmente ciente desta perda de desempenho.
  • Nome do valor: KeepAliveTime
    Chave: Tcpip\Parameters
    Tipo de valor: REG_DWORD - Tempo em milissegundos
    Intervalo válido: 1 - 0xFFFFFFFF
    Predefinição: 7.200.000 (duas horas)

    Este valor controla a frequência com que o TCP tenta verificar se uma ligação inactiva permanece intacta enviando um pacote keep-alive. Se o computador remoto continuar contactável, confirmará a recepção do pacote keep-alive. Por predefinição, os pacotes keep-alive não são enviados. Pode utilizar um programa para configurar este valor numa ligação. A definição recomendada para o valor é 300.000 (5 minutos).
  • Nome do valor: NoNameReleaseOnDemand
    Chave: Netbt\Parameters
    Tipo de valor: REG_DWORD
    Intervalo válido: 0, 1 (False, True)
    Predefinição: 0 (False)

    Este valor determina se o computador liberta o respectivo nome de NetBIOS quando recebe um pedido de libertação de nome. Este valor foi adicionado para permitir ao administrador proteger o computador contra ataques maliciosos de libertação de nomes. A Microsoft recomenda a definição do valor de NoNameReleaseOnDemand como 1 (valor predefinido).

    NOTA: Tem de estar a utilizar o Windows 2000 Service Pack 2 (SP2) ou posterior para utilizar o valor NoNameReleaseOnDemand.

Resolução de problemas

A alteração dos valores de TCP/IP do registo poderá afectar programas e serviços em execução no computador baseado no Windows 2000. A Microsoft recomenda que teste estas definições em estações de trabalho e servidores que não sejam de produção, a fim de confirmar a respectiva compatibilidade com o ambiente empresarial.






Propriedades

Artigo: 315669 - Última revisão: 23 de janeiro de 2007 - Revisão: 4.2
A informação contida neste artigo aplica-se a:
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional Edition
Palavras-chave: 
kbhowtomaster KB315669

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com