Quais são as melhores técnicas para impedir ataques de negação de serviço?

9

Atualmente, tenho usado (D) DoS-Deflate para gerenciar essas situações em vários servidores remotos, junto com Apache JMeter para teste de carga.

No geral, tem funcionado razoavelmente bem, embora eu gostaria de ouvir algumas sugestões de gurus que têm trabalhado com esse tipo de situação por mais tempo do que eu. Tenho certeza que aqueles que trabalham no negócio de hospedagem na web tiveram o seu quinhão de lidar com essas situações. Então, estou me perguntando quais são as melhores práticas para abordar esses tipos de problemas em um ambiente corporativo?

    
por John T 03.05.2009 / 08:53

5 respostas

4

Prevenir um DDoS é principalmente sobre não ser um alvo. Não hospede servidores de jogos, sites de jogos de azar / pornografia e outras coisas que tendem a incomodar as pessoas.

A atenuação de um ataque DDoS ocorre de duas formas:

  • ser capaz de ignorar o tráfego e perder o excesso de carga, o que é útil quando você está sob um ataque que tenta derrubá-lo sobrecarregando suas máquinas (e também é útil se você tiver "Slashdotted";
  • sendo capaz de rejeitar o tráfego de rede abusivo de seu usuário, para que ele não obstrua seus links e tire sua conectividade.

O primeiro é um pouco dependente do que exatamente você está servindo, mas geralmente se resume a uma combinação de cache, manipulação de overflow (detectando quando os servidores estão "cheios" e redirecionando novas conexões para um uso de baixo recurso "desculpe "página", e degradação graciosa do processamento de pedidos (portanto, não fazendo renderização dinâmica de imagens, por exemplo).

O último requer uma boa comunicação com seus upstreams - tenha o número de telefone dos NOCs de upstream do seu corpo tatuados na parte interna das pálpebras (ou, no mínimo, em um wiki em algum lugar que não seja hospedado no mesmo local que seus servidores de produção ...) e conhecer as pessoas que trabalham lá, então quando você ligar, você receberá atenção imediata como alguém que realmente sabe do que está falando, em vez de ser apenas aleatório. johnny.

    
por 03.05.2009 / 10:58
3

Você não menciona que tipo de segurança de perímetro você tem no lugar. Com os firewalls da Cisco, você pode limitar o número de sessões (semi-sessões) embrionárias que o seu firewall permitirá antes que elas sejam cortadas, enquanto ainda permite a realização de sessões completas. Por padrão, é ilimitado, o que não oferece proteção.

    
por 03.05.2009 / 16:08
2

Balanceadores de carga assistidos por hardware, como Foundry ServerIron's e Cisco ACEs, são ótimos para lidar com um grande número dos principais tipos de ataques DOS / DDOS, mas não são tão flexíveis quanto soluções de software que podem "aprender" novas técnicas mais rapidamente.

    
por 03.05.2009 / 21:08
2

Uma boa fonte de informação está em este site . Uma medida que eles mencionam apenas de passagem (e que vale a pena pesquisar mais) está habilitando os cookies SYN. Isso impede que uma classe inteira de ataques DoS impeça que um invasor abra um grande número de conexões "semiabertas" na tentativa de alcançar o número máximo de descritores de arquivo permitidos por processo. (Veja o bash manpage, procure o 'ulimit' embutido com a opção '-n')

    
por 04.05.2009 / 00:14
1

Disclaimer: Eu não sou um guru de proteção DDoS.

Acho que depende do orçamento que você tem para isso, de quais são seus termos de tempo de atividade e de como você ou seus clientes estão expostos a esse tipo de risco.

A proteção contra DDoS baseada em proxy pode ser uma opção. Na maioria dos casos, não é uma opção barata, mas acho que é a mais eficaz. Gostaria de pedir ao meu provedor de hospedagem uma solução. O RackSpace, por exemplo, fornece essa ferramenta de mitigação de várias camadas. Tenho certeza de que todos os grandes hosters têm soluções semelhantes.

    
por 03.05.2009 / 10:22