[FUG-BR] Ataque de DDoS tem como evitar ?
breno em lagosnet.com.br
breno em lagosnet.com.br
Quinta Setembro 6 14:27:52 BRT 2007
Só para ilustrar, segue abaixo um artigo interessante sobre DOS, que vi no
VOL (sim, estou certo que alguns não irão gostar, mas o conteúdo é bom :)
Link: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=7070&pagina=1
Att,
Breno Fernandes
> Esse tread cresceu bastante , como disse o colega de lista o semaninha
> danada ...
>
> Bem vou espor umas idéias , vou tentar ser um Mythbuster ..... mesmo que
> eu não tenha tanto talento qto.
>
> http://www.discoverybrasil.com/cacadores_funsite/
>
> a pergunta é :
>
> Ataque de DDoS tem como evitar ?
>
> Resposta: Não, porque enquanto existir jovens espinhentos que não
> praticam sexo sempre tera um desses querendo mostrar o poder de querer
> ser um "HACKER" fazendo papel de "LAMER".
>
> Mas se isso é um fato , o quanto eu estou vuneravel a este tipo de
> ataque ?
>
> Bem a definição disso passa por muitas coisas , com o aumento das bandas
> de conexão é digamos até esperado que esse tipo de ataque seja mais
> frequente e tenha maior probabilidade de atingir algum tipo de objetivo,
> isso é se isso tem algum objetivo além de gerar discussões,
> controvérsias e aborrecimento para algumas pessoas.
>
> Em contrapartida isso não tem nada de novidade é historicamente poucos
> desses ataques tiveram realmente destaques mundiais , um lá pelos idos
> de 1996 que tirou boa parte do que era uma redezinha internacional
> funcionando que era usada denominada internet e o caso mais famoso na
> minha opinião que vou o ataque em massa ao Yahoo onde o destaque foram
> os servidores FreeBSD que sobreviveram muito bem. Desde então muita
> coisa mudou , os sistemas operacionais evoluiram e temos o cenario
> atual, alguma referencia pode ser encontrada :
>
> http://en.wikipedia.org/wiki/Denial-of-service_attack
>
> A resposta é que se voce tem um bom sistema bem configurado , não estou
> me referindo a um OS específico , quase certo que voce de certa maneira
> esta imune a este tipo de ataque, todos os sistemas adotaram ações
> pró-ativas contra esses ataques, excessões podem existir lógico.
>
>
> Bem essa lista trata de FreeBSD e seus "Primos" , então focando nisso
> podemos considerar :
>
> Todos os BSD's tem proteção pró-ativa contra DDOS !!!!
>
> Experimente vc mesmo ai na sua rede "flodar" um BSD , olhe o prompt e
> vera mensagens do sistema descartando pacotes , isso não requer qualquer
> tipo de ação ou setup, é um recurso de segurança dos sistemas BSD's.
>
> Dai então a pergunta :
>
> Então vc pode simplemente ignorar um ataque DDOS ?
>
> Resposta : Não , não deve , vc deve ter o maximo de preocupação com
> isso , mesmo porque saiba-se lá o que pode estar por detraz de um ataque
> desses, vc deve ao menos tomar providencias com a intenção de ao menos
> desistimular os esfeitos colaterais desses ataques.
>
> Como isso pode ser feito ?
>
> Bem qualquer filtro de pacote tem, ou deveria ter , mecanismos que
> bloqueam pacotes cujo objetivo são simplesmente causar problemas.
>
> Onde vc encontra informações sobre como configurar meu firewall para
> isso ?
>
>
> Resposta : No manual horas, Handbook
>
> Uma das referencias especifica para IPFW
>
> http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/firewalls-ipfw.html
>
> Onde na página do Handbook estão essas informações ?
>
> Bem veja as descrições e recomendações para uma configuração eficiente
> do firewall.
>
> Logo no primeiro exemplo :
>
> Start your rules file like this:
>
> ############### start of example ipfw rules script #############
> #
> ipfw -q -f flush # Delete all rules
> # Set defaults
> oif="tun0" # out interface
> odns="192.0.2.11" # ISP's DNS server IP address
> cmd="ipfw -q add " # build rule prefix
> ks="keep-state" # just too lazy to key this each time
> $cmd 00500 check-state
> $cmd 00502 deny all from any to any frag
> $cmd 00501 deny tcp from any to any established
> $cmd 00600 allow tcp from any to any 80 out via $oif setup $ks
> $cmd 00610 allow tcp from any to $odns 53 out via $oif setup $ks
> $cmd 00611 allow udp from any to $odns 53 out via $oif $ks
> ################### End of example ipfw rules script ############
>
> Note as regras :
>
> $cmd 00500 check-state
> $cmd 00502 deny all from any to any frag
> $cmd 00501 deny tcp from any to any established
>
> A primeira busca por regras dinamicas , esse é uma boa ação , usar
> regras dinamicas ao invéz de estáticas , pois assim diminue em muito o
> processamento necessário para definir o que fazer com um determinado
> pacotes. A segunda descarta os pacotes fragmentados e a terceira e mais
> importante "DESCARTA pacotes marcados como established , pois eles não
> deveriam estar ai correto ? Afinal o que faz o check-state antes ,
> aceita os pacotes criados por regras dinamicas do seu firewall , então
> se o pacote não se encaixou no check-state ele tem mais é que ser
> descartado mesmo.
>
> Mais sera tão simples assim ? Somente isso é suficiente ?
>
> Sim e não, simples mas apenas o suficiente para voce não ter efeitos
> colaterais ao seus servidores , voce pode melhorar ainda se entender o
> que vem ser um ataque DDOS. Regras como essas são um passo importante
>
> IPFW :
>
> # Bloqueia pacotes com opções de Source Routing e Record Route do Cabecalho IP
> ativadas.
> add 00001 deny tcp from any to any ipoptions ssrr,lsrr,rr
>
> # Bloqueio de pacotes com combinações estranhas de flags do protocolo TCP
> add 00003 deny tcp from any to any tcpflags syn,fin
> add 00004 deny tcp from any to any tcpflags syn,rst
>
> PF :
>
> ## NORMALIZATION - Scrubbing will automatically drop TCP packets that
> # have invalid flag combinations, so there's no need for typical 'anti-portscan'
> scrub in on $ext_if
> scrub out on $ext_if no-df random-id min-ttl 24 max-mss 1492
>
>
> Ou seja , um ataque DDOS é simplemente o envio de um monte de pacote com
> o objetivo de "atolar" sua rede , para conseguirem fazer isso precisam
> rodar scripts que enviam randomicamente pacotes com todos os tipos de
> combinações possiveis , alguns ataques podem ser direcionados a portas,
> de serviços especificas ou mesmo protocolos como ICMP, então uma boa
> prática poderia ser tambem uma boa filtragem de ICMP.
>
>
> do man ipfw :
>
>
> icmptypes types
> Matches ICMP packets whose ICMP type is in the list types.
> The
> list may be specified as any combination of individual
> types
> (numeric) separated by commas. Ranges are not allowed. The
> sup-
> ported ICMP types are:
>
> echo reply (0), destination unreachable (3), source quench
> (4),
> redirect (5), echo request (8), router advertisement (9),
> router
> solicitation (10), time-to-live exceeded (11), IP header
> bad
> (12), timestamp request (13), timestamp reply (14),
> information
> request (15), information reply (16), address mask request
> (17)
> and address mask reply (18).
>
> Descartar icmp tipo 3 e 5 vindo da interface externa e não deixando sair
> icmp tipo 0 e 8 da sua rede interna para o mundo são uma boa prática
>
> add 00018 deny icmp from any to any via $ext_if in icmptypes 3,5
> add 00018 deny icmp from any to any via $ext_if out icmptypes 0,8
>
> Ah , uma referenciazinha , sera que tem BSD lá a algum tempo?
>
> http://www.rnp.br/newsgen/9901/ipfw-bsd.html
>
> Mas a pergunta persiste , assim eu fico imune ao ataque DDOS ?
>
> Resposta : Sua rede fica imune , vc não precisa usar nenhuma solução
> comercial , ipfw e pf ajudam mas seu BSD já ta pronto para aguentar o
> tranco mas o seu link com a internet cheio de pacotes "voando" de uma ou
> de varias origens isso esta fora do seu alcance , portando depende do
> seu fornecedor de link/operadora, procure obter o máximo de informação
> após um ataque , tente contatos, reporte o ataque ao CERT , pois a
> melhor maneira de realmente diminuir ataques é fazendo com que as
> consequencias para quem faz isso seja bastante ruim, crie logs , mas
> cuidado para não tomar muito remédio e fica envenenado, veja no
> handbook:
>
>
> 28.6.5.3 Logging Firewall Messages
>
> ....................
>
> Logging is a two edged sword, if you are not careful, you can lose
> yourself in the over abundance of log data and fill your disk up with
> growing log files. DoS attacks that fill up disk drives is one of the
> oldest attacks around. These log message are not only written to
> syslogd, but also are displayed on the root console screen and soon
> become very annoying.
>
>
> O que mais pode ser feito ?
>
> Se vc implementar sugestões como as acima o "pentelho" vai sentir
> dificuldade em "scanear" sua rede , isso já sera um dado positivo pois
> vai desestimular o ataque , soluções com portsentry e snort ajudam ainda
> mais a desestimular esses "meninos".
>
> Bem o afinal de contas qual o mito ?
>
> Bem isso digo agora num precisa de solução mirabolante ou comercial ou
> produzida pelos "super hiper entendidos " que vendem seus produtos ,
> voce mesmo pode fazer isso no seu BSD se tiver um pouco de dedicação e
> bastante pesquisa em sites e manuais, e digo mais vai funcionar melhor
> ainda já que vc não tem que atender a "Gregos e Troianos".
>
> So para lembrar que :
>
> http://www.fug.com.br/content/view/353/2/
>
>
> Bem espero ter ajudado , mais informações , mais detalhes sobre PF podem
> enrriquecer essa thead
>
> abraço e boa sorte a todos
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
Mais detalhes sobre a lista de discussão freebsd