Ataques do Firewall DoS
A proteção contra ataques do DoS aproveita a inspeção stateful para procurar e depois permitir ou negar todas as tentativas de conexão que exijam atravessar uma interface a caminho de e para o destino pretendido, Para obter mais informações, veja os seguintes tópicos:
Entenda os ataques de inundação na tabela de sessão
Um ataque bem-sucedido do DoS sobrecarrega sua vítima com uma barragem tão massiva de tráfego falso simulado que se torna incapaz de processar solicitações de conexão legítimas. Os ataques do DoS podem tomar muitas formas — inundação SYN, inundação SYN-ACK-ACK, inundação de UDP, inundação de ICMP e assim por diante — mas todos eles buscam o mesmo objetivo, que é preencher a tabela de sessão da vítima.
Quando a tabela da sessão está cheia, esse host não pode criar novas sessões e começa a rejeitar novas solicitações de conexão. A sessão baseada na origem limita a opção de tela e a opção de tela limite de sessão baseada em destino ajudam a mitigar esses ataques.
Entendendo os limites de sessão baseados na origem
Além de limitar o número de sessões simultâneas do mesmo endereço IP de origem, você também pode limitar o número de sessões simultâneas ao mesmo endereço IP de destino. Um benefício de definir um limite de sessão baseado na origem é que ele pode conter um ataque como o vírus Nimda (que na verdade é um vírus e um worm) que infecta um servidor e depois começa a gerar enormes quantidades de tráfego a partir desse servidor. Como todo o tráfego gerado por vírus se origina do mesmo endereço IP, um limite de sessão baseado na origem garante que o firewall possa conter quantidades excessivas de tráfego. Veja a Figura 1.

Outro benefício do limite de sessão baseado na origem é que ele pode mitigar as tentativas de preencher a tabela de sessão do firewall se todas as tentativas de conexão se originarem do mesmo endereço IP de origem.
Determinar o que constitui um número aceitável de solicitações de conexão requer um período de observação e análise para estabelecer uma linha de base para fluxos de tráfego típicos. Você também precisa considerar o número máximo de sessões simultâneas necessárias para preencher a tabela de sessão da plataforma específica da Juniper Networks que você está usando. Para ver o número máximo de sessões que sua tabela de sessão oferece suporte, use o comando show security flow session summary
CLI e, em seguida, analise a última linha na saída, que lista o número de sessões atuais (alocadas), o número máximo de sessões e o número de alocações de sessão reprovadas:
userhost# show security flow session summary Unicast-sessions: 0 Multicast-sessions: 0 Failed-sessions: 0 Sessions-in-use: 0 Valid sessions: 0 Pending sessions: 0 Invalidated sessions: 0 Sessions in other states: 0 Maximum-sessions: 2097152
O máximo padrão para limites de sessão baseados na origem são 128 sessões simultâneas, um valor que pode precisar de ajustes para atender às necessidades do seu ambiente de rede e da plataforma.
O Junos OS oferece suporte a limites de sessão baseados na fonte para tráfego IPv4 e IPv6.
Exemplo: definir limites de sessão baseados na origem
Este exemplo mostra como limitar a quantidade de sessões com base no IP de origem.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar esse recurso.
Visão geral
O exemplo a seguir mostra como limitar o número de sessões que qualquer servidor na DMZ e na zona pode iniciar. Como a DMZ contém apenas webservers, nenhum dos quais deve iniciar o tráfego, você define o limite da sessão de origem no menor valor possível, que é uma sessão. Por outro lado, a zona a contém computadores pessoais, servidores, impressoras e assim por diante, muitos dos quais iniciam o tráfego. Para a zona A, você define o limite da sessão de origem para um máximo de 80 sessões simultâneas.
Topologia
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set security screen ids-option 1-limit-session limit-session source-ip-based 1 set security zones security-zone dmz screen 1-limit-session set security screen ids-option 80-limit-session limit-session source-ip-based 80 set security zones security-zone zone_a screen 80-limit-session
Procedimento passo a passo
Especifique o número de sessões simultâneas com base em IP de origem para a zona DMZ.
[edit security] user@host# set screen ids-option 1-limit-session limit-session source-ip-based 1
Definir a zona de segurança para a DMZ até o limite de configuração.
[edit security] user@host# set zones security-zone dmz screen 1-limit-session
Especifique o número de sessões simultâneas com base no IP de origem para a zona uma zona.
[edit security] user@host# set screen ids-option 80-limit-session limit-session source-ip-based 80
Defina a zona de segurança para a zona até o limite de configuração.
[edit security] user@host# set zones security-zone zone_a screen 80-limit-session
Resultados
A partir do modo de configuração, confirme sua configuração inserindo os show security screen
comandos e show security zones
os comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show security screen ids-option 1-limit-session { limit-session { source-ip-based 1; } } ids-option 80-limit-session { limit-session { source-ip-based 80; } }
[edit] user@host# show security zones security-zone dmz { screen 1-limit-session; } security-zone zone_a { screen 80-limit-session; }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Verificação dos limites de sessão baseados na origem
Propósito
Verifique os limites de sessão baseados na origem.
Ação
Insira o show security screen ids-option 1-limit-session
, show security screen ids-option 80-limit-session
e show security zones
comandos do modo operacional.
user@host> show security screen ids-option 1-limit-session Screen object status: Name Value Session source limit threshold 1 user@host> show security screen ids-option 80-limit-session Screen object status: Name Value Session source limit threshold 80 user@host> show security zones Security zone: dmz Send reset for non-SYN session TCP packets: Off Policy configurable: Yes Screen: 1-limit-session Interfaces bound: 0 Interfaces:
Significado
A saída de amostra mostra os valores de limite de sessão de origem para zona DMZ e zona A.
Entendendo os limites de sessão baseados em destino
Além de limitar o número de sessões simultâneas do mesmo endereço IP de origem, você também pode limitar o número de sessões simultâneas ao mesmo endereço IP de destino. Um invasor wily pode lançar um ataque de negação de serviço distribuído (DDoS). Em um ataque DDoS, o tráfego malicioso pode vir de centenas de hosts, conhecidos como "agentes zumbis", que estão sub-repticiamente sob o controle de um invasor. Além das opções de detecção e prevenção de inundações SYN, UDP e ICMP, definir um limite de sessão baseado em destino pode garantir que o Junos OS permita apenas um número aceitável de solicitações de conexão simultâneas — não importa qual seja a fonte — para alcançar qualquer host. Veja a Figura 2.

