Se você nunca experimentou testar um ataque DoS contra seus Servidores Web, acho que essa é uma boa oportunidade. A mitigação via HTTP DoS (Denial-of-Service ou Negação de Serviço) prestada por scripts SlowLoris (escritos em linguagem Perl), são de ótima valia para esse tipo de teste.
Nesse post vou explicar de modo “econômico” (visando coibir o uso indevido) como realizar a instalação das dependências necessárias para se rodar o SlowLoris. Pode ser que, dependendo da sua Distro, você terá que correr atrás de algumas depêndencias de forma manual. Digo isso porque nem sempre estamos acostumados a fazer esse tipo de trabalho: uma vez que o “APT” ou “Yum” faz tudo por nós. Vamos instalar alguns pacotes não convencionais que serão essenciais para este tipo de teste (principalmente relacionados a SOCKETs). Com isso, você terá que ler as saídas de tela e se esforçar para atender algumas necessidades a mais. Veja, será investido algum tempo e também será necessário dedicar-se um pouco para ver esta “belezinha” funcionado corretamente. Por isso digo: este post não é uma “receita de bolo”.


Outro comentário que faço é acerca do mal uso desta ferramenta. O próprio título diz: Hacker Ético… Se você pensa diferente, espero que, de modo respeitoso, você nunca consiga colocar o SlowLoris em funcionamento.
Este tipo de DoS é bastante conhecido e muito simples, mas infelizmente nós não damos um real valor para esse tipo de ameaça. Desta forma, nossos Serviços Web ficam completamente desprotegidos contra um DoS. Digo logo: existem outros modos de defesa, mas inicialmente a implementação de corretas modificações no Apache e no Firewall tem se mostrada suficientes.
Então vamos lá… O script Perl do SlowLoris se consegue –> aqui <–
Agora vá até um diretório de sua preferência, a partir do qual você vai rodar os comandos. Cole o script dentro de um arquivo de texto e salve. Dê permissão de execução, revise e respeite a sintaxe e identifique-o como extensão Perl (boa política).
Se faz necessário o interpretador Perl com os seguintes módulos (Lembre-se: vamos usar APT, mas ele não vai resolver todas as dependências necessárias):
# perl -MCPAN -e 'install IO::Socket::INET'
# perl -MCPAN -e 'install IO::Socket::SSL'
# apt-get install libgetopt-mixed-perl
# apt-get install perl-doc
Essa foi a pior parte. Se você conseguiu instalar tudo e resolveu todos os “entraves” que apareceram no caminho, está na hora de TESTAR!
Leia a documentação:
$ perl-doc slowloris.pl
Exemplo de ataque:
DoS na porta 80 (HTTP), com 800 conexões simultâneas, com 2100 segundos de timeout de janela TCP e incremento de 6 segundos para o timeout TCP, faça:
perl slowloris.pl -dns www.alvo_para_teste.com.br -port 80 -timeout 2100 -num 800 -tcpto 6

P.S.: Estou rodando o SlowLoris em um Ubuntu 10.04 e acompanho o comportamento do DoS com a ferramenta de monitoramento de rede EtherApe. Caramba… O DoS entulha tudo… É protocolo 80 a milhão. Ótima experiência pro meu Apache e Firewall. Aconselho o teste em Windows Server também.
FONTE: SEJALIVRE