You are on page 1of 48

DNS: Domain Name System

Resolucin de nombres en Internet Teora y A Aspectos d S de Seguridad d d

Capacitacin Interna 6 de di i b d 2007 d diciembre de


Carlos M. Martnez C l M M t carlos.martinez@csirt-antel.com.uy

Agenda
Introduccn alDNS:
Repasarloquesabemostodos.

A i Arquitectura:
Estructuraderbol RRs. Servidoresprimariosysecundarios.ZonasyAutoridad.

Operacin
Descripcindelprotocolo p p
Transporte,formatopaquete,etc.

Consultasyrespuestas
Directas,reversas,transferenciasdezona

Herramientas
Algunas:dig,nslookup Herramientas en Internet HerramientasenInternet

Agenda(2)
SeguridadenDNS
Problemasreconocidos Problemas reconocidos CachPoisoning AtaquesdeDNSamplification Confianzaenlosregistros Aseguramientodelastransferenciasdezonas

DNS:DomanNameSystem

INTRODUCCIN

Introduccin(1)
ElprotocoloIPasignadireccionesindividualesa todosloshostsenunaciertared Estasdireccionessonsimplementenmerosbinarios sinmayorestructura y ParaenviartrficoIPdeunhostaotroestoes tcnicamentemasquesuficiente Sinembargo,paralosusuariosdelaredes prcticamenteimposiblerecordaromanejarestos nmeros,espreferiblecontarconidentificadores textuales

Introduccin(2)
EncabezadoIPv4

Espaciodedirecciones:
32 bit 32bitsenIPv4 IP 4 128bitsenIPv6

Introduccin(3)
DNS:DomainNameSystem Propsitobsico: Propsito bsico:
TraducirnmerosIPennombrestextualesmasamigables paralosusuarioshumanosdelared

Propsitosadicionales:
Soporteadiferentesserviciosadarsobrelared
Correoelectrnico Subdelegacionesdenombres Resolucin reversa Resolucinreversa
Reverso:correspondencianombre>nmeroIP

Introduccin(4)
Requerimientosdelsistema:
Apoyo a diferentes consultas y aplicaciones Apoyoadiferentesconsultasyaplicaciones
Nombresdirectos,reversos,apoyoaaplicaciones

Distribucindelaadministracin
EnInternetnohayadministracincentralizadasinoquetodoes pornaturalezadistribuido.ElDNSdebesoportaryapoyaresta formadetrabajo.

Performanceadecuada
Lasconsultasdebenresponderselomasrpidamenteposible.

Confiabilidad adecuada Confiabilidadadecuada


ElDNSesobviamenteunapiezacrticadelainfraestructurade Internet,porloquedebeseraltamenteconfiable.

Introduccin(4)
ElDNScomobasededatos:
El objetivo principal del DNS es entonces almacenar ElobjetivoprincipaldelDNSesentoncesalmacenar informacindemapeoentrenombresynmerosIP
Directaeinversa

Elsistemaoperaentoncescomounabasededatos l b d d distribuidaenlaqueexistelaposibilidaddedelegarla administracindesectoresdelespaciodenombresa p diferentesorganizaciones

Introduccin(4)
Estructuradelosnombresdedominio:
4tonivel |3ernivel |2donivel |1ernivel |Raz

www.adinet.com.uy.
Hostname 2do TLD Raz delrbol

Comentarios:
Losnivelesdelrbolreflejanlasdivisionesadministrativas Elrootdelarbolestasiemprepresentedeformamplicita Nohayrestriccionesalacantidaddeniveles Losnivelessuperiores delegan hacia los inferiores Los niveles superiores deleganhacialosinferiores

Introduccin(5)
ElrboldelDNS

DNS:DomanNameSystem

CONCEPTOSBSICOSYOPERACIN CONCEPTOS BSICOS Y OPERACIN