O máximo padrão para limites de sessão baseados em destino são 128 sessões simultâneas, um valor que pode precisar de ajustes para atender às necessidades do seu ambiente de rede e da plataforma.
Exemplo: definir limites de sessão baseados em destino
Este exemplo mostra como definir os limites de sessão baseados em destino.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar esse recurso.
Visão geral
Neste exemplo, você limita a quantidade de tráfego a um webserver em 1,2,2,5. O servidor está na DMZ. O exemplo pressupõe que, após observar o fluxo de tráfego da zona externa para este servidor por um mês, você determinou que o número médio de sessões simultâneas que ele recebe é de 2000. Além disso, você define o novo limite de sessão em 2000 sessões simultâneas. Embora os picos de tráfego possam às vezes exceder esse limite, o exemplo pressupõe que você está optando pela segurança do firewall em vez de uma inacessibilidade ocasional do servidor.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit modo de configuração.
set security screen ids-option 2000-limit-session limit-session destination-ip-based 2000 set security zones security-zone external_zone screen 2000-limit-session
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para definir os limites de sessão baseados no destino:
Especifique o número de sessões simultâneas.
[edit] user@host# set security screen ids-option 2000-limit-session limit-session destination-ip-based 2000
Definir a zona de segurança para a zona externa.
[edit] user@host# set security zones security-zone external_zone screen 2000-limit-session
Resultados
A partir do modo de configuração, confirme sua configuração inserindo os show security screen
comandos e show security zones
os comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show security screen ids-option 2000-limit-session { limit-session { destination-ip-based 2000; } }
[edit] user@host# show security zones security-zone external_zone { screen 2000-limit-session; }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Verificação dos limites de sessão baseados em destino
Propósito
Verifique os limites de sessão baseados em destino.
Ação
Insira os comandos e show security zones
entre no show security screen ids-option 2000-limit-session
modo operacional.
user@host> show security screen ids-option 2000-limit-session node0: -------------------------------------------------------------------------- Screen object status: Name Value Session destination limit threshold 2000 Value user@host> show security zones Security zone: external_zone Send reset for non-SYN session TCP packets: Off Policy configurable: Yes Screen: 2000-limit-session Interfaces bound: 0 Interfaces:
Significado
A saída de amostra mostra os valores de limite de sessão de destino para zona externa.
Entenda os ataques de inundação por proxy SYN-ACK-ACK
Quando um usuário de autenticação inicia uma conexão Telnet ou FTP, o usuário envia um segmento SYN para o servidor Telnet ou FTP. O Junos OS intercepta o segmento SYN, cria uma entrada em sua tabela de sessão e oferece ao usuário um segmento SYN-ACK. Em seguida, o usuário responde com um segmento de ACK. Neste ponto, o aperto de mão inicial de três vias está completo. O Junos OS envia um prompt de login para o usuário. Se o usuário, com intenção maliciosa, não fizer login, mas continuar iniciando sessões SYN-ACK-ACK, a tabela de sessão de firewall pode preencher até o ponto em que o dispositivo começa a rejeitar solicitações de conexão legítimas.
Para evitar esse ataque, você pode habilitar a opção de tela de proteção contra proxy SYN-ACK-ACK. Após o número de conexões do mesmo endereço IP atingir o limite de proxy SYN-ACK-ACK, o Junos OS rejeita novas solicitações de conexão desse endereço IP. Por padrão, o limite é de 512 conexões de qualquer endereço IP. Você pode alterar esse limite (para qualquer número entre 1 e 250.000) para melhor atender aos requisitos do seu ambiente de rede.
O Junos OS oferece suporte à proteção de proxy SYN-ACK-ACK para endereços IPv4 e IPv6.
Protegendo sua rede contra um ataque de inundação por proxy SYN-ACK-ACK
Este exemplo mostra como proteger sua rede contra um ataque de inundação por proxy SYN-ACK-ACK.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar esse recurso.
Visão geral
Neste exemplo, você permite a proteção contra uma inundação de proxy SYN-ACK-ACK. A unidade de valor são conexões por endereço de origem. O valor padrão é de 512 conexões de qualquer endereço.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set security screen ids-option 1000-syn-ack-ack-proxy tcp syn-ack-ack-proxy threshold 1000 set security zones security-zone zone screen 1000-syn-ack-ack-proxy
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para se proteger contra um ataque de inundação por proxy SYN-ACK-ACK:
Especifique os limites da sessão de origem.
[edit] user@host# set security screen ids-option 1000-syn-ack-ack-proxy tcp syn-ack-ack-proxy threshold 1000
Defina a zona de segurança para a tela da zona.
[edit] user@host# set security zones security-zone zone screen 1000-syn-ack-ack-proxy
Resultados
A partir do modo de configuração, confirme sua configuração inserindo os show security screen
comandos e show security zones
os comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show security screen ids-option 1000-syn-ack-ack-proxy { tcp { syn-ack-ack-proxy threshold 1000; } }
[edit] user@host# show security zones security-zone zone { screen 1000-syn-ack-ack-proxy; }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Verificando o ataque de inundação por proxy SYN-ACK-ACK
Propósito
Verifique o ataque de inundação por proxy SYN-ACK-ACK.
Ação
Insira os comandos e show security zones
entre no show security screen ids-option 1000-syn-ack-ack-proxy
modo operacional.
user@host> show security screen ids-option 1000-syn-ack-ack-proxy node0: -------------------------------------------------------------------------- Screen object status: Name Value TCP SYN-ACK-ACK proxy threshold 1000 user@host> show security zones Security zone: zone Send reset for non-SYN session TCP packets: Off Policy configurable: Yes Screen: 1000-syn-ack-ack-proxy Interfaces bound: 0 Interfaces:
Significado
A saída de amostra mostra que não há ataque da inundação de proxy SYN-ACK-ACK.