O que é um ataque DDoS?

Publicado a Atualizado a 5 min de leitura

Como decorre um ataque DDoS, que tipos existem e porque é que a defesa pertence à rede à frente do servidor. Com casos de ataque reais retirados da operação.

Um ataque DDoS (Distributed Denial of Service) inunda um servidor, um site ou uma rede inteira com tantos pedidos que os utilizadores legítimos deixam de conseguir passar. Chama-se distribuído porque não parte de uma única máquina, mas de centenas a centenas de milhares de aparelhos comprometidos ao mesmo tempo, aquilo a que se chama uma botnet.

Como decorre um ataque DDoS

No início está a botnet. Os atacantes infetam computadores alheios, routers, câmaras ou servidores mal protegidos com software malicioso e passam depois a controlá-los remotamente a partir de um ponto central. Os proprietários, na maioria dos casos, não dão por nada. Sob comando, todos estes aparelhos enviam pedidos em simultâneo para o mesmo alvo.

O efeito surge no ponto mais fraco: ou a conectividade fica saturada, ou o CPU e a memória do sistema visado ficam ocupados a responder aos pedidos. Em qualquer dos casos, o serviço deixa de estar acessível aos utilizadores reais. É precisamente por isso que as regras de firewall no servidor chegam muitas vezes tarde demais: só se tornam eficazes quando os pacotes já passaram pela linha.

Tipos de ataque habituais

  • Ataques volumétricos: UDP floods e padrões semelhantes, que se limitam a saturar a largura de banda. A medição faz-se em Gbit/s.
  • Ataques ao protocolo: SYN floods e state exhaustion, que enchem as tabelas de ligações de servidores, firewalls e load balancers. A medição faz-se em pacotes por segundo.
  • Ataques ao nível da aplicação (Layer 7): HTTP floods, pesquisas dispendiosas, floods de início de sessão. Consomem pouca largura de banda e assemelham-se bastante a tráfego legítimo.
  • Exploits específicos de jogos: Nullping, QuietException ou floods de handshake falso contra gameservers, que abusam do estabelecimento da ligação em vez de encherem a linha.

O que é um ataque de amplificação?

Num ataque de amplificação, o atacante usa serviços alheios acessíveis publicamente como amplificadores. Envia pequenos pedidos a servidores DNS, NTP ou Memcached abertos e inscreve neles o endereço IP da vítima como remetente. As respostas são várias vezes maiores do que os pedidos e seguem todas para a vítima.

Poucos megabits de tráfego de ataque transformam-se assim rapidamente em centenas de gigabits. Para o atacante sai barato, para o alvo é devastador, e o verdadeiro remetente permanece oculto.

Porque é que os endereços IP falsificados funcionam tão bem?

No IP spoofing, o atacante coloca nos pacotes um endereço de remetente falso. Isso tem dois efeitos. Primeiro, a origem deixa de poder ser bloqueada de forma simples, porque cada pedido parece vir de um endereço diferente e inventado. Segundo, o spoofing é a condição indispensável para os ataques de amplificação, porque de outro modo as respostas dos serviços abusados nunca chegariam à vítima.

Contra tráfego falsificado, as listas de bloqueio não servem de nada. É precisa uma filtragem que avalie o comportamento do tráfego e descarte os pacotes falsificados antes de chegarem ao alvo.

Porque é que é logo o meu servidor a ser atacado?

Os motivos raramente são técnicos. Na prática, vemos sobretudo estes padrões:

  • Concorrência: outra rede de gaming, outra loja ou outro servidor Discord quer os seus utilizadores.
  • Vingança: um jogador banido, um funcionário despedido ou um cliente irritado.
  • Extorsão: um ataque curto como aviso, acompanhado de um pedido de resgate.
  • Vandalismo: os serviços de ataque alugam-se por poucos euros, e a barreira psicológica é igualmente baixa.

Para a defesa, o motivo é irrelevante. Decisivo é que a proteção esteja permanentemente ativa e não tenha de ser encomendada ou ligada quando o ataque já está a decorrer.

O que ajuda mesmo contra ataques DDoS?

Uma proteção eficaz fica na rede à frente do servidor, não no servidor. Para isso, a KernelHost opera uma proteção permanente em dois níveis: a capacidade global de filtragem é de 17 Tbps e trava os ataques volumétricos perto da sua origem. Mesmo à frente do servidor, em Frankfurt, trabalha a filtragem Arbor em tempo real com 3,2 Tbps, que remove pacote a pacote os padrões complexos e específicos de cada protocolo.