Conceptosbsicos
Zonas
A cada dominio (incluyendo Acadadominio(incluyendo siemprealroot)lecorrespondelo quesedenominaunazona deDNS

Autoridad
Cadazonadefineunareginde autoridad donde se le reconoce el dondeselereconoceel derechoorganizacinque administralamisma
Respuestasautoritativas

Conceptosbsicos
Registros(Resource Records)
La informacin en la base de datos del DNS est LainformacinenlabasededatosdelDNSest estructuradaenunconjuntoderesource records:
SOA,A,NS,MX,PTR,TXT,etc.

CadaRRrepresentauntemdeinformacinenlabasede d d f l b d datosdeDNSquepuedeserconsultado

SOA: Start of Authority SOA: Start ofAuthority


Delimitaunazona Incluye a todos los RRs IncluyeatodoslosRRs delamisma
SOA:adinet.com.uy INA. INA. INMX

Conceptosbsicos:Resource Records
RRA:Address
Los registros A establecen las correspondencias entre LosregistrosAestablecenlascorrespondenciasentre direccionesIPynombresdedominio

RRCNAME:CanonicalName
Sonelequivalentedelosaliasesodeloslinkssimblicos.
Establecenunacorrespondenciaentredosnombres

E Enteorapararesolvercompletamentealadireccin l l l di i hacenfaltadosconsultas
EnlaprcticalosservidoresyadevuelvenelAcorrespondiente enlaseccinAdditional delaconsulta(yalovamosaver)

Conceptosbsicos:Resource Records
RRPTR:Pointer
LosregistrosPTRestablecenenlacesopunterosentrenombres deDNS,esmuysimilarconceptualmentealCNAME de DNS es muy similar conceptualmente al CNAME
Elprincipalusoesconstruireldominioin-addr.arpa quecontiene losreversos

RR SOA: Start of Authority RR SOA :Start ofAuthority


EstableceelcomienzodeunazonadeDNS,tienevarioscampos:
MNAME, RNAME:
dominioymailbox deladministrador

SERIAL:
numeroversin(32bits),usadoparasabersihaycambios

RETRY:
tiempo a esperar para reintentar una transferencia fallida tiempoaesperarparareintentarunatransferenciafallida

EXPIRE:
tiempoaesperarhastaconsiderarlazonanoautoritativa

MINIMUM:
TTLmnimoqueseexportaconcualquierRRqueserespondesobreesta zona

Conceptos bsicos:ResourceRecords
RRMX:MailExchanger
EachMXrecordspecifiesadomainname(whichmusthaveanArecord associatedwithit)andapriority;alistofmailexchangersisthenordered associated with it) and a priority; a list of mail exchangers is then ordered byprioritywhendeliveringmail.MXrecordsprovideonelevelof indirectioninmappingthedomainpartofanemailaddresstoalistof hostnameswhicharemeanttoreceivemailforthatdomainname. CriticalpartoftheinfrastructureusedtosupportSMTPemail.Definedin Critical part of the infrastructure used to support SMTP email. Defined in RFC1035.

RRNS:NameServer
Losgluerecords g Specifiesahostname(whichmusthaveanArecordassociatedwithit), whereDNSinformationcanbefoundaboutthedomainnametowhich theNSrecordisattached.NSrecordsarethebasicinfrastructureon ; y g f whichDNSisbuilt;theystitchtogetherdistributedzonefilesintoa directedgraphthatcanbeefficientlysearched.DefinedinRFC1035.

Otros RRs:
Informativos:TXT Locacin geogrfica:LOC Seguridad:KEY,KX,TSIG,DNAME

Conceptosbsicos
FormatodepaquetesDNS
Header
Encabezadodelprotocolo

Question
LapreguntaquehacemosalDNS
Tuplas (Name,Type,Class)

Header Question Answer Authority Additional

Answer
RRs querespondenlapregunta(siesque hay),tambinen(N,T,C)

Authority
RRs queapuntanaunaautoridad(opcional)

Additional
RRs queajuiciodelDNSpuedensertiles paraquienestpreguntando

Conceptosbsicos
FormatodepaquetesDNS(II)
Class
Identificalaaplicacin,enInternetes siempreIN

T Type
EltipodeRR
SOA,MX,A,etc.

Name
Elnombrecompletoporelqueestamos preguntandooporelqueseest preguntando o por el que se est respondiendo

Conceptosbsicos
FormatodepaquetesDNS(III)
Flags:
LospaquetesdeDNSllevanalgunosflags queafectanacomoelservidorinterpreta laconsultaotraeninformacion sobre la consulta o traen informacion sobre respuesta
bit bit bit bit bit bit bit 5 6 7 8 9 10 11 AA TC RD RA AD CD Auth. Answer [RFC1035] Truncated Response [RFC1035] Recursion Desired [RFC1035] Recursion Allowed [RFC1035] Reserved Authentic Data [RFC4035] Checking Disabled [RFC4035]

Conceptosbsicos
Primariosysecundarios
Cada zona tiene que tener al menos un servidor de Cadazonatienequeteneralmenos unservidorde nombresqueseaautoritativo paraella Esteeselprimario delazona Pormotivosderedundancia,serecomiendatenerunoo msservidoressecundarios paralamisma
Los secundarios tambin son autoritativos Lossecundariostambinsonautoritativos

