Ataques DDoS de reflaxão
Recentemente, a equipe de Engenharia e Segurança da UPX identificou que instituições financeiras e diversos ISPs (provedores de internet) foram alvo de ataques que usaram um método pouco comum, chamado reflexão SYN-ACK. Os ataques geraram debates entre diversas organizações, incluindo a UPX. Neste artigo, vamos falar sobre esse tipo de ataque e compartilhar algumas observações e preocupações.
Entendendo o SYN-ACK
Quando dois hosts em uma rede querem trocar dados usando TCP (Transmission Control Protocol), eles primeiro precisam estabelecer uma conexão e utilizam o “handshake de três vias” para realizar este processo que envolve três passos principais:
- SYN: o cliente envia um pacote SYN (sincronização) ao servidor para iniciar uma nova conexão.
- SYN-ACK: o servidor responde com um pacote SYN-ACK (sincronização e reconhecimento), indicando que recebeu o SYN do cliente e está pronto para continuar a conexão.
- ACK: o cliente envia um pacote ACK (reconhecimento) de volta ao servidor, confirmando a recepção do SYN-ACK e completando a conexão.
Fluxo comum do three-way-handshake
Papel do Pacote SYN-ACK no estabelecimento de conexões
O pacote SYN-ACK desempenha um papel crucial no estabelecimento de uma conexão TCP, sinalizando que o servidor está pronto para receber dados do cliente. Este pacote é essencial para a comunicação bidirecional entre cliente e servidor, garantindo que ambos estejam sincronizados antes da transmissão de dados.
Por que o SYN-ACK é explorado em ataques de reflexão
O protocolo TCP foi criado para lidar com redes pouco confiáveis e a sinalização SYN-ACK pode ser explorada em ataques de reflexão devido à natureza de sua resposta. Quando um servidor recebe um pacote SYN, ele responde com um pacote SYN-ACK, enviando-o ao endereço IP de origem especificado no pacote SYN. Se o endereço IP de origem for falsificado (spoofed) para o endereço IP da vítima, o servidor enviará o pacote SYN-ACK para a vítima, gerando tráfego de ataque. Como servidores legítimos estão respondendo com pacotes SYN-ACK, o tráfego parece legítimo, tornando difícil a detecção e a mitigação do ataque.
Fluxo dos pacotes spoofados durante o ataque de reflexão
Nos ataques SYN-ACK, o tamanho dos pacotes recebidos é praticamente igual ao dos enviados pelo atacante, podendo ser ligeiramente maior devido a alterações feitas pelos roteadores na rede, como a inclusão da opção MSS (Maximum Segment Size) do TCP, que adiciona 4 bytes a cada pacote.
Isso não significa que esse tipo de ataque não seja uma ameaça. Em diversos ataques coordenados contra clientes da UPX, a equipe de Engenharia e Segurança identificou inundações de pacotes por segundo (PPS) que utilizaram tráfego SYN-ACK refletido. Mesmo que esse tipo de tráfego não ocupe muita largura de banda, a alta quantidade de PPS pode sobrecarregar os equipamentos de rede, dificultando o processamento e direcionamento dos SYN-ACKs.
Os atacantes que usam SYN-ACK contam com as configurações TCP dos sistemas que estão usando como refletores, assim como a forma com que esses sistemas gerenciam suas conexões TCP. Isso acaba limitando o tipo de tráfego que os atacantes podem enviar para a vítima.
Impactos de um ataque DDoS de reflexão com SYN-ACK
Dificuldade na identificação
Uma das maiores dificuldades em identificar um ataque DDoS de reflexão com SYN-ACK é que os pacotes de ataque são respostas legítimas de servidores válidos. Isso complica a distinção entre tráfego legítimo e malicioso, tornando mais difícil a detecção e a mitigação do ataque.
Efeitos sobre a infraestrutura de rede da vítima
O aumento repentino e massivo de tráfego de pacotes SYN-ACK pode saturar a largura de banda disponível da vítima, consumir recursos de CPU e memória e, eventualmente, levar ao colapso do serviço ou rede alvo. Isso pode resultar em interrupções no serviço, perda de dados e degradação geral do desempenho da rede.
Amplificação de SYN-ACK
Ataques SYN-ACK podem ser amplificados focando em IPs alocados, mas não utilizados. Isso significa que o IP está disponível, mas sem máquinas ativas para gerenciar o tráfego. Utilizando esses IPs. os atacantes maximizam o uso da retransmissão TCP, o que eleva a amplificação e o uso de banda larga.
Caso uma máquina comum receba um SYN-ACK inesperado, ela responde com um pacote RST. Esse pacote é recebido pelo refletor, encerrando a sessão TCP. Porém, quando o IP alvo não está em uso, não há resposta de RST, fazendo com que o refletor continue a tentar estabelecer a conexão, reenviando pacotes SYN-ACK. Esse comportamento pode ser repetido várias vezes, gerando tráfego desnecessário e sobrecarga na rede.
Tcpdump: um pacote SYN resulta em 3 pacotes SYN-ACKs seguido de um pacote RST
Wireshark: um pacote SYN resulta em 3 pacotes SYN-ACKs seguido de um pacote RST
Além disso, se muitos IPs inativos são usados como parte do ataque, a amplificação torna-se significativa.
Quando o envio de um SYN-ACK é destinado para um IP que está livre. O pacote passará pelos equipamentos de rede, mas nunca chegará a um computador que responderia com um RST. Sem receber o RST, o sistema que enviou o SYN-ACK vai presumir que houve falha na entrega e tentará enviar novamente.
Tcpdump: um pacote SYN resultou em 6 pacotes SYN-ACKs
Wireshark: um pacote SYN resultou em 6 pacotes SYN-ACKs
Durante os testes realizados pela equipe de Engenharia e Segurança da UPX, foi observado que são feitas entre 3 e 7 tentativas de reenvio do SYN-ACK para cada SYN recebido. Caso um atacante envie um SYN de 40 bytes, a vítima pode receber de 3 a 7 SYN-ACKs de 44 bytes. Analisando um cenário mais negativo, em que a vítima recebe 7 pacotes, uma solicitação de 40 bytes pode gerar 308 bytes de tráfego indesejado na rede, ampliando o ataque em 670%. Além disso, se o atacante usar opções de cabeçalho TCP para criar SYN-ACKs maiores, o tráfego pode aumentar para 420 bytes, elevando o fator de amplificação para 950%.
Técnicas de mitigação e prevenção
Os ataques de reflexão TCP SYN-ACK representam uma ameaça séria, aproveitando vulnerabilidades em diferentes pontos da infraestrutura de redes para amplificar o tráfego malicioso. A mitigação eficaz exige uma abordagem coordenada entre redes de origem utilizadas pelo atacante, redes que refletem o ataque e a rede do alvo.
ORIGEM: implementação do BCP 38 impedindo que seja originado requisições contendo IPs spoofados; Certificar que o acesso aos roteadores de borda esteja restrito e que não esteja executando código malicioso que poderia burlar o mecanismo implementado pelo BCP 38.
REFLETE: bastante desafiador ; técnicas SYN cookie; uso de firewalls stateful; rate-limit por origem;
ALVO: anti-ddos, syn-cookie
Na origem, a implementação do BCP 38, aliada a controles rígidos nos roteadores de borda e monitoramento de tráfego em tempo real, é crucial para impedir o envio de pacotes com IPs falsificados. No entanto, esse é apenas o primeiro passo. As redes que atuam como vetores de reflexão precisam adotar SYN cookies e firewalls stateful para reduzir a capacidade de serem usadas como amplificadores, embora essas medidas apresentam desafios significativos.
Desafios na implementação de firewalls e SYN cookies:
- Custos: A adoção de firewalls de alta performance e soluções de mitigação pode ser financeiramente onerosa, especialmente para redes de grande porte. Esses dispositivos precisam ser escaláveis o suficiente para lidar com volumes crescentes de tráfego.
- Capacidade e volumetria: Firewalls e soluções SYN cookie devem ser capazes de processar grandes quantidades de pacotes por segundo (PPS). Em ataques DDoS de alta volumetria, a capacidade desses dispositivos pode ser rapidamente sobrecarregada, levando à degradação da performance ou até falhas temporárias no processamento de tráfego legítimo.
- Limitações de sessões TCP: Tanto firewalls quanto SYN cookies têm limites na quantidade de sessões TCP que conseguem gerenciar simultaneamente. Em ataques massivos, a quantidade de sessões TCP abertas pode exceder a capacidade desses dispositivos, criando gargalos e impactando diretamente a disponibilidade da rede.
- Manutenção de estado: Firewalls stateful precisam manter informações sobre cada conexão ativa, o que aumenta a complexidade de gerenciar milhares ou milhões de sessões simultâneas em redes de grande porte. Isso pode gerar latência adicional e criar pontos de falha em situações de alto tráfego.
Para as redes que são os alvos finais desse tipo de ataque, contar com ferramentas e serviços especializados em mitigação de DDoS que tenham a expertise em proteger contra ataques do tipo SYN-ACK pode fazer uma grande diferença, pois caso essa mitigação não seja realizada de maneira correta, existe o risco da “super mitigação” que pode causar problemas de conexão, desempenho lento e até bloqueio de usuários legítimos. A segmentação de serviços críticos também pode minimizar o impacto de um ataque, garantindo maior resiliência.
Em resumo, a defesa contra ataques DDoS de reflexão TCP SYN-ACK exige uma abordagem multi-camadas que depende da colaboração em diferentes segmentos da infraestrutura. No entanto, desafios relacionados a custos, capacidade de processamento, volumetria de pacotes e manutenção de sessões TCP devem ser levados em conta para que as soluções de mitigação sejam eficazes. A conscientização contínua e a adoção de medidas de segurança adequadas são fundamentais para reduzir os impactos e garantir a disponibilidade dos serviços.
Os ataques DDoS de reflexão com SYN-ACK representam uma ameaça significativa para a estabilidade e a segurança das redes modernas. A evolução contínua das técnicas de ataque exige uma abordagem proativa e adaptativa para defesa. Implementar as melhores práticas de segurança, utilizar ferramentas especializadas e manter-se atualizado com as últimas tendências de segurança cibernética são passos essenciais para proteger as redes contra essas ameaças. A conscientização e a educação contínua sobre segurança cibernética são fundamentais para mitigar os riscos e garantir a resiliência contra ataques futuros.