Ataques de negação de serviço, conhecidos como DoS (Denial of Service) e DDoS (Distributed Denial of Service), são técnicas que visam tornar um sistema, serviço ou rede indisponível para os usuários legítimos. Esses ataques estão entre os mais frequentes na internet e causam grandes prejuízos financeiros, além de danos à reputação de empresas e organizações.
O Kali Linux, uma distribuição voltada para segurança ofensiva, traz ferramentas capazes de simular esse tipo de ataque em ambientes de teste. Nesta matéria, explicaremos os conceitos por trás de DoS e DDoS, mostraremos os tipos mais comuns, e apresentaremos exemplos práticos usando ferramentas do Kali Linux.
1. O que é um ataque DoS?
Um ataque DoS tem como objetivo sobrecarregar um sistema ou serviço até que ele pare de responder ou apresente lentidão. Isso pode ser feito de diversas formas:
Enviando um número excessivo de requisições
Explorando vulnerabilidades de software para travar o sistema
Consumindo todos os recursos de hardware (memória, CPU, largura de banda)
Exemplo prático: um servidor web que aguenta 100 conexões simultâneas começa a receber 1000 conexões por segundo de um único atacante. O servidor não consegue atender a demanda e fica lento ou fora do ar.
2. O que é um ataque DDoS?
Enquanto o DoS parte de uma única origem, o DDoS é distribuído: múltiplos dispositivos (frequentemente zumbis de uma botnet) atacam simultaneamente o mesmo alvo. Isso torna o ataque mais difícil de mitigar, pois o tráfego parece vir de diversos IPs diferentes, espalhados pelo mundo.
Exemplo prático: milhares de computadores infectados começam a acessar o mesmo site ao mesmo tempo, como se fossem visitantes normais. O servidor colapsa com o excesso de requisições.
3. Tipos comuns de ataques DoS/DDoS
SYN Flood: o atacante envia um número elevado de pacotes SYN (abertura de conexão TCP), sem completar o handshake, fazendo o servidor esgotar seus recursos.
UDP Flood: o atacante envia pacotes UDP aleatórios para portas abertas ou fechadas, causando sobrecarga.
HTTP Flood: o atacante simula requisições HTTP legítimas, mas em grande volume, sobrecarregando o servidor web.
Ping of Death: pacotes ICMP malformados ou excessivamente grandes são enviados, podendo travar o alvo.
Slowloris: envia cabeçalhos HTTP incompletos lentamente para manter conexões abertas indefinidamente.
4. Ferramentas de DoS no Kali Linux
O Kali Linux traz algumas ferramentas que podem ser utilizadas para simular ou testar ataques de negação de serviço em ambientes controlados. Algumas delas:
Hping3
Slowloris
GoldenEye
LOIC (Low Orbit Ion Cannon) – precisa ser instalado
Xerxes – pode ser compilado a partir do código-fonte
Vamos agora a exemplos práticos com algumas dessas ferramentas.
5. Exemplo prático com Hping3: simulação de SYN Flood
Hping3 é uma ferramenta para gerar pacotes TCP/IP customizados. Pode ser usada para testar firewall, traceroute e simular ataques.
Com o alvo em 192.168.0.100, você pode simular um ataque SYN flood com o seguinte comando:
hping3 -S --flood -V -p 80 192.168.0.100
Explicando:
-S envia pacotes com o flag SYN
--flood envia pacotes o mais rápido possível
-V ativa o modo verboso
-p 80 define a porta de destino (neste caso, HTTP)
Este comando tenta abrir milhares de conexões TCP na porta 80, sem completá-las, o que pode esgotar os recursos do servidor.
6. Exemplo prático com Slowloris
O Slowloris é um script em Python que tenta derrubar servidores web mantendo conexões abertas com cabeçalhos HTTP incompletos.
Depois de instalar o script slowloris.py, você pode rodá-lo assim:
python3 slowloris.py 192.168.0.100 -p 80 -s 200
Explicando:
192.168.0.100 é o IP do alvo
-p 80 define a porta do serviço HTTP
-s 200 define o número de conexões simultâneas
O ataque envia cabeçalhos HTTP em partes, lentamente, fazendo o servidor manter as conexões abertas até esgotar seus recursos.
7. Exemplo prático com GoldenEye
GoldenEye é outra ferramenta em Python que simula requisições HTTP massivas para servidores web.
Você pode executar:
python3 goldeneye.py http://192.168.0.100 -w 100 -s 50
Explicando:
-w 100 define o número de workers (threads)
-s 50 define o número de conexões simultâneas por thread
Esse ataque é útil para testes em servidores web, simulando uma avalanche de tráfego legítimo.
8. Consequências e riscos legais
Ataques DoS e DDoS são crimes previstos por lei. No Brasil, o artigo 266 do Código Penal trata da interrupção ou perturbação de serviços telemáticos, com penas que podem ultrapassar 3 anos de prisão. Mesmo que você esteja “apenas testando”, se o alvo não tiver autorizado explicitamente, você poderá responder por danos civis e criminais.
9. Como se defender de DoS e DDoS
Firewalls e filtros de pacotes: rejeitam tráfego suspeito antes de alcançar o servidor.
Rate limiting: limita o número de requisições por IP ou sessão.
Serviços de mitigação: como Cloudflare, Akamai ou AWS Shield, que distribuem o tráfego e bloqueiam padrões maliciosos.
Redundância de servidores: espalha a carga entre múltiplos sistemas.
Análise e monitoramento: detecção precoce de tráfego anormal é essencial para resposta rápida.