4 de fev. de 2012

Ataques Explicados: Distributed Denial of Service (D.D.O.S)

Continuando com a série "Ataques Explicados", vamos ao segundo ataque explicado.

Esta semana, instituições bancárias sofreram ataques de negação de serviço em uma operação chamada #OpWeekPayment do auto intitulado grupo "Anonymous BR". Não discursarei sobre a efetividade do ataque ou se tem uma ideologia. A grande questão é explicar em detalhes como estes ataques são realizados.

No ataque anterior, fora explicado o Denial of Service, cujo objetivo é negar o serviço para os usuários regulares. Vimos ataques que exploram características dos protocolos de transporte e aplicação. A triste notícia é que, como todo ataque, pode ser mitigado e corrigido. Sobrando para o atacante apenas a força bruta.

Quando se trata de negação de serviço, força bruta é sobrepujar o acesso do servidor à internet, ou seja, utilizar toda a sua banda de rede. Mas, como se o seu link é de apenas 56Kbps(Ainda existe?!)?. Usando a máxima: "A união faz a força!".

Podemos ver na figura a seguir:

Figura 1 - Ataque de D.D.O.S
As máquinas em Laranja, são os chamados masters, e as máquinas em amarelos são zumbis, nada de "The Walking Dead". Observando a estrutura da rede, podemos ver 3 camadas hierárquicas.
O atacante, os masters e os Zumbis. Um leitor incauto poderia se perguntar o motivo e é simples, Se o atacante tivesse banda para controlar todos os zumbis ao mesmo tempo, ele provavelmente teria recursos para knockoutear o servidor sozinho. O D.D.O.S veio para suprimir esta deficiência.

Lembrando que o objetivo do ataque é inundar o canal de comunicação/utilizar todos os recursos do servidor alvo. Para isso o atacante adquire uma Botnet.

Ordem do ataque.

  1. O Atacante se conecta aos Masters.
  2. Os Masters possuem uma lista de computadores Zumbis.
  3. O Atacante envia comandos para os Masters, e estes Repassam para os Zumbis executarem.


Se o ataque for um D.D.O.S por exemplo, pode ser necessário aos zumbis baixarem ferramentas de D.O.S ou simplesmente acessarem o site.

Botnet ou Rede Zumbi
 Uma botnet ou Rede zumbi, é um grupo de computadores que foram infectados por um malware. Este código malicioso se conecta a um Master e obedece aos comandos que ele enviar.

Para o objetivo de negar um serviço, a botnet é utilizada para que todos os computadores zumbis se conectem ao servidor alvo ao mesmo tempo. Os servidores em geral estão preparados para suportarem alguns acessos simultâneos. Em geral na ordem de milhares, mas os atacantes em geral utilizam muitos milhares ou milhões de zumbis.

Existem algumas ferramentas para controlar Botnets e realizarem ataques D.D.O.S, como o objetivo é falar apenas sobre D.D.O.S listei as ferramentas clássicas. Atualmente é até possível alugar uma botnet no mercado negro.

Ferramentas:

  • Tribal Flood Network(TFN)
  • Tribal Flood Network 2k
  • Trinoo
  • Stacheldraht
  • Loic & Hoic (Se usados de maneira distribuída)
Existe uma outra forma de D.D.O.S que são os chamados ataques amplificados, como o Smurf, DNS e NTP. Mas não abordarei neste artigo para que não fique muito grande e cansativo.