Ataques(contra(el(DNS(
Dave(Piscitello(
VP(Security(and(ICT(Coordina:on(
27(June(2016(
[email protected](
Introducción
• VP(Security(and(ICT(Coordina:on,(ICANN(
• 40(year(network(and(security(prac::oner(
• Roles(at(ICANN:(
• Technology(Advisor(
• Threat(responder(
•
Inves:gator(
• Researcher(
| 2
Part(1(
• ¿Cómo(funciona(el(DNS?(
• Vistazo(y(ejemplos(de(los(escenarios(de(
ataque(en(el(DNS(
| 3
¿Qué es el Sistema de Nombres de Dominio?
Una(base(de(datos(distribuida(usada(
primordialmente(para(obtener(la(dirección(
192.168.23.1(o(fe80::226:bbff:fe11:5b32(
numérica(
(
asociada(a(un(nombre(
humanamente(recordable(
(www.ejemplo123.com)(
(
(
(
!
| 4
Estructura de la base de datos del DNS
La(estructura(formal(de(la(base(de(datos(del(DNS(es(un(
árbol(inver:do(con(la(raíz(en(la(punta(superior(
La(raíz(se(designa(
usando(un(“punto”(
Nodo(de(alto(nivel(
Nodo(de(2do(nivel( Nodo(de(2do(nivel(
Cada(nodo(:ene(
una(e:queta(
Nodo(de(alto(nivel(
Nodo(de(2do(nivel( Nodo(de(2do(nivel(
Nodo(de(alto(nivel(
Nodo(de(2do(nivel(
(
(
Raíz(
(
(
(
(
(
(
(
(
(
(
Nodo(de(3er(nivel(
El(DNS(es(un(espacio(de(nombres((namespace)(público(
Nodo(de(3er(nivel(Nodo(de(3er(nivel(
Es(uno,(de(muchos(usados(en(el(Internet.(
(
5(
| 5
Nombres(de(dominio(y(e:quetas(
Cada(nodo(en(el(espacio(de(nombres(del(DNS(:ene(una(e:queta(
El(nombre(de(dominio(de(un(nodo(es(una(lista(de(las(e:quetas(
desde(el(nodo(hasta(la(raíz(
nododaltodnivel(
Nodo(2do(nivel(
2do(nivel(
Nodo(3er(nivel(
Dominio(3er(nivel(
ej.(
WWW(
nodo(raíz(
Nodo(raíz(
.”(
3rddlevel(node(
Dominio(2do(nivel(
3rddlevel(node(
ej.((
Dominio(de(Alto(
topdlevel(node(
Nivel(ej.(
COM(
2nddlevel(node(
topdlevel(node(
2nddlevel(node(
2nddlevel(node(
(
(
(
(
(
(
Cuando(todas(las(e:quetas(
EJEMPLO(
están(presentes,(se(llama(
FULLY%QUALIFIED%DOMAIN%NAME%(FQDN)%
Los(FQDNs(son(únicos(a(nivel(
global(en(el(DNS(público(
6(
| 6
Elementos(operacionales(del(DNS(
• Los(servidores(de(resolución(autorita:vos(alojan(
información(de(las(zonas(
– Los(datos(de(DNS(publicados(por(el(registrante(
• Resolutores(recursivos((“resolutores”)(
– Sistemas(que(encuentran(respuestas(a(consultas(al(DNS(
• Resolutores(de(memoria(temporal((cache)(
– Resolutores(recursivos(que(encuentran(y(guardan(
localmente(respuestas(por(un(período(de(:empo(=(TTL(
• Clientes(o(resolutores(de(cliente(
– Sokware(en(aplicaciones,(aplicaciones(móviles(o(sistemas(
opera:vos(que(consultan(al(DNS(y(procesan(las(respuestas(
7(
| 7
El(DNS(es(como(el(directorio(del(Internet(
• Los(resolutores(de(cliente(
envían(consultas:(
– Sokware(en(aplicaciones,(
aplicaciones(móviles(o(
sistemas(opera:vos(que(
consultan(al(DNS(y(
procesan(las(respuestas(
– Los(resolutores(
recursivos(encuentran(
las(respuestas(con(
información(del(DNS(
¿Cuál(es(la(
dirección(IPv6(de(
www.icann.org?(
My PC
dns1.icann.org
Yo(encuentro(esa(
respuesta(
8(
| 8
El(DNS(actúa(como(un(directorio(telefónico(
¿Cómo(encuentra(un(resolutor(la(dirección(de(ICANN.ORG?(
• La(encuentra(enviando(preguntas(de(forma(reitera:va(
m.root-servers.net
dns.icann.org
2
3
1
8
6
7
4
5
a0.org.afilias-nst.info
www.icann.org?
ns1.icann.org
9(
| 9
¿Qué es caching?
• Los(resolutores(pueden(
guardar(en(memoria(
temporal(los(registros(de(DNS(
que(reciben(de(otros(
servidores(de(DNS(
– Acelera(la(resolución(
– Ahora(ancho(de(banda(
– Respuestas(nodautorita:vas(
• Los(registros(guardados(en(
memoria(temporal(son(
válidos(para(siempre?(
– No.(El(campo(TTL(()me!to!live)(
en(el(registro(de(DNS(indica(su(
:empo(de(validez.(
¿Cuál(es(la(dirección(
IPv6(de(
www.icann.org?(
My PC
Mi resolutor local
Guardo(
temporalmente(la(
respuesta(
www.icann.org(
AAAA(2001:500:88:200::7(
Servidor autoritativo
de ICANN
10(
| 10
Resumiendo…
1 El DNS es una base de datos pública,
distribuida
2 El DNS nos permite usar nombres, en lugar
de números, para navegar en Internet
3
Los elementos operacionales del DNS
abarcan desde infraestructura crítica
hasta dispositivos de usuario
| 11
Agenda
• ¿Cómo(funciona(el(DNS?(
• Atacando(al(DNS(
| 12
Motivaciones para atacar al DNS
Los!diferentes!
actores!)enen!
mo)vaciones!o!
incen)vos!
específicos!para!
atacar!
infraestructuras!
crí)cas,!
incluyendo!el!DNS!
¿En(dónde(quedan(el(cíber(
crimen(y(el(cíber(espionaje?(
| 13
Superficie de ataque del DNS
Obje3vo%
Servidor%
Autorita3vo%
Servidor%
Recursivo%
Resolutor%
de%
Cliente%
Ancho(de(banda(de(acceso(
Elementos(de(acceso(a(red(
NS(o(disposi:vo:(
Hardware(
Sokware(Sistema(Op.(
Sokware(nameserver(
Cache(
Sokware(de(aplicación(
Administración(
Configuración(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
✔(
| 14
Ataques contra servidores de resolución
• “Exploit(to(fail”(Ataque(de(DOS(
• “Exploit(to(own”(Ataque(de(DOS(
• Ataque(de(reflexión(
• Ataque(de(amplificación(
• Ataque(de(DDoS(
• Ataque(de(envenenamiento(de(memoria(
temporal(
• Ataque(de(agotamiento(
Veamos!algunos!ejemplos…!
| 15
“Exploit To Fail” Ataque de DOS
• Explotar(una(vulnerabilidad(en(algún(
elemento(de(la(infraestructura(de(un(servidor(
de(resolución(para(interrumpir(el(servicio(de(
resolución(
• Ejemplo:(Inyección(de(mensaje(malicioso(de(
DNS(hrp://www.cvedetails.com/cve/CVEd2002d0400/(
Atacante(
(
Name(Server(
corriendo(BIND(
Mensaje(de(DNS(
malformado((ej.(
CVEd2002d0400)(
El(nameserver(
falla(al(procesar(
el(mensaje(
| 16
“Exploit To Own” Ataque de DOS
• Explotar(una(vulnerabilidad(en(algún(
elemento(de(la(infraestructura(de(un(servidor(
de(resolución(para(ganar(privilegios(de(admon(
• Ejemplo:(Ejecución(arbitraria/remota(de(
código(hrp://www.kb.cert.org/vuls/id/844360(
Atacante(
Nameserver(
corriendo(BIND(
Consulta(de(DNS(
manipulada,(ej.(
VU#844360(
El(mensaje(
provoca(un(
BUFFER!
OVERFLOW,(el(
atacante(puede(
ejecutar(código(
arbitrario(
| 17
Ataque(de(reflexión(
Atacante(
Resolutor(Abierto(
Consulta(de(DNS(
Falsifique(dirección(IP(
de(víc:ma:(10.0.0.1(
IP(de(víc:ma:(
10.0.0.1(
falsifica(la(IP(de(la(
víc:ma(
• Envía(consultas(al(
resolutor(abierto(
• El(atacante(
• El(resolutor(
responde(a(la(
víc:ma(
| 18
Ataque de reflexión y amplificación
Atacante(
Consulta(de(DNS(
Falsifica(dirección(de(
la(víc:ma:(10.0.0.1(
Víc:ma:(
10.0.0.1(
Resolutor(abierto(
• Atacante(falsifica(
dirección(de(
víc:ma(
• Atacante(envía(
consultas(a(
recursores(para(
que(envíen(
respuestas(
enormes(
• Resolutores(
responden:(
paquetes(enormes(
• Las(respuestas(
agotan(recursos(de(
la(víc:ma(
| 19
Ataque distribuido de reflexión y amplificación
Atacantes(
Consulta(de(DNS(
Resolutor(abierto(
Consulta(de(DNS(
Consulta(de(DNS(
Todas(las(fuentes(
falsifican(dirección(
de(víc:ma:(10.0.0.1(
Víc:ma:(10.0.0.1(
• Dispara(
ataque(desde(
miles(de(
disposi:vos(
• Reflexión(a(
través(de(
resolutores(
abiertos(
• Envían(miles(
de(respuestas(
PESADAS(a(la(
víc:ma(
| 20
Ataque de DOS – Agotamiento de
Recursos
• Atacante(envía(
Resolutor(abierto(
Atacante(
TCP(SYN(
TCP(SYN(
TCP(SYN(
Falsifica(dirección(
de(víc:ma:(10.0.0.1(
Víc:ma:(10.0.0.1(
mensajes(de(DNS(
masivamente((vía(
TCP(desde(IP(
falsificada(
• Nameserver(
reserva(recursos(
para(todas(esas(
conexiones(hasta(
que(agota(sus(
recursos(
• Resolución(de(
nombres(se(
degrada(o(
interrumpe(
| 21
Envenenamiento(básico(de(cache(
El(atacante(
– Envía(campaña(de(spam(con(
links(a(
hrp://loseweighwastnow.com(
– El(nameserver(del(atacante(
responde(con(información(de(
DNS(maliciosa(sobre(ebay.com(
– Los(resolutores(que(son(
vulnerables(añaden(la(
información(maliciosa(a(su(
memoria(cache(
– La(información(maliciosa(dirigirá(
a(las(víc:mas(a(un(si:o(de(
phishing(the(eBay(mientras(esa(
entrada(de(data(del(DNS(sea(
váida(
¿Cuál(es(la(IP(de(
loseweighwastnow.com?(
Mi PC
Guardo(esta(
respuesta(en(mi(
cache:(
www.ebay.com((
Mi resolutor local
loseweighwastnow.com(IPv4(
está(en(192.168.1.1((
ADEMÁS%www.ebay.com*está*
en*192.168.1.2(
nameserver criminal
22(
| 22
Agotamiento de memoria NXDOMAIN
• El(atacante(inunda(el(resolutor(con(consultas(de(DNS(respecto(
de(dominios(no(existentes(
• El(resolutor(intenta(resolver(las(consultas(y(añade(cada(
respuesta(NXDOMAIN(a(su(memoria(cache(
• La(memoria(cache(del(resolutor(se(llena(de(respuestas(inú:les(
• El(procesamiento(de(consultas(legí:mas(se(degrada(o(interumpe(
Atacante(
Consulta(DNS(de(
dominio(inexistente(
Consulta(DNS(de(
dominio(inexistente(
Consulta(DNS(de(
dominio(inexistente(
Resolutor(
Cache(llena(de(
respuestas(
NXDOMAIN(
Ataque de phantom domain tiene efectos similares
| 23
Ataques contra resolutores de cliente
• Ataque(de(interceptación(de(consulta(
• Modificación(de(respuesta(de(DNS(
– Llamada(también(Name(Error(resolu:on(
• Ataque(de(envenenamiento(de(configuración(
• Ataque(de(overflow(de(DNS(hostname((
!
Veamos!algunos!ejemplos…(
| 24
Interceptación de consultas (DNS Hijacking)
• Un(hombredendeldmedio((MITM)(o(a(través(de(un(ataque(de(
spoofing,(envía(consultas(de(DNS(a(nameserver(que(
responde(con(información(manipulada(
– Puede(ocurrir(usando(un(proxy(de(DNS,(un(router(o(servidor(
comprome:do,(ARP(poisoning,(o(‘gemeleando’(accesos(Wifi(
Resolutor(malicioso(
Nameserver(
malicioso(envía(
dirección(falsa(del(
banco(
Gemelo(malicioso(o(
router(comprome:do(
redirige(consultas(de(DNS(
a(nameserver(del(
atacante(
Ruta%manipulada%
Gemelo(malicioso(
R u t a % m a n i p u l a d a %
Ruta%legí3ma%para%transacciones%con%el%banco%
8/16/16(
25(
| 25
Web(del(
banco(
falso(
Banco(
legí:mo(
Modificación de respuestas
Nameserver(de(example.com(
¿Cuál(es(la(dirección(
de(
ww.example.com?(
ww.example.com(
no(existe(
(NXDOMAIN)(
192.168.12.113(
Respuesta%manipulada%
La(dire
Comentarios de: Ataques contra el DNS (0)
No hay comentarios