[FUG-BR] Bloquear ataques

Alessandro de Souza Rocha etherlinkii em gmail.com
Quarta Março 28 13:40:53 BRT 2012


se for usa pf usa esta regra
block in log on $ext_if1 inet proto icmp from any to any icmp-type redir
block in log on $int_if inet proto icmp from any to any icmp-type redir


Em 28 de março de 2012 11:52, Marcelo Gondim <gondim em bsdinfo.com.br> escreveu:
> Em 28/03/2012 10:24, Marco Aurélio V. da Silva escreveu:
>> Caros,
>>
>> É o seguinte, tenho sofrido ataques a um servidor meu dns que tem variado o ip de origem. Segue log feito utilizando tcpdump:
>>
>> IP (tos 0x0, ttl 64, id 49078, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->261c)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49079, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->261b)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49080, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->261a)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49081, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2619)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49082, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2618)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49083, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2617)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49084, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2616)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49085, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2615)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49086, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2614)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>> IP (tos 0x0, ttl 64, id 49087, offset 0, flags [none], proto UDP (17), length 29, bad cksum 0 (->2613)!) xxx.xxx.xxx.xxx.59663>  91.204.161.226.46325: [bad udp cksum c007!] UDP, length 1
>>
>> Poderiam me dar uma dica de como bloquear estes ataques ? Inicialmente eu tenho adicionado regras do ipfw para bloquear os ips, mas a cada ataque o ip muda.
>>
>> Desde já agradeço a atenção recebida.
>
> Bem você poderia tentar algumas coisas:
>
> 1) Setar política default no ipfw como drop adicionando como últimas linhas:
>
> ipfw add allow tcp from me to any out setup keep-state
> ipfw add allow all from me to any out keep-state
> ipfw add 65534 deny log all from any to any
>
> As regras acima libera as saídas do seu servidor de dns e bloqueia o
> restante. Logicamente que você vai ter que ter as regras antes liberando
> suas portas de entrada.
>
> 2) liberar apenas pacotes que sejam: arp, rarp e ipv4:
>
> # So passa IPv4
> # habilitar net.link.ether.ipfw=1
> # ip         0x0800
> # ipv4       0x0800
> # ipv6       0x86dd
> # arp        0x0806
> # rarp       0x8035
> # vlan       0x8100
> # loop       0x9000
> # trail      0x1000
> # at         0x809b
> # atalk      0x809b
> # aarp       0x80f3
> # pppoe_disc 0x8863
> # pppoe_sess 0x8864
> # ipx_8022   0x00E0
> # ipx_8023   0x0000
> # ipx_ii     0x8137
> # ipx_snap   0x8137
> # ipx        0x8137
> # ns         0x0600
> ipfw add allow all from any to any layer2 mac-type ipv4,arp,rarp
>
> Para usar esse recurso precisa habilitar net.link.ether.ipfw=1 no
> /etc/sysctl.conf e ativar ele.
> IMPORTANTE!!! Lembrando que se a última linha do seu firewall for DROP
> pra tudo e habilitar net.link.ether.ipfw=1... se não houver a regra
> acima e outras regras liberando suas portas de acesso ao servidor, vai
> travar o acesso remoto à essa máquina.  :)
>
> Aqui no meu caso descobri uns pacotes estranhos vindos da minha
> operadora e comecei à barrar eles e informei a operadora. Chegava
> pacotes de outras empresas na minha vlan.
> Pode não ser seu caso mas é bom filtrar. Se você tiver trânsito IPv6 não
> esquecer de habilitar na regra o ipv6 também.
>
> 3) Nas liberações dos serviços se for udp coloca um "limit src-addr 1",
> por exemplo, mas vai depender da sua necessidade. Com essa regra você
> limitaria até 1 conexão vinda do mesmo IP para o seu serviço.
>
> Exemplo: ipfw add allow tcp from any to me 22 setup limit src-addr
> 1      nesse caso estou limitando apenas 1 conexão vinda de um mesmo IP
> na porta do ssh. É uma boa proteção para DoS.
>
> O "setup" você só usa em conexões TCP porque ele obriga a conexão fazer
> o 3 way hadshake.
>
> Mais uns carinhas legais no sysctl.conf:
>
> net.inet.ip.redirect=0
> net.inet.ip.sourceroute=0
> net.inet.ip.accept_sourceroute=0
> net.inet.icmp.maskrepl=0
> net.inet.icmp.log_redirect=0
> net.inet.icmp.drop_redirect=1
> net.inet.tcp.drop_synfin=1
>
> Bem essas são algumas dicas mas vale muito de como você configurou seu
> sistema e suas regras.
>
>> Marco Aurélio V. da Silva
>> marco em prodatanet.com.br
>> marcoprodata em gmail.com
>> msn: marco em prodatanet.com.br
>> Prodata Inf. e Cadastros LTDA
>> (33) 3322-4444
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



-- 
Alessandro de Souza Rocha
Administrador de Redes e Sistemas
FreeBSD-BR User #117
             Long live FreeBSD

                     Powered by ....

                                          (__)
                                       \\\'',)
                                         \/  \ ^
                                         .\._/_)

                                     www.FreeBSD.org


Mais detalhes sobre a lista de discussão freebsd