Firewalls e DNSComo e por que configurar corretamente            Hugo Koji Kobayashi            <koji at registro.br>      ...
Agenda   Principais caracter´                      ısticas do protocolo DNS original   Extension Mechanisms for DNS (EDNS0...
Parte IPrincipais caracter´                   ısticas do protocolo DNS original                                           ...
DNS - Caracter´              ısticas originais do protocolo    Definido nas RFCs 1034 e 1035.    Banco de dados distribu´ a...
Formato da mensagem DNS                 ID, flags e contadores                 Pergunta ao servidor                 RRs co...
Funcionamento b´sico DNS               a                           6 / 24
Quando TCP ´ utilizado           e      Transferˆncias de zona (AXFR)              e      Respostas com payload maior do q...
Parte IIExtension Mechanisms for DNS (EDNS0)                                       8 / 24
EDNS0 - Extension Mechanisms for DNS   Definido na RFC 2671   Extens˜o ao protocolo DNS original para eliminar alguns limit...
EDNS0 - pseudo-RR OPT                               NAME       ‘‘.’’                               TYPE       ‘‘OPT’’     ...
EDNS0 - Como funciona?   Depende de suporte tanto no cliente como no servidor.   Cliente envia consulta UDP com pseudo-RR ...
EDNS0 - Uso   Transi¸˜o de IPv4 para IPv6:          ca   Existˆncia de records A e AAAA simultanemente, fazendo com que   ...
EDNS0 - Suporte em servidores  Alguns exemplos de servidores que suportam EDNS0:    Bind (desde 8.3.x - 2001)    Microsoft...
Parte IIIFirewalls e DNS                  14 / 24
Por que configurar corretamente?   Garantir qualidade na resolu¸˜o DNS, ou seja, evitar atrasos e,                         ...
Firewalls e DNS   Autoritativos:     ◮   Consultas com destino ` porta 53 UDP e TCP do servidor autoritativo              ...
Open Recursive Resolvers   S˜o servidores recursivos que aceitam consultas DNS vindas de    a   qualquer computador na Int...
Firewalls e DNS/UDP > 512 bytesSe seu servidor recursivo suporta EDNS0, verifique se seu firewall permitedatagramas UDP/DNS ...
Firewalls e fragmentos UDPSe seu servidor recursivo suporta EDNS0 e o firewall suporta mensagensDNS maiores que 512 bytes, ...
Firewalls e PMTU-D (1)   A medida que DNSSEC for adotado, a quantidade de mensagens   DNS maiores do que o MTU da rede ten...
Firewalls e PMTU-D (2)  1    Cliente faz consulta DNS via UDP e recebe resposta com bit TC=1. Servidor quer       enviar r...
Referˆncias     e   RFC 1034   DOMAIN NAMES - CONCEPTS AND FACILITIES   RFC 1035   DOMAIN NAMES - IMPLEMENTATION AND SPECI...
Referˆncias     e   RFC 4033   DNS Security Introduction and Requirements   RFC 4034   Resource Records for the DNS Securi...
Obrigado!Perguntas? Coment´rios?                 a                          24 / 24
Upcoming SlideShare
Loading in...5
×

10 dns-firewall

375

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
375
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

10 dns-firewall

  1. 1. Firewalls e DNSComo e por que configurar corretamente Hugo Koji Kobayashi <koji at registro.br> Registro.br GTS-9 - 30 de Junho de 2007 1 / 24
  2. 2. Agenda Principais caracter´ ısticas do protocolo DNS original Extension Mechanisms for DNS (EDNS0) Firewalls e DNS 2 / 24
  3. 3. Parte IPrincipais caracter´ ısticas do protocolo DNS original 3 / 24
  4. 4. DNS - Caracter´ ısticas originais do protocolo Definido nas RFCs 1034 e 1035. Banco de dados distribu´ atrav´s de uma arquitetura hier´rquica, ıdo e a cujo principal prop´sito ´ a resolu¸˜o de nomes de dom´ o e ca ınio. Servidores aceitam consultas em transporte TCP/UDP, porta 53. Payload m´ximo em transporte UDP de 512 bytes. a Payload m´ximo por mensagem DNS em TCP de 64 Kbytes. a 4 / 24
  5. 5. Formato da mensagem DNS ID, flags e contadores Pergunta ao servidor RRs com resposta a pergunta RRs indicando autoridade sobre a pergunta RRs contendo informa¸oes adicionais c~ 5 / 24
  6. 6. Funcionamento b´sico DNS a 6 / 24
  7. 7. Quando TCP ´ utilizado e Transferˆncias de zona (AXFR) e Respostas com payload maior do que 512 bytes: 1. Consulta inicial via UDP. 1 2. Resposta maior do que 512 bytes, flag TC ´ marcado para indicar que e sua resposta est´ truncada. a 3. Cliente refaz consulta via TCP. 1 Servidor autoritativo procura evitar o uso do flag TC removendo RRs da se¸˜o Additional da mensagem ca DNS sempre que poss´ a fim de evitar que cliente precise refazer a consulta via TCP. ıvel 7 / 24
  8. 8. Parte IIExtension Mechanisms for DNS (EDNS0) 8 / 24
  9. 9. EDNS0 - Extension Mechanisms for DNS Definido na RFC 2671 Extens˜o ao protocolo DNS original para eliminar alguns limites do a protocolo. Permite: ◮ mais flags e RCODEs ao cabe¸alho DNS c ◮ novos tipos de labels ◮ payloads maiores em transporte UDP (limitado a 64 Kbytes) Define um novo pseudo-RR: OPT 9 / 24
  10. 10. EDNS0 - pseudo-RR OPT NAME ‘‘.’’ TYPE ‘‘OPT’’ CLASS Tamanho do pacote UDP TTL RCODE estendido e Flags RDATA Pares {atributo,valor}Pseudo-RR OPT N˜o armazena dados de DNS como outros RRs a N˜o ´ cacheado ou armazenado em arquivo, sendo utilizado apenas a e no momento da comunica¸˜o entre servidores ca 10 / 24
  11. 11. EDNS0 - Como funciona? Depende de suporte tanto no cliente como no servidor. Cliente envia consulta UDP com pseudo-RR OPT na se¸˜o Additional ca da mensagem DNS, informando qual o tamanho m´ximo de respostas a UDP que pode processar. Se servidor suportar EDNS0, pode aumentar o limite para o tamanho da resposta que vai retornar ao cliente, evitando re-query via TCP. Se servidor n˜o suportar EDNS0, envia resposta com at´ 512 bytes de a e payload DNS. 11 / 24
  12. 12. EDNS0 - Uso Transi¸˜o de IPv4 para IPv6: ca Existˆncia de records A e AAAA simultanemente, fazendo com que e respostas que contˆm glue records fiquem maiores. e Por exemplo, o ”priming request”(consulta aos records NS da raiz) que atualmente tem 436 bytes de payload DNS, passaria a 811 bytes de payload DNS quando houver glue IPv6 para todos os 13 servidores da raiz. DNSSEC: EDNS0 ´ mandat´rio (bit “DNSSEC OK” (DO)). e o Respostas maiores principalmente pelo tamanho de records RRSIG e DNSKEY. 12 / 24
  13. 13. EDNS0 - Suporte em servidores Alguns exemplos de servidores que suportam EDNS0: Bind (desde 8.3.x - 2001) Microsoft DNS server (Windows 2003) NSD (auth only - desde 1.x - 2003) ANS/CNS 13 / 24
  14. 14. Parte IIIFirewalls e DNS 14 / 24
  15. 15. Por que configurar corretamente? Garantir qualidade na resolu¸˜o DNS, ou seja, evitar atrasos e, ca principalmente, a impossibilidade de resolu¸˜o de nomes ca Evitar overhead desnecess´rio em servidores DNS, tanto recursivos a como autoritativos 15 / 24
  16. 16. Firewalls e DNS Autoritativos: ◮ Consultas com destino ` porta 53 UDP e TCP do servidor autoritativo a e respectivas respostas devem ser permitidas. Recursivos: ◮ Consultas do servidor recursivo com destino ` porta 53 UDP e TCP de a qualquer outro servidor e respectivas respostas devem ser permitidas. ◮ Consultas vindas de clientes autorizados com destino ` porta 53 UDP a e TCP do servidor recursivo e respectivas respostas devem ser permitidas. ◮ Bloqueio `s demais consultas DNS direcionadas ao servidor recursivo. a 16 / 24
  17. 17. Open Recursive Resolvers S˜o servidores recursivos que aceitam consultas DNS vindas de a qualquer computador na Internet. Problemas: ◮ Ataques de envenenamento de cache, que levam o servidor recursivo a armazenar informa¸oes forjadas; c˜ ◮ Ter o servidor utilizado para ataques DDoS. Como resolver: a solu¸˜o recomendada ´ separar os servidores ca e autoritativos e recursivos em computadores distintos e limitar o acesso ao servidor recursivo a clientes de sua rede. Mais detalhes no documento do CERT.br “Recomenda¸oes para c˜ Evitar o Abuso de Servidores DNS Recursivos Abertos”: http://www.cert.br/docs/whitepapers/dns-recursivo-aberto/ 17 / 24
  18. 18. Firewalls e DNS/UDP > 512 bytesSe seu servidor recursivo suporta EDNS0, verifique se seu firewall permitedatagramas UDP/DNS com mais de 512 bytes. Um teste pode ser feitoatrav´s da seguinte consulta (935 bytes de payload DNS): e dig @a.dns.br br ns +dnssec +bufsize=1000Se a resposta n˜o for recebida, pode-se: a corrigir o comportamento do firewall; diminuir o payload m´ximo enviado via record OPT na configura¸˜o a ca EDNS0 do servidor para 512 bytes. 18 / 24
  19. 19. Firewalls e fragmentos UDPSe seu servidor recursivo suporta EDNS0 e o firewall suporta mensagensDNS maiores que 512 bytes, verifique se seu firewall ´ capaz de fazer o ecorreto reassembly de datagramas UDP fragmentados. Um teste pode serfeito atrav´s da seguinte consulta (2185 bytes de payload DNS): e dig @a.dns.br br dnskey +dnssec +bufsize=2500Se a resposta n˜o for recebida, pode-se: a corrigir o comportamento do firewall; diminuir o payload m´ximo enviado via record OPT na configura¸˜o a ca EDNS0 do resolver. RFC EDNS0 sugere que se configure baseado em MTU de 1280 bytes. 19 / 24
  20. 20. Firewalls e PMTU-D (1) A medida que DNSSEC for adotado, a quantidade de mensagens DNS maiores do que o MTU da rede tende a aumentar. Boa parte destas mensagens poder˜o ser transportadas via TCP. a Para garantir o funcionamento de PMTU-D em seus servidores, seu firewall e outros dispositivos de roteamento em sua rede n˜o devem a descartar mensagens ICMP do tipo 3, c´digo 4 (”destination o unreachable”, ”fragmentation needed but don’t fragment bit set”). 20 / 24
  21. 21. Firewalls e PMTU-D (2) 1 Cliente faz consulta DNS via UDP e recebe resposta com bit TC=1. Servidor quer enviar resposta com payload de 2185 bytes. 2 Cliente descarta resposta UDP e refaz a consulta usando TCP. 3 Como MTU dos segmentos de rede do Cliente e Servidor ´ de 1500 bytes e o e servidor implementa PMTU-D, este envia primeiro pacote IP com 1500 bytes e bit DF=1 (header IP). 4 Quando pacote IP chega em GWISP, este descarta o pacote IP e retorna mensagem ICMP Can’t fragment (tipo 3, c´digo 4). o 5 Por´m, como GWS filtra ICMP, servidor DNS n˜o o recebe e depois de algum e a tempo tenta o envio novamente do pacote de 1500 bytes e bit DF=1, at´ a sess˜o e a TCP expirar 2 . Resolu¸˜o DNS falha! ca 2 Algumas implementa¸oes de PMTU-D detectam este tipo de situa¸˜o, mas ainda assim com perda de performance. c˜ ca 21 / 24
  22. 22. Referˆncias e RFC 1034 DOMAIN NAMES - CONCEPTS AND FACILITIES RFC 1035 DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION RFC 1191 Path MTU Discovery RFC 2181 Clarifications to the DNS Specification RFC 2671 Extension Mechanisms for DNS (EDNS0) RFC 2923 TCP Problems with Path MTU Discovery RFC 4472 - Apˆndice B e Operational Considerations and Issues with IPv6 DNS RFC 4821 Packetization Layer Path MTU Discovery 22 / 24
  23. 23. Referˆncias e RFC 4033 DNS Security Introduction and Requirements RFC 4034 Resource Records for the DNS Security Extensions RFC 4035 Protocol Modifications for the DNS Security Extensions Tutorial DNSSEC ftp://ftp.registro.br/pub/doc/tutorial-dnssec.pdf Recomenda¸oes para Evitar o Abuso de Servidores DNS Recursivos Abertos c˜ http://www.cert.br/docs/whitepapers/dns-recursivo-aberto/ Testing Firewalls for IPv6 and EDNS0 Support http://www.icann.org/committees/security/sac016.htm Testing Recursive Name Servers for IPv6 and EDNS0 Support http://www.icann.org/committees/security/sac017.htm Acommodating IPv6 Address RRs for the Root of the DNS http://www.icann.org/committees/security/sac018.pdf 23 / 24
  24. 24. Obrigado!Perguntas? Coment´rios? a 24 / 24
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×