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 > ma...@prodatanet.com.br > marcoprod...@gmail.com > msn: ma...@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