Transferenciadezonas
Para no tener que configurar la misma informacin dos o Paranotenerqueconfigurarlamismainformacindoso tresveces,yparafacilitarlaoperacin,existeunprotocolo detransferenciadezonas(AXFR)

Conceptosbsicos
Terminologasobreconsultas
Consultas directas Consultasdirectas
Denombreadireccin
A

C Consultasreversas lt
Dedireccinanombre
PTR

Ojoconlasinversas

Conceptos bsicos:Transporte
Clientes yservidores pueden elegir entreTCPyUDP, losservidores DEBENatender enambos
UDPpuerto 53 TCPpuerto 53

UDP:
Elpreferido por clientes finales
Lasconsultas pueden truncarse (MTU)

TCP:
Elpreferido para las consultas recursivas servidorservidor
Lasconsultas nosetruncan

Operacin:Consultas
EsquemadeunaconsultaDNS

Operacin
EsquemadeunaconsultaDNS(II)
El PC final tiene un resolver local ElPCfinaltieneunresolver
Archivo/etc/hosts
Siaquhayunaentrada,serespondedesdeaqu

Apunta a un servidor DNS ApuntaaunservidorDNS

CadaDNStrataderesponderde:
Sushints Sucach Suszonasautoritativas

Cada DNS cachea de forma agresiva todo los RRs que sean CadaDNScacheadeformaagresivatodolosRRs quesean posibles
Hastacuando?Seguaporlostiemposestablecidosenlos registrosSOAyenlosTTLs

Operacin:Consultas
Esquema deuna consulta DNS(III)
Una consulta puede ser:
Norecursiva
Todos losservidores DEBENsoportarlas La respuesta final podr o no llegar Larespuesta finalpodr onollegar Dependiendo dehintsycachs

Recursiva
O i Opcional l Larespuesta finalSIEMPREes devuelta

Inversa
Cuando sebusca elnamedadouncierto RR NOconfundir conlaconsulta reversadenumeros IPa nombres

Operacin:Consultas
Esquema deuna consulta DNS(IV):
Recursin:
Estees elproceso atravs delcual elrbol seforma Siunservidor recibe una consulta por:
(IN A www.adinet.com.uy) (IN, A, di t )

Debe:
Buscar laraz Buscar eluy l Buscar elcom.uy Buscar eladinet.com.uy Buscar elwww.adinet.com.uy

Cuando decimos buscar decimos:


Seguir lapista delaautoridad

Operacin:RootServers
Comoarranca elproceso?Buscando laraz Rootservers Root servers
Sonuna serie deservidores bien conocidos repartidos en elmundo Todos losservidores DNScuando uno losinstala vienen un unhintfile delosrootservers

Comosesigue l laautoridad? d d?
Cada zona puede delegar subzonas aotros servidores Gl Gluerecords d
Sonregistros NS(nameserver)que apuntan auna subzona, realizando una delegacin deautoridad

Operacin:RootServers
(Fuente:Wikipedia)

Observacin:
di ib d i distributedusinganycastsignifica que existen mltiples i ifi i l i l copias enelmundo delosmismos

Operacin:RootServers
(Fuente:Wikipedia)

DNS:DomanNameSystem

HERRAMIENTAS

Herramientas:Dig
DIG

Herramientas:Dig
DIG:consultas reversas

Herramientas:Dig
DIG:Consulta contraza

Herramientas:nslookup
Eraelclsico
Un poco en desuso Unpoco endesuso Eslounico que viene conWindows Lineadecomando pura ointeractivo tipo shell

DNS:DomanNameSystem

SEGURIDADENDNS SEGURIDAD EN DNS

SeguridadenDNS
Aspectosprincipales:
CachPoisoning Cach Poisoning DNSamplification attacks Aseguramientodelastransferenciasdezona Certificacindeautoridad

Aspectosnodirectamenterelacionadosconel protocolo
VulnerabilidadesenelsoftwarequeimplementaDNS

SeguridadenDNS:CachPoisoning
Elcachpoisoning esunatcnicaporlacuales p posibleengaaraunservidorDNSyhacerlecreer g y querecibi informacinautnticayvlida g y Elservidorluegocacheaesainformacinylautiliza pararesponderotrasconsultashastaladuracinel TTLdelosRRs cacheados Deestaformapropagaelengaodownstream Paraqu?
Redirigirtrficoasitiostomados,pharming Robodeinformacin

SeguridadenDNS:CachPoisoning (II)
Cmo?
Recordarquelosserverscacheanagresivamentelaseccin Additional delarespuesta Truco:devolverelengaoenestaseccin
El atacante debe tener un DNS server bajo su dominio con una ElatacantedebetenerunDNSserverbajosudominio,conuna zonaautoritativa.

