Prevenção de DoS
Categories:
Prevenção de DDoS
Dois tipos de ataques DoS:
- Fazer o serviço falhar
- Congestionar a rede
Tipos de Ataques
| Tipo de Ataque | Forma de Ataque | Forma de Resposta |
|---|---|---|
| Distributed DoS | Várias máquinas com IPs independentes atacam simultaneamente | 1. Reduzir serviços 2. Lista negra 3. Desligar dispositivos de rede |
| Ataque Yo-yo | Para serviços com capacidade de expansão automática, ataque nos intervalos de redução de recursos | Lista negra |
| Ataques de Camada de Aplicação | Ataque direcionado a funções ou características específicas, Ataque LAND pertence a este tipo | Lista negra |
| LANS | Este método de ataque usa pacotes TCP SYN especialmente construídos (geralmente usados para iniciar uma nova conexão), fazendo a máquina-alvo abrir uma conexão vazia onde o endereço de origem e destino são ambos o próprio endereço IP, continuamente respondendo a si mesma, consumindo recursos do sistema até o colapso. Esse método de ataque difere do ataque de inundação SYN. | Lista negra |
| DoS avançado e persistente | Contra-espionagem/alvo definido/fugir de contramedidas/ataque de longa duração/alta capacidade computacional/ataque multithread | Reduzir serviços |
| Ataque HTTP slow POST | Cria conexões legítimas, depois envia grandes volumes de dados extremamente lentamente, causando esgotamento de recursos do servidor | Reduzir serviços |
| Ataque Challenge Collapsar (CC) | Envia solicitações legítimas padrão frequentemente, que consomem mais recursos, por exemplo, buscadores de sites que consomem muita memória | Reduzir serviços, reconhecimento de conteúdo |
| Inundação ICMP (Internet Control Message Protocol) | Muitos pacotes ping/erro ping /Ping of death (pacotes ping malformados) | Reduzir serviços |
| Ataques de negação de serviço permanente | Ataque a hardware | Reconhecimento de conteúdo |
| Ataque refletido | Envia solicitações a terceiros, falsificando endereços para redirecionar respostas ao verdadeiro alvo | Escopo de ddos |
| Amplificação | Usa alguns serviços como refletores para ampliar tráfego | Escopo de ddos |
| Mirai botnet | Usa dispositivos IoT controlados | Escopo de ddos |
| Ataque SACK Panic | Opera no tamanho máximo de segmento e reconhecimento seletivo, causando retransmissão | Reconhecimento de conteúdo |
| Ataque Shrew | Explora vulnerabilidades no mecanismo de timeout de retransmissão TCP, usando rajadas sincronizadas breves para interromper conexões TCP na mesma rota | Descarte de timeout |
| Ataque de leitura lenta | Similar ao slow post, envia solicitações legítimas, mas lê muito lentamente, para esgotar o pool de conexões, anunciando um número muito pequeno para o tamanho da janela de recebimento TCP | Desconexão por timeout, redução de serviços, lista negra |
| Inundação SYN | Envia grandes volumes de pacotes TCP/SYN, causando conexões semiabertas no servidor | Mecanismo de timeout |
| Ataques Teardrop | Envia fragmentos IP corrompidos com sobrecarga e carga útil excessiva ao alvo | Reconhecimento de conteúdo |
| Ataque TTL expirado | Quando pacotes são descartados devido à expiração do TTL, o CPU do roteador deve gerar e enviar respostas ICMP de timeout. Gerar muitas dessas respostas sobrecarrega o CPU do roteador | Descarte de tráfego |
| Ataque UPnP | Baseado em tecnologia de amplificação DNS, mas o mecanismo de ataque é um roteador UPnP que encaminha solicitações de uma fonte externa para outra, ignorando as regras de comportamento UPnP | Redução de serviços |
| Ataque de reflexão SSDP | Muitos dispositivos, incluindo alguns roteadores residenciais, têm vulnerabilidades em seu software UPnP que atacantes podem explorar para obter respostas para endereços-alvo de sua escolha da porta 1900. | Redução de serviços, bloqueio de porta |
| Engano ARP | Associa endereços MAC ao endereço IP de outro computador ou gateway (como um roteador), fazendo com que o tráfego destinado originalmente ao IP real seja redirecionado ao atacante, causando negação de serviço. | Escopo de ddos |
Medidas de Prevenção
- Identificar tráfego de ataque
- Destruição de serviço
- Reconhecer conteúdo de tráfego
- Congestionamento de serviço
- Registrar horários de acesso
- Destruição de serviço
- Tratar tráfego de ataque
- Descartar tráfego de ataque
- Bloquear IP de ataque
- IPs IPv4 são limitados, fácil de criar lista negra
- IPv6 tem grande quantidade, difícil de criar lista negra. Pode usar faixas de endereço IPv6, mas há risco de bloqueio incorreto
- Controlar frequência de acesso
Ferramentas Open Source
Ferramentas de Ataque
https://github.com/palahsu/DDoS-Ripper- 162 forks, 755 estrelas
- https://github.com/MHProDev/MHDDoS
- 539 forks, 2,2k estrelas
- MHDDoS - Script de Ataque DDoS com 40 Métodos
- https://github.com/NewEraCracker/LOIC
- 539 forks, 1,9k estrelas
- C#
- Ferramenta de estresse de rede
- https://github.com/PraneethKarnena/DDoS-Scripts
- 165 forks, 192 estrelas
- C, Python
- https://github.com/theodorecooper/awesome-ddos-tools
- 46 estrelas
- Coleção de ferramentas ddos
Ferramentas de Defesa
- https://github.com/AltraMayor/gatekeeper
- Licença GPL-3.0
- 159 forks, 737 estrelas
- C, Lua
- Gatekeeper é o primeiro sistema open source de proteção contra DoS.
https://github.com/Exa-Networks/exabgp- Licença tipo Apache
- 415 forks, 1,8k estrelas
- Python
- A faca suíça BGP de redes
- https://github.com/curiefense/curiefense
- Licença Apache 2.0
- 60 forks, 386 estrelas
- Proteção na camada de aplicação
- protege sites, serviços e APIs
- https://github.com/qssec/Hades-lite
- Licença GPL-3.0
- 24 forks, 72 estrelas
- C
- Programa de driver anti-ddos de nível kernel
- https://github.com/snort3/snort3
- Licença GPL-2.0
- 372 forks, 1,4k estrelas
- Sistema IPS (Intrusion Prevention System) Snort de próxima geração
- C++
Monitoramento de Tráfego
- https://github.com/netdata/netdata
- Licença GPL-3.0
- 5,2k forks, 58,3k estrelas
- C
- https://github.com/giampaolo/psutil
- Licença BSD-3-Clause
- 1,2 forks, 8,2k estrelas
- Python, C
- Lib cross-platform para monitoramento de processos e sistemas em Python, também monitoramento de rede
- https://github.com/iptraf-ng/iptraf-ng
- Licença GPL-2.0
- 22 forks, 119 estrelas
- C
- IPTraf-ng é um programa de monitoramento de rede baseado em console para Linux que exibe informações sobre tráfego IP.