Ataques de Rede

Considerações de Segurança em Ataques de Rede

No mundo conectado da Internet, alguns indivíduos mal-intencionados criam as maiores preocupações para os administradores de segurança de rede que possuam sistemas expostos na rede pública. Os recentes ataques de negação de serviço em muitos sites populares na Web tornaram esta questão ainda mais clara. Muitos destes ataques geram grandes volume de tráfego TCP/IP. Normalmente o site alvo pode ficar indisponível para a maioria dos usuários na Internet devido a saturação do seu segmento de rede. Internamente, entretanto, os servidores Web também podem ser drasticamente afetados por estes ataques.

O suite TCP/IP da Microsoft, parte da família de sistemas operacionais Windows, foi testado e provou ser confiável contra muitos ataques e em seu estado padrão trata a maioria dos ataques comuns. Além disso, existem vários procedimentos comuns que podem ser tomados para diminuir a vulnerabilidade a estes ataques em um site na Web:

  • Monitorar ataques nas fronteiras de rede. Várias empresas oferecem ferramentas que podem detectar estes tipos de ataques (uma ferramenta de detecção de intrusão bastante utilizada pode ser encontrada em http://www.iss.net/ ).
  • Garanta que os roteadores não estejam convertendo broadcasts de nível 3 para broadcasts de nível 2. O comando Cisco para desabilitar esta conversão é: no ip directed-broadcast. Esta é a configuração padrão para os roteadores que utilizam o IOS versão 12.0 ou superior.
  • Permita nos roteadores apenas o tráfegoo em portas que forem necessárias ao funcionamento do site.
  • Desabilite serviços desnecessários ou opcionais (por exemplo, Cliente para Redes Microsoft no servidor IIS)
  • Habilite a filtragem TCP/IP e permita o tráfego somente em portas que são necessárias para o servidor funcionar. (leia o artigo do Knowledge Base **150543:**WinNT, Terminal Server, & Exchange Services Use TCP/IP Ports para uma lista das portas que os serviços Windows utilizam)
  • Desvincule o NetBIOS sobre TCP/IP quando não for necessário.
  • Configure endereços IPs e parâmetros estáticos para adaptadores públicos.
  • Configure o registro para máxima proteção.
  • Siga os passos para configurar o Windows NT e o IIS descritos na Lista de Verificação de Segurança do IIS 4.0.
  • Consulte o site de segurança da Microsoft regularmente para boletins de segurança em  http://www.microsoft.com/technet/security/default.mspx .

Configurações do registro para máxima proteção contra ataques de rede

As seguintes configurações no registro irão aumentar a resistência do Windows NT e Windows 2000 a ataques de negação de serviços de rede.

SynAttackProtect
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD
Valores válidos: 0, 1, 2
0 (sem proteção contra ataques do tipo SYN)
1 (reduz as tentativas de retransmissão e a criação de RCE (route cache entry) atrasado se os parâmetros TcpMaxHalfOpen e TcpMaxHalfOpenRetried são satisfeitos.)
2 (além das configurações aplicadas ao valor 1 um indicação atrasada no Winsock é feita.)

Nota Quanto o sistema encontra-se sob ataque as seguintes opções em qualquer soquete (socket) não pode ser ativado: janelas escaláveis (RFC 1323) e parâmetros TCP configurados por adaptador (RTT inicial, tamanho da janela). Isto ocorre porque quando a proteção está funcionando a entrada no cache da rota não é consultada antes de um SYN-ACK ser enviado e as opções de Winsock não estão disponíveis neste estágio da conexão.

Padrão: 0 (Falso)
Recomendação: 2
Descrição: Proteção contra ataques SYN envolvem a redução da quantidade de retransmissões de SYN-ACKS, que irá reduzir o tempo que os recursos ficam alocados. A alocação de uma entrada no cache de rota é atrasada até que a conexão seja feita. Se o parâmetro synattackprotect = 2, então a indicação da conexão para o AFD é atrasado até que o processo "three-way handshake" seja completado. Note também que as ações tomadas pelo mecanismo de proteção apenas ocorrerá se os parâmetros TcpMaxHalfOpen e TcpMaxHalfOpenRetried forem excedidos.

TcpMaxHalfOpen
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD—Número
Valores válidos: 100–0xFFFF
Padrão: 100 (Professional, Server), 500 (Advanced Server)
Recomendação: padrão
Descrição: Este parâmetro controla o número de conexões no estado SYN-RCVD permitidas antes que a proteção SYN-ATTACK inicie a operação. Se SynAttackProtect for definido como 1, garanta que este valor é menor do que o backlog AFD escuta na porta que você deseja proteger (veja Parâmetros do BackLog para maiores informações). Veja os parâmetros do SynAttackProtect para mais detalhes.

TcpMaxHalfOpenRetried
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD—Número
Valores válidos: 80–0xFFFF
Padrão: 80 (Professional, Server), 400 (Advanced Server)
Recomendação: padrão
Descrição: Este parâmetro controla o número de conexões no estado SYN-RCVD para que ocorra pelo menos uma retransmissão do SYN enviado, antes da proteção SYN-ATTACK iniciar a operação. Veja os parâmetros do SynAttackProtect para mais detalhes.

EnablePMTUDiscovery
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD—Booleano
Valores válidos: 0, 1 (Falso, Verdadeiro)
Padrão: 1 (Verdadeiro)
Recomendação: 0
Descrição: Quando este parâmetro for definido para 1 (Verdadeiro) o TCP tenta descobrir o MTU (Maximum Transmission Unit ou pacote de maior tamanho) no caminho ao host remoto. Descobrindo o MTU do caminho e limitando os segmentos TCP deste tamanho, o TCP pode eliminar a fragmentação em roteadores durante o caminho que conecta as redes com MTUs diferentes.A fragmentação afeta a taxa de transferência TCP e congestiona redes. Definindo este parâmetro para 0 define um MTU de 576 bytes a ser usado para todas as conexões que não sejam oriundas da sub-rede local.

NoNameReleaseOnDemand
Chave: Netbt\Parameters
Tipo de Valor: REG_DWORD—Booleano
Valores válidos: 0, 1 (Falso, Verdadeiro)
Padrão: 0 (Falso)
Recomendação: 1
Descrição: Este parâmetro determina quando o computador libera seu nome NetBIOS ao receber uma requisição de liberação do nome a partir da rede. Isto é feito para permitir ao administrador proteger a máquina contra ataques de liberação de nomes.

EnableDeadGWDetect
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD—Booleano
Valores válidos: 0, 1 (Falso, Verdadeiro)
Padrão: 1 (Verdadeiro)
Recomendação: 0
Descrição: Quando este parâmetro é definido como 1, o TCP consegue realizar uma detecção de gateway morto (dead gateway). Com este recurso habilitado, o TCP pode solicitar ao IP a alteração para um gateway de backup se o número de conexões estiverem experimentando dificuldades. Gateways de backup podem ser definidos na seção Avançado na configuração do TCP/IP em Conexões de Rede. Veja a seção "Detecção de gateway morto" neste documento para mais detalhes.

KeepAliveTime
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD—Tempo em milisegundos
Valores válidos: 1–0xFFFFFFFF
Padrão: 7,200,000 (duas horas)
Recomendação: 300,000
Descrição: Este parâmetro controla com que frequência o TCP verifica se uma conexão ociosa está intacta enviando um pacote keep-alive. Se o sistema remoto estiver alcançável e operacional, ele irá responder ao pacote keep-alive. Pacotes Keep-alive não são enviados por padrão. Este recurso pode ser habilitado em uma conexão por uma aplicação.

PerformRouterDiscovery
Chave: Tcpip\Parameters\Interfaces\
Tipo de Valor: REG_DWORD
Valores válidos: 0,1,2
0 (desabilitada)
1 (habilitada)
2 (habilitado apenas se o DHCP envia a opção de descoberta de roteador)
Padrão: 2, DHCP controlado mas desligado por padrão.
Recomendação: 0
Descrição: Este parâmetro controla quando o Windows 2000 realiza uma descoberta de roteador através da RFC 1256 em suas interfaces. Veja também SolicitationAddressBcast.

EnableICMPRedirects
Chave: Tcpip\Parameters
Tipo de Valor: REG_DWORD
Valores válidos: 0, 1 (Falso, Verdadeiro)
Padrão: 1 (Verdadeiro)
Recomendação: 0 (Falso)
Descrição: Este parâmetro controla quando o Windows 2000 irá alterar a tabela de roteamento em resposta a mensagens de redirecionamento ICMP que são enviadas por dispositivos de rede como roteadores.

Referências (em inglês)

Comandos de endereçamento IP em Cisco (inglês)

Filtros de rede: Defendendo-se de ataques de negação de serviços que utilizam falsificação de endereços de origem (Spoofing)

As últimas em ataques de negação de serviço: Descrição e informações para minimizar ataques do tipo "Smurfing"

A ferramenta de negação de serviços distribuído "stacheldraht"

CERT® Advisory CA-2000-01 - Desenvolvimento de Negação de Serviço