Um ponto importante: não se recorre a null-routing. Com null-routing, o IP atacado seria retirado por completo da rede, o servidor ficaria offline e o atacante teria alcançado o seu objetivo. Em vez disso, o IP continua acessível e apenas os pacotes maliciosos desaparecem. A proteção está incluída em todos os pacotes de servidor: os tarifários Standard indicam 3,2 Tbps e os tarifários Professional 17 Tbps.

Como complemento, continuam a fazer sentido o monitoring, software atualizado, portas abertas com parcimónia e rate limits na aplicação. Encontra uma visão geral passo a passo no artigo Proteger o servidor contra ataques DDoS. Como isto se traduz em concreto nos servidores de jogos e de voz, mostra-o o artigo Proteção DDoS para gameservers em tempo real.

Casos práticos: ataques realmente travados

Os ataques seguintes atingiram servidores de clientes da KernelHost e foram integralmente filtrados em tempo real, sempre sem qualquer falha de serviço. As capturas de ecrã provêm do monitoring em direto da mitigação.

Servidor de voz TeamSpeak 3, porta 9987 UDP

Ataque complexo com vários padrões de ataque em simultâneo, acima de 473,4 Gbit/s e acima de 41,5 milhões de pacotes por segundo. Filtrado em tempo real, sem downtime.

Mitigação DDoS da KernelHost: servidor de voz TeamSpeak na porta 9987 UDP, mais de 473 Gbit/s filtrados em tempo real

Gameserver ARK, porta 7777 UDP

UDP flood simples, sem estrutura complexa, mas com mais de 112,2 Gbit/s e mais de 8,7 milhões de pacotes por segundo. Filtrado em tempo real, sem downtime.

Mitigação DDoS da KernelHost: gameserver ARK na porta 7777 UDP, UDP flood de mais de 112 Gbit/s filtrado em tempo real

Ataque all-port, portas 0-65535 TCP/UDP

Mais de 12 padrões de ataque principais diferentes contra todas as portas em simultâneo, no total mais de 21,3 Gbit/s e mais de 3,9 milhões de pacotes por segundo. Integralmente filtrado em tempo real.

Mitigação DDoS da KernelHost: ataque all-port complexo sobre todas as portas 0-65535 filtrado em tempo real

Minecraft e OpenVPN, portas 25565 TCP e 1194 UDP

Ataque combinado com mais de 16 padrões de ataque principais diferentes, mais de 4 milhões de pacotes por segundo e mais de 8,6 Gbit/s. Ambos os serviços permaneceram acessíveis de forma contínua.

Mitigação DDoS da KernelHost: servidor Minecraft na porta 25565 TCP e OpenVPN em 1194 UDP filtrados em tempo real

Perguntas frequentes

O que significa DDoS exatamente?
DDoS significa Distributed Denial of Service. Muitos aparelhos comprometidos enviam pedidos em simultâneo para um alvo, até a linha ou os recursos do servidor ficarem esgotados e os utilizadores reais deixarem de conseguir passar.
Qual é a diferença entre DoS e DDoS?
Um ataque DoS parte de uma única origem e bloqueia-se com relativa facilidade. Um ataque DDoS distribui-se por muitas origens ao mesmo tempo, razão pela qual o simples bloqueio deixa de funcionar.
O que é um ataque de amplificação?
O atacante envia pequenos pedidos com endereço de remetente falsificado a serviços abertos como DNS ou NTP. As respostas destes, bastante maiores, seguem para a vítima, pelo que um volume pequeno de tráfego de ataque se transforma num volume enorme.
Porque é que uma firewall no servidor não chega?
Só atua quando os pacotes já passaram pela linha. Se a conectividade estiver saturada, nenhuma regra local ajuda. A filtragem tem de acontecer na rede, à frente do servidor.
Porque é que é logo o meu servidor a ser atacado?
Na maioria dos casos por concorrência, vingança, extorsão ou simples vandalismo. Os serviços de ataque alugam-se por poucos euros, por isso também atingem projetos pequenos.

Ataque DDoS O que é DDoS Botnet Ataque de amplificação IP spoofing Proteção DDoS Ataque Layer 7