Title: DNS Security Extensions DNSSEC
1DNS Security Extensions (DNSSEC)
DNSSEC
- Aplicaciones distribuidas avanzadas
- (curso 2002/2003)
2Apartados
- Introducción a DNS.
- Vulnerabilidades en DNS.
- DNSSEC (RFC2535).
- DNSSEC (TSIG/SIG0).
- DNSSEC KEY/SIG/NXT.
- Firma dominios locales.
- Redes de confianza (chain of trust).
- Caso práctico Autenticación en BGP.
3Introducción a DNS.
Pregunta www.dit.upm.es A
root-server
www.dit.upm.es A ?
ask es server _at_ ns1.nic.es
www.dit.upm.es A ?
Resolver
138.4.2.61
www.dit.upm.es A ?
ns1.nic.es
ask upm server _at_ einstein.ccupm.upm.es
www.dit.upm.es A ?
www.dit.upm.es A ?
138.4.2.61
einstein.ccupm.upm.es
dns.dit.upm.es
ask dit server _at_ dns.dit.upm.es
4Introducción a DNS (II).
5Vulnerabilidades en DNS
Corrupting data
Impersonating master
Cache impersonation
Zone file
master
Caching forwarder
Dynamic updates
slaves
resolver
Cache pollution by Data spoofing
Unauthorized updates
Server protection
Data protection
6DNSSEC (RFC2535)
- DNSEC ofrece
- Protección entre servidores (master?slave).
- DNSSEC (TSIG/SIG0) permite la autenticación entre
servidores, asegurando la transferencia de zonas. - Protección datos.
- DNSSEC (KEY/SIG/NXT) establece mecanismos de
autenticación e integridad de datos - DNSSEC (DS) permite un mecanismo de seguridad
distribuida basado en el establecimiento de redes
de confianza (Chains of Trust) - Una infraestructura de distribución de claves
públicas ?? - Posible utilidad en el establecimiento de túneles
IPSEC dinámicos (Opportunistic IPSEC)
7DNSSEC (TSIG/SIG0) Protección entre servidores
Impersonating master
Zone file
master
Caching forwarder
Dynamic updates
slaves
resolver
8Transaction Signature TSIG
Transaction Signature TSIG
- TSIG (RFC 2845)
- Autenticación entre las partes basada en firmas
digitales. - Algoritmos HMAC-MD5.
- Uso de claves simétricas previamente
establecidas. - Independiente de otros servicios DNSSEC.
Query AXFR
Master
Slave
KEYsgs!f23fv
KEYsgs!f23fv
Response Zone
9Transaction Signature TSIG
- Configuración TSIG en BIND 9
- generar claves simétricas
- dnssec-keygen -a HMAC-MD5 -b 128 -n HOST
master-slave.upm.es. - configurar servidor secundario (slave)
- server 192.249.249.1
- keys master-slave.upm.es.
-
- configurar servidor primario (master)
- zone " upm.es"
- type master
- file "db.upm.es"
- allow-transfer key master-slave.upm.es.
-
10DNSSEC KEY/SIG/NXT Autenticación e Integridad de
datos
cache Impersonation
Zone file
master
Caching forwarder
Dynamic updates
slaves
resolver
11DNSSEC New RRs
- Existentes en DNS
- Resource Record
- www.ripe.net. 7200 IN A 192.168.10.3
- RRset conjunto de RRs
- www.ripe.net. 7200 IN A 192.168.10.3
- A 10.0.0.3
- A 172.25.215.2
- Nuevas extensiones DNSSEC
- SIG firma de RRset, mediante clave privada.
- KEY clave pública, necesaria para verificar SIG.
- DS Delegation Signer, permite construir redes de
confianza. - NXT Indica el siguiente RRset dentro de una zona
- necesario para autenticar la NO existencia de
datos.
12KEY RDATA
- 16 bits FLAGS
- 8 bits protocol
- 8 bits algorithm
- N32 bits public key
- Example
- ripe.net. 3600 IN KEY 256 3 5 (
- AQOvhvXXU61Pr8sCwELcqqq1g4JJ
- CALG4C9EtraBKVdvGIF/unwigfLOA
- O3nHp/cgGrG6gJYe8OWKYNgq3kDChN)
13SIG RDATA
- 16 bits - type covered
- 8 bits - algorithm
- 8 bits - nr. labels covered
- 32 bits - original TTL
ripe.net. 3600 IN SIG A 1 2 3600
( 20030604144523 20030504144523 3112
ripe.net. VJ8ijXvbrTLeoAiEk/q
MrdudRnYZM1VlqhN
vhYuAcYKe2X/jqYfMfjfSUrmhPo0/GOZjW
66DJubZPmNSYXw )
14NXT RDATA
- Especifica el siguiente registro en la zona.
- Permite comprobar la Inexistencia de un registro.
- ORIGIN ripe.net.
- _at_ SOA ..
- NS NS.ripe.net.
- KEY ..
- NXT mailbox.ripe.net. SOA NS NXT KEY SIG
- mailbox A 192.168.10.2
- NXT www.ripe.net. A NXT SIG
- WWW A 192.168.10.3
- NXT ripe.net. A NXT SIG
- Una consulta popserver.ripe.net tendría como
resultado - aa bit set RCODENXDOMAIN
- authority mailbox.ripe.net. NXT www.ripe.net.
A NXT SIG
15Firma dominios locales
- Generación pares claves (Zone Signing Key, Key
Signing Key). - Firma de la zona
- ordenación alfabética.
- añade NXT records.
- incluye SIG records (firman cada RRset).
- Distribución de clave pública, dos opciones
- 1. La clave es distribuida a los interesados de
forma manual. - 2. incluyendo DS records (se establecen redes de
confianza).
16Firma dominios locales (II)
ORIGIN kids.net. _at_ NS ns1 SIG NS ()
kids.net. KEY () (1234) KEY () (3456)
SIG key 1234 kids.net. SIG key 3456
kids.net. beth A 127.0.10.1 SIG A
() 3456 kids.net. ns1 A 127.0.10.3
SIG A () 3456 kids.net.
ORIGIN net. kids NS ns1.kids DS ()
1234 SIG DS ()net. money NS ns1.money
DS () SIG DS ()net.
17Redes de confianza (chain of trust)
18Caso práctico Autenticación en BGP.
19Conclusiones
- DNSSEC amplía a DNS definiendo procedimientos,
extensiones de seguridad. - DNSSEC supone mayor complejidad (administrativa)
que la versión actualmente en uso (DNS). - DNSSEC permitiría definir una nueva forma
(redundante, tolerante a fallos, distribuida) de
autenticación de servicios basada en clave
pública. - En la actualidad DNSSEC es soportado por las
últimas versiones de BIND, si bien es de esperar
cambios en las especificaciones finales del
protocolo.