como evitar ataques ddos em meu servidor

Upload: helizonaldo-alves-morais

Post on 02-Nov-2015

7 views

Category:

Documents


0 download

DESCRIPTION

Apache

TRANSCRIPT

  • Ataques DoS (Denial of Service) e DDoS (Distributed DoS)

    De acordo com a definio do CERT (Computer Emergency Response Team), os ataques DoS (Denial of Service), tambm denominados Ataques de Negao de Servios, consistem em tentativas de impedir usurios legtimos de utilizarem um determinado servio de um computador. Para isso, so usadas tcnicas que podem: sobrecarregar uma rede a tal ponto em que os verdadeiros usurios dela no consigam us-la; derrubar uma conexo entre dois ou mais computadores; fazer tantas requisies a um site at que este no consiga mais ser acessado; negar acesso a um sistema ou a determinados usurios.

    Os ataques do tipo DoS mais comuns podem ser feitos devido a algumas caractersticas do protocolo TCP/IP (Transmission Control Protocol / Internet Protocol), sendo possvel ocorrer em qualquer computador que o utilize. Uma das formas de ataque mais conhecidas a SYN Flooding, onde um computador tenta estabelecer uma conexo com um servidor atravs de um sinal do TCP conhecido por SYN (Synchronize). Se o servidor atender o pedido de conexo, enviar ao computador solicitante um sinal chamado ACK (Acknowledgement). O problema que em ataques desse tipo, o servidor no consegue responder a todas as solicitaes e ento passa a recusar novos pedidos.

    Outra forma de ataque comum o UPD Packet Storm, onde um computador faz solicitaes constantes para que uma mquina remota envie pacotes de respostas ao solicitante. A mquina fica to sobrecarregada que no consegue executar suas funes.

    Ataques DDoS

    O DDoS, sigla para Distributed Denial of Service, um ataque DoS ampliado, ou seja, que utiliza at milhares de computadores para atacar uma determinada mquina. Esse um dos tipos mais eficazes de ataques e j prejudicou sites conhecidos, tais como os da CNN, Amazon, Yahoo, Microsoft e eBay.

    Para que os ataques do tipo DDoS sejam bem-sucedidos, necessrio que se tenha um nmero grande de computadores para fazerem parte do ataque. Uma das melhores formas encontradas para se ter tantas mquinas, foi inserir programas de ataque DDoS em vrus ou em softwares maliciosos.

    Em um primeiro momento, os hackers que criavam ataques DDoS tentavam "escravizar" computadores que agiam como servidores na internet. Com o aumento na velocidade de acesso internet, passou-se a existir interesse nos computadores dos usurios comuns com acesso banda larga, j que estes representam um nmero muito grande de mquinas na internet.

    Para atingir a massa, isto , a enorme quantidade de computadores conectados internet, vrus foram e so criados com a inteno de disseminar pequenos programas para ataques DoS. Assim, quando um vrus com tal poder contamina um computador, este fica disponvel para fazer parte de um ataque DoS e o usurio dificilmente fica sabendo que sua mquina est sendo utilizado para tais fins. Como a quantidade de computadores que participam do ataque grande, praticamente impossvel saber exatamente qual a mquina principal do ataque.

    Quando o computador de um internauta comum infectado com um vrus com funes para ataques DoS, este computador passa a ser chamado de zumbi. Aps a contaminao, os zumbis entram em contato com mquinas chamadas de mestres, que por sua vez recebem orientaes (quando, em qual site/computador, tipo de ataque, entre outros) de um computador chamado atacante. Aps receberem as ordens, os computadores mestres as repassam aos computadores zumbis, que efetivamente executam o ataque. Um computador mestre pode ter sob sua responsabilidade at milhares de computadores. Repare que nestes casos, as tarefas de ataque DoS so distribudas a um "exrcito" de mquinas escravizadas. Da que surgiu o nome Distributed Denial of Service.

    Impedindo e detectando ataques DoS

    Apesar de no existir nenhum meio que consiga impedir totalmente um ataque DoS, possvel detectar a presena de ataques ou de computadores (zumbis) de uma rede que esto participando de um DDoS. Para isso, basta observar se est havendo mais trfego do que o normal (principalmente em casos de sites, seja ele um menos conhecido, como o InfoWester, seja ele um muito utilizado, como o Google), se h pacotes TCP e UDP que no fazem parte da rede ou se h pacotes com tamanho acima do normal. Outra dica importante utilizar softwares de IDS (Intrusion Detection System - Sistema de Identificao de Intrusos).

  • Para preveno, uma das melhores armas verificar as atualizaes de segurana dos sistemas operacionais e softwares utilizados pelos computadores. Muitos vrus aproveitam de vulnerabilidades para efetuar contaminaes. Tambm importante filtrar certos tipos de pacotes na rede e desativar servios que no so usados.

    Fonte: http://www.infowester.com/col091004.php

    Dicas para se dificultar a ao de Ddos

    A equipe de segurana da LinuxSvr.Net tem algumas dicas aos clientes sel-managed.

    - Utilize o Mdulo Dos_Evasive (Apache)

    Baixe o Mdulo atual em http://www.nuclearelephant.com/projects/mod_evasive/

    # wget http://www.linuxsvr.net/nocwork/security/mod_dosevasive-current.tar.gz# tar -xzvf mod_dosevasive-current.tar.gz# cd mod_dosevasive*# /usr/local/apache/bin/apxs -i -a -c mod_dosevasive.c# rm -rf mod_dosevasive-current.tar*

    Edite o httpd.conf e inclua as linhas abaixo:

    para Apache v1.3:

    DOSHashTableSize 3097DOSPageCount 2DOSSiteCount 50DOSPageInterval 1DOSSiteInterval 1DOSBlockingPeriod 10

    para Apache v2.0:

    DOSHashTableSize 3097DOSPageCount 2DOSSiteCount 50DOSPageInterval 1DOSSiteInterval 1DOSBlockingPeriod 10

    - Utilize o APF Firewall

    Baixe o mdulo atual em http://www.r-fx.org/downloads/apf-current.tar.gz

    # tar -xvzf apf-current.tar.gz# cd apf*# sh ./install.sh# rm -rf apf*

    Edite o arquivo conf.apf em /etc/apf e altere a linha abaixo

    TroqueUSE_AD="0"PorUSE_AD="1"

  • Explore este arquivo, existem diversas outras opes que podem melhorar a perfomance.

    - O filtro abaixo pode ser utilizado para gerenciar a resposta a pacotes e Syns.

    Edite o arquivo /etc/rc.d/rc.local e adicione as linhas abaixo:

    ##### Begin DoS Prevention ###### shut some DoS stuff downecho 1 > /proc/sys/net/ipv4/tcp_syncookiesecho 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responsesecho 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

    # increase the local port rangeecho 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range

    # increase the SYN backlog queueecho 2048 > /proc/sys/net/ipv4/tcp_max_syn_backlog

    echo 0 > /proc/sys/net/ipv4/tcp_sackecho 0 > /proc/sys/net/ipv4/tcp_timestamps

    echo 64000 > /proc/sys/fs/file-max

    ulimit -n 64000

    # stop source routingfor i in /proc/sys/net/ipv4/conf/*/accept_source_routedoecho 0 > $idone

    # enable reverse-path filteringfor i in /proc/sys/net/ipv4/conf/*/rp_filterdoecho 1 > $idone##### End DoS Prevention #####

    importante saber que bloquear um ataque Ddos usando software possvel em apenas 20% dos casos, e que necessrio percia e conhecimento tcnico avanado para isso.

    Para saber mais:http://www.cert-rs.tche.br/docs_html/ddos.htmlhttp://www.invasao.com.br/coluna-bytes-03.htmhttp://www.istf.com.br/vb/showthread.php?t=3231http://en.wikipedia.org/wiki/Denial_of_servicehttp://www.ddosworld.comhttp://staff.washington.edu/dittrich/misc/ddoshttp://www.ebcvg.com/articles.php?id=236http://www.rnp.br/newsgen/0003/ddos.htmlhttp://www.securitydocs.com/library/2774