Ejemplo:
U li UnclientepreguntaalDNSdegood.orgporelMXde l DNS d d l MX d bad.org LarespuestatraeelMXdebad.orgyademstrae,por ejemplo:
ns.banco.com.uy IN A X.Y.Z.W X.Y.Z.WeslaIPdelDNSdebad.orgocualquierotroequipo g q q p malicioso

SeguridadDNS:CachPoisoning (III)
Cachpoisoning via DNSforgery
Inyectar paquetes de respuesta antes que el verdadero Inyectarpaquetesderespuestaantesqueelverdadero servidordenombresenunaconsultarecursiva Implicaadivinarunnonce de16bits
Esloqueseusaparaatarpreguntasconrespuestas Puedenosertancomplicado,esunejemplodeunbirthday attack

SeguridadenDNS:DNSamplification
DDoS via DNSamplification
EsunaformadelograrDDoS aprovechandoservidoresDNS querespondenconsultas recursivasparacualquiera
Estodesdesiempresesupoqueno eraunabuenaprctica,pero

Componentes:
ConsultasconIPs spoofed
Generarreflexionesaotroslugares, clsicousodelspoofing clsico uso del spoofing

DNSamplification
Cmoesposible?UsandoUDP, nohay3wayhandshake! h 3 h dh k !

SeguridadDNS:DNSamplification (II)
Primerpaso:
Hacer que muchos servidores de nombres guarden en Hacerquemuchosservidoresdenombresguardenen cachunoomasregistrosgrandes
TpicamenteseusanTXTs queresideenunservidorbajocontroldel atacante.Ellargomximo(RFC1035)esde255caracteres,perose atacante El largo mximo (RFC 1035) es de 255 caracteres pero se puedenponervarios. Estosepuedehacerconsultndolosporeseregistro,yesto funcionasiemprequelosservidoresamplificadoressoporten funciona siempre que los servidores amplificadores soporten recursin

Elpaquetedeconsultaespequeo,p.ej.20bytes Larespuestapuedellegaraserde1Ka4K!

SeguridadDNS:DNSamplification (III)
Segundopaso:
Realizarlasconsultasspoofed conIPdeorigenladela vctima
LasconsultassehacenporlosregistrosTXTqueesperamosesten en elcachdetodoslosrecursivosintermedios

Reir!!!

Algnnumero:
20 20servidoresrecursivos id i Amplificacin100X
20bytes>2Kbytes y y

ADSLde512Kbps Trficodeataque:1Gbps
512 Kb * 100 * 20 512Kbps*100*20

Seguridad enDNS:AXFRs
Transferencias dezona:
Necesario para implementar esquemas dereplicacin primario secundarios d

Problemas:
Exposicin de la informacin delainformacin
Por defecto las zonas viajan entexto plano

Denegaciones deservicio
Si cualquiera puede disparar un AXFR y como los AXFRs son Sicualquiera unAXFR,ycomo losAXFRsson potencialmente demuchos RRs,sepueden generar DoS locales

Soluciones:
Buenas prcticas de filtrado defiltrado Cifrado enlas transferencias
Propios delDNS Establecer esquemas d bl deVPNuotros tneles cifrados l f d

Seguridad enDNS:Autoridad
Porqu?
Si un atacante logra mentir sobre la autoridad sobre una Siunatacante laautoridad zona puede envenenar cachs yredirigir trfico avoluntad Nosoloencaso deataques,sino tambin encasos de disputas comerciales,surgecada vez mas como una d l d necesidad elpoder certificar laautoridad deuna organizacin sobre una zona g

Propuestas
Protocolo DNSSEC
Esquema dePKIapoyado enelpropio arbol delDNS
Leito sabe mas que yo deesto

DNS:DomanNameSystem

COMENTARIOSFINALES COMENTARIOS FINALES

Comentarios finales
Esta presentacion apenas rasca untema muy vasto Paracompletar unpanoramacompleto deltema Para completar un panorama completo del tema faltaria:
Hacer unpequeno tutorialsobre como configurar unDNS p q g conBIND9
Repasando conceptos mas especificos delas implementaciones, como ser el de las views sereldelas

Hablar mas endetalle decomo seimplementa elmapeo reverso ydelazona inaddr.arpa Hablar mas endetalle deDNSSEC Hablar mas endetalle delosposibles ataques alDNS,los que estan nombrados aca y los que no ylosque

DNS:DomanNameSystem

GRACIASPORSUATENCION! PREGUNTAS?

You might also like