Entendendo os ataques DDoS e DRDos

  • Post author:
  • Post category:Sem categoria

Hoje em dia ? muito comum vermos e ouvirmos termos do tipo ataques DDos DRDos mais a final oque significa isso ?
No artigo a seguir tentei resumir ao m?ximo dando uma id?ia de cada tipo e com exmplos:

DDos ( Distributed Denial of Service )
Esse ataque consiste em “inundar” a rede da v?tima com uma grande quantidade de pacotes e indisponibilizar o link.
O ataque ? originado de diversos pontos, os quais ir?o multiplicar seu tr?fego contra a v?tima, por isso o termo “Dristributed”(Distribu?do).

Tecnicamente, v?rios m?todos de inunda??o s?o usados, um simples SYN Flood, por exemplo, funcionar? como modo distribu?do.
Algumas ferramentas para ataques DDos s?o:

Trinoo: Envia pacotes UDP rand?micos, sendo comandado ? partir de um ou v?rios pontos.
TFN: Tribal Flood Network: ? possiv?l como ele enviar pacotes ICMP_ECHO_REQUEST, pacotes UDP ou pacotes SYN.
Pode tamb?m enviar um outro tipo de ataque o Smurf.

Precau??es contra ataques DDoS:
1)- Use sempre sistemas de IDS como exemplo o Snort, Lids,BlackICE entre outros.

2)- Limite a quantidade de excessiva de pacotes por segundo atrav?s de filtragens atrav?s de regras com o Netfilter Iptables.
ex: iptables -A INPUT -i eth0 -p TCP –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/2 -j ACCEPT

Smurf:

O ataque Smurf se aproveita da antiga falha do IPV4 o Spoofing.
Ele consite em enviar pacotes ICMP type 8 ( ICMP_ECHO_REQUEST), com o endere?o de origem da v?tima.

se possiv?l negue pacotes do tipo ICMP_ECHO_REQUEST no seu filtro de pacotes
ex: iptables -A INPUT -p icmp –icmp type 8 -j REJECT

DRDos – Distributed Reflexion Denial of Services

Ele baseia-se em uma falha de design do TCP/IP, novamente o spoofing.
Este ataque, foi o que derrubou o site de Steve Gibson, especilista em seguran?a dos EUA http://grc.com

O grande potencial do ataque DRDos esta nas seguintes caracter?sticas:

Quando um cliente envia para um servidor um pacote SYN, o servidor tenta responder com um SYN/ACK, caso seu servi?o esteja avali?vel.
Se este pacote n?o chegar ao destino, ele reenviar? i mesmo algumas vezes, pois este pacote pode ter sido perdido no meio do caminho.
Na maioria das implementa??es, essa repeti??o representa o envio do pacote quatro vezes.
O ataque ocorre nesta repeti??o, pois isso vai multiplicando-se ? medida que os servidores respondem.

Veja o exemplo:

M?quina-Cliente: whitestar.com
M?quina-V?tima: vitima.com
Lista de Servidores: A.com, B.com, C.com e D.com

1) M?quina whitestar.com envia um pacote SYN para m?quina A.com, no seu servi?o http ( porta 80 ) com o source_address de vitima.com.

2) Neste primeiro instante, a m?quina vitima.com ir? receber um pacote SYN/ACK de A.com, o qual ser? rejeitado pois o socket client n?o foi alocado em nenhuma porta alta para receber este pacote SYN/ACK.

3) Continuando ? enviar pacotes para m?quinas da lista, B.com, C.com D.com e assim sucessivamente, temos:

Se whitestar.comenviar 50 pacotes SYN/ACK por segundo, no primeiro segundo, a m?quina whitestar.com receber? 50 pacotes.
No segundo , 100 e no terceiro 150 pacotes.
Isso vai aumentando conforme o tempo, no quinto segundo, a m?quina A.com ir? parar com as tentativas de envio para vitima.com.

Com uma conex?o r?pida, ? possiv?l enviar grande n?mero de pacotes SYN, pois eles s?o pequenos.