Pesquisar neste blog

terça-feira, 4 de maio de 2010

Uma maneira simples de detectar ataques DDoS o DoS

Mas afinal, o que são ataques de DDoS ou de "negação de serviço"?
 
Os ataques DoS são bastante conhecidos no âmbito da comunidade de segurança de redes. Estes ataques, através do envio indiscriminado de requisições a um computador alvo, visam causar a indisponibilidade dos serviços oferecidos por ele. Fazendo uma analogia simples, é o que ocorre com as companhias de telefone nas noites de natal e ano novo, quando milhares de pessoas decidem, simultaneamente, cumprimentar à meia-noite parentes e amigos no Brasil e no exterior. Nos cinco minutos posteriores à virada do ano, muito provavelmente, você simplesmente não conseguirá completar a sua ligação, pois as linhas telefônicas estarão saturadas.
 
Quem são os personagens do ataque?
 
Atacante: Quem efetivamente coordena o ataque.

Master: Máquina que recebe os parâmetros para o ataque e comanda os agentes (veja a seguir).

Agente: Máquina que efetivamente concretiza o ataque DoS contra uma ou mais vítimas, conforme for especificado pelo atacante.

Vítima: Alvo do ataque. Máquina que é "inundada" por um volume enormede pacotes, ocasionando um extremo congestionamento da rede e resultando na paralização dos serviços oferecidos por ela.

Vale ressaltar que, além destes personagens principais, existem outros dois atuando nos bastidores:

Cliente: Aplicação que reside no master e que efetivamente controla os ataques enviando comandos aos daemons.

Daemon: Processo que roda no agente, responsável por receber e executar os comandos enviados pelo cliente.

 
As principais Fases do ataque 
 
1ª fase: intrusão em massa. nesta fase do ataque o atacante escolhe as vitimas(geralmente conexões de banda larga), e faz um superscan de vulnerabilidades nelas, após encontradas as vulnerabilidades, é criado uma lista com os IP's dessas máquinas que foram invadidas e comprometidas, para serem usadas no ataque.

2ª fase: instalação das ferramentas DDOS, escolha dos masters e agentes. Após invadida as 
máquinas e instalados os programas DDOS é a hora de selecionar a função de cada máquina no ataque. A escolha sobre qual máquina será usada como master e agente dependerá do atacante. O perfil dos masters e agente dependerá do atacante, mas geralmente o perfil dos masters e agente são máquinas poucos manuseadas e pouco monitoradas pelo seu administrador já os agentes são máquinas rápidas, é nos agentes que serão instalados o daemon DDOS que anunciara sua presença aos masters e ficara esperando os comandos, daí começa a ser organizado o ataque, é instalado rootkits para tentar ocultar o comprometimento das máquinas.

3ª fase: iniciando o ataque. O atacante agora só precisa controlar seu ou seus agentes e "mandarem" atacar o(s) IP(s) da(s) vítima(s), por um período de tempo determinado pelo atacante.
 

Ferramentas mais comuns
  • TRIN00
  • TFN2K(trible flood network 2000)
  • TFN(trible flood network)
  • Stalcheldraht      

 Forma simples de detectar um ataque DDoS

Os indícios mais comuns de que seu servidor esta sobre um ataque DDoS é o aumento repentino na atividade do processador e a lentidão que o mesmo irá apresentar em função desse aumento do processamento.

Uma forma prática, rápida e fácil de verificar um possível ataque DDoS é utilizar um conjunto de ferramentas que incluem: netstat, grep, awk e uniq. 
 
A linha abaixo nos retorna uma lista dos IP's que estão conectados ao servidor como também o número de conexões que cada um dos IP's esta abrindo. 

# netstat -an | grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

ou
 
# netstat -alpn | grep :80 | awk ‘{print $5}’ |awk -F: ‘{print $(NF-1)}’ |sort | uniq -c | sort -n

Um grande número de conexões pode significar um ataque ou algo menos nocivos, como um efeito digg, twitter ou slashdot

Fontes: