ataque DDOS - Como evitar [duplicado]

6

Recentemente li sobre o ataque de negação de serviço na Amazon & PayPal. Estou curioso para saber como isso é feito. Essas grandes empresas precisam ter servidores enormes, então o DOS exigiria bilhões de bots para acessá-los.

Então minhas perguntas são

  1. Como o ataque do DDOS foi realizado nesse nível?
  2. Como saber de antemão que isso é um ataque está acontecendo?
  3. Como evitar isso (como distinguir de bot vs user, além do modo comum de captcha que é feito)
por ashmish2 13.12.2010 / 11:28

2 respostas

5

Fundamentalmente, esses ataques de negação de serviço envolvem enviar ao servidor mais solicitações do que ele pode manipular. Pode ser um grande número de bots enviando pedidos simples (embora não exija bilhões para derrubar um único servidor - alguns milhares de vezes) ou um punhado de bots enviando pedidos que são notoriamente longos para serem executados.

O segundo tipo de ataque é o mais cruel, porque um único bot poderia derrubar um servidor. Por exemplo, o LIMIT N OFFSET M do MySQL é notoriamente lento quando M se torna grande, então um ataque simples seria solicitar páginas de 200 a 300 em 500 em rápida sucessão, entupindo todos os threads de trabalho do MySQL. Em um servidor desprotegido, isso pode ser feito com o firebug. A única solução é identificar operações dispendiosas e, em seguida, otimizá-las, torná-las sequenciais (para que a obstrução dessa parte do site não diminua o restante do site) ou detectar IPs que solicitam operações dispendiosas e recuse-se a executar essa operação a menos que um determinado intervalo de espera seja respeitado.

O primeiro tipo de ataque é mais difícil, porque você precisa de muitos bots. Por outro lado, também é mais difícil parar no servidor: se você tiver milhares de bots enviando dados o mais rápido que puder, sua largura de banda será devorada pela inundação e não há nada que o servidor possa fazer a respeito (mesmo que se recusar 99% desses pedidos), então um roteador com prevenção contra inundações é uma boa aposta se você acha que pode ser um alvo.

    
por 13.12.2010 / 11:41
0

Não há como impedir um ataque verdadeiramente distribuído, já que não há diferença com relação a isso e lidar com uma onda de tráfego legítimo. (Servir captchas pode impedir que um ataque atrapalhe processos de execução longa ou uso pesado de recursos, mas um ataque suficiente sobrecarregará seu captcha servindo também a largura de banda).

    
por 13.12.2010 / 11:47

Tags