SlideShare a Scribd company logo
1 of 33
1	

An Overview of DNSSEC
TATT Workshops, Port of Spain	

Carlos Martínez-Cagnazzo	

carlos @ lacnic.net
DNSSEC
•  Cryptography 101
•  DNSSEC
•  Where DNSSEC ?
•  How does DNSSEC work ?
•  New Resource Records
•  Trust Chains
2
CRYPTOGRAPHY
3
Cryptography
•  Cryptography concepts we'll need for DNSSEC
u  Public-key Cryptography
u  Hashing algorithms
u  Digital signatures
u  Trust Chains
4
Cryptography (ii)
•  Let's imagine two parties which need to communicate in
a private manner. They will like to see certain
properties enforced in their data exchanges.
u  They'd like to be sure that no one else has been able to
read their messages (privacy property)
u  They'd like to be sure that no one else has been able to
change or alter their messages (integrity property)
u  They'd like to be sure that the party who sends a
message is really who it claims to be (authentication
property)
5
Symmetric Cryptography
[Source: Stallings]
6
•  E[.] y D[.] are two functions
both which are inverse
mappings of each other
•  D[ E [X] ] = X
K (the key) is a
parameter
introduced to ease
compromise
recoveries
•  Symmetric Cryptography
•  DK[ EK [X] ] = X
Cryptographic Hashes
•  H is a transformation with the following properties
u  p << n
u  For each algorithm ”p” is a given value
u  len(H) is fixed regardless of len(M)
•  This means that collisions do exist
•  Collision: If for a pair M1 and M2, H(M1) == H(M2), then M1 and
M2 represent a collision
•  If H() is chosen and designed carefully then finding collisions is
very difficult
Cryptographic Hashes (ii)
•  Intuitively
u  The more "random" the result of a hash "looks", the
better it is
•  Some well-known algorithms:
•  MD5
•  p=128 bits
•  SHA1 / SHA256
•  p=160 / 256 bits
Public-key Cryptography
•  Key distribution was always the weak point in traditional
(symmetric) cryptography
•  A lot effort was put to find workarounds and alternatives
•  Breakthrough: (Diffie-Hellman ca. 1976) “Public-key
Cryptography”
•  A public-key cryptosystem has the following properties:
u  DK1[ EK2 [X] ] = X
u  D cannot be easily found even if E is known
u  E cannot be broken with a chosen plaintext attack
9
Public-key Cryptography (ii)
•  Each party generates a keypair, that is one public and
one secret key
u  Kpub, Kpriv
u  Both keys in the pair are related
•  If one is given the other is also given
•  When transmitting a message “X” from A -> B the
following computation takes place:
u  Y = E [ KpubB, X]
•  When B receives the encrypted message the following
computation takes place:
10
Public-key Cryptography (iii)
•  [Source: Stallings]
11
Digital Signatures
•  Goal:
u  Create integrity
proofs of digital
documents
•  Usually
implemented using
public-key
cryptography
12
Digital Signatures (iii)
•  Given M, a digital document to be signed by party
A(lice) to be received by party B(ob)
u  A computes:
•  A hash for M, H = Hash[M]
•  A signature for M, F = E[ KprivA, H]
u  A sends the pair {M, F} to B
•  When B receives the encrypted message the following
computation takes place:
u  A hash for M, H' = Hash[M]
u  The hash of the signature is recalculated, H = D[ KpubA,
F]
u  Is the signature VALID ? Is H == H’ ??
13
Digital Signatures (iii)
•  Trust Chains
u  Each level in the hierarchy
signs data in the next one
u  The root needs to be
analyzed separately
u  Validation can be either
•  Top down
•  Up down
14
DNSSEC: MOTIVATION
15
Protocol Specification
•  Overview of DNS's wire packet format
u  Header
•  Protocol header
•  Flags (QR, RA, RD,…)
u  Question Section
•  Query we send to the DNS server
u  Tuples (Name, Type, Class)
u  Answer Section
•  RRs that answer the query (if any are
available), also in (N, T, C) tuple format
u  Authority Section
•  RRs pointing to authoritative servers (optional)
u  Additional Section
•  RRs that may be useful to the querying client
(according to the server answering the query)
Header
Question
Answer
Authority
Additional
DNS Queries
local resolver local recursive
DNS server
Other
authoritative
servers
Attack Vectors in DNS
Vulnerabilities in DNS
•  DNS transmitted data is more prone to spoofing as it is
mostly transported over UDP
u  Between master and slaves (AXFR)
u  Between masters and clients (AXFR) “resolver”
•  Currently the DNS protocol does not have a way to
validate information found in a query response
u  Vulnerable to different poisoning techniques
u  Poisoned data can be a problem for long periods of time
depending on the TTL values of the zones
•  Neither do slave servers have a way to authenticate the
master servers they're talking to 19
Introducing DNSSEC
•  Threat analysis in the DNS system
u  RFC 3833: “Threat Analysis of the Domain Name System
(DNS)”
•  DNSSEC:
u  “DNS Security Extensions”
u  RFC 4033, 4034, 4035
u  ~ May 2005
20
What does DNSSEC Protect us
from?
•  DNSSEC will protect us from data corruption and
spoofing
u  It provides a way to validate both the integrity and the
authenticity of the records contained in a DNS zone
•  DNSKEY/RRSIG/NSEC
u  It provides a way to delegate trust in public keys (trust
chains)
•  DS
u  It provides a way to authenticate zone transfers between
masters and slaves
•  TSIG
21
DNSSEC Introduction
•  DNSSEC is not a new protocol
•  Is a set of extensions to the DNS protocol as we know
it
u  Changes to the wire protocol (EDNS0)
•  Maximum UDP query response extended from 512 to 4096
bytes
u  New resource records added
•  RRSIG, DNSKEY, DS, NSEC
u  New flags added
•  Checking Disabled (CD)
•  Authenticated Data (AD) 22
DNSSEC Introduction (2)
•  New RRs
u  RRSIG: Resource Record Signature
u  DNSKEY: DNS Public Key
u  DS: Delegation Signer
u  NSEC: Next Secure
•  New Flags:
u  AD: authenticated data
u  CD: checking disabled
23
DNSSEC Introduction (3)
•  A resource record in DNS is a five-value tuple
u  (name, class, type, TTL, value)
•  The record:
u  www.company.com. 86400 IN A 200.40.100.141	
u  Is represented by the tuple:
•  Name (www.company.com)
•  Class (IN)
•  Type (A)
•  TTL (86400 seconds)
•  Value (200.40.100.141)
24
DNSSEC Introduction (4)
u  Resource Record Sets (RRSets)
•  DNSSEC works by signing RRSets (not individual RRs)
•  An RRSet is a set of resource records that share the same:
u  Class
u  Type
u  Name
u  Sample RRSet (TTL omitted for clarity)
•  www IN A 200.40.241.100	
•  www IN A 200.40.241.101	
25
DNSSEC Introduction (5) Zone
Signing
•  A key pair is created for each zone
u  Each zone has at least one key pair
u  The private key is kept, well, private
•  The private key is used to sign the RRSets in the zone
u  The public key is published in DNS using DNSKEY
records
•  The private key is also used to verify the signatures of the
RRSets
u  An RRSet can have multiple signatures generated using
different key pairs
26
DNSSEC Introduction (6)
•  The digital signature of a RRSet is returned in a special
RRSIG record with the query answer
•  Example:
27	

~ carlosm$ dig +dnssec www.nic.se	
	
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 1	
	
;; ANSWER SECTION:	
www.nic.se. 	 	60 	IN 	A 	212.247.7.218	
www.nic.se. 	 	60 	IN 	RRSIG 	A 5 3 60 20101021132001
20101011132001 23369 nic.se. HeeUZ5h5iExK5uU1SuNRIf2Dbmh2/
aWV8FkjmzixUzTAVrHv39PfmfnG DHdHoZxoz85hqqYiWb
+t9EZh5+iqxQk8AxRDic9Nn6WxifOoWeS+IUKQ
rVyqXf1NtkZvu1A325vwa8obtbeVGVkhqg6bDIjKYeHixjlQ4cRoFcEW Izk=	
	
;; AUTHORITY SECTION:	
nic.se.	 	 	2974 	IN 	NS 	ns3.nic.se.	
nic.se.	 	 	2974 	IN 	NS 	ns2.nic.se.	
nic.se.	 	 	2974 	IN 	NS 	ns.nic.se.	
nic.se.	 	 	3600 	IN 	RRSIG 	NS 5 2 3600
20101021132001 20101011132001 23369 nic.se. GSzAUC3SC3D0G/
iesCOPnVux8WkQx1dGbw491RatXz53b7SY0pQuyT1W
eb063Z62rtX7etynNcJwpKlYTG9FeMbDceD9af3KzTJHxq6B+Tpmmxyk
FoKAVaV0cHTcGUXSObFquGr5/03G79C/YHJmXw0bHun5ER5yrOtOLegU IAU=
Trust Chains
•  How do clients verify a zone's RRSets?
u  It queries for the corresponding DNSKEY
u  The necessary computations are carried out and then
compared with the signature in the RRSIG
•  If they match the signatures are valid
•  But, how can we trust the DNSKEY? It listed on the
same zone we want to verify!
u  We need to validate the trust chain
28
Trust Chains (ii)
•  DS Record “Delegation Signature”
u  DS records "sign" the keys in their child zones
u  In this way one can also verify the DNSKEY as it is
signed when the parent zone is signed
•  DS records contain a hash of the public key
u  That is a hash of the DNSKEY's record content
•  DS records in the parent zone are signed with the keys
of the parent zone
•  To complete the full trust chain we also need the root
of the DNS to be signed
29
Trust Chains (iii)
•  What about the root zone ?
u  The root zone has no parent zone where a DS record
could be placed
u  The DNS root has been signed since July 2010
•  [ http://www.root-dnssec.org ]
u  The DS record for "." is obtained out-of-band and
installed locally in each server
•  [ http://data.iana.org/root-anchors/root-anchors.xml ]
•  . IN DS
49AAC11D7B6F6446702E54A1607371607A1A41855200F
D2CE1CDDE32F24E8FB5
30
DNSSEC Introduction (9) Root
Zone Signing
•  How is the the root trust anchor verified?
•  It is verified also out-of-band
u  It can be downloaded using http/https
u  Several validation mechanisms are in place (X.509 certs,
PGP signatures)
u  It is locally installed in the same way the root zone itself is
configured locally
31
DNSSEC Introduction (10) Denial
of Existence
•  "NXDOMAIN" answers
u  Provide “denial of existence” answers via a flag on the
“Header” pseudo-section
u  NXDOMAINS are cached in the same way as other
responses are
u  Forging NXDOMAINs is a DDoS attack vector
•  How can non-existence be signed ?
u  We need an RRSet to sign
•  Remember that DNSSEC always signs RRSets
u  Two different techniques have been proposed:
•  NSEC and NSEC3 32
Thank You!
Questions?
33

More Related Content

What's hot

Understanding the DNS & DNSSEC
Understanding the DNS & DNSSECUnderstanding the DNS & DNSSEC
Understanding the DNS & DNSSECICANN
 
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017APNIC
 
CNIT 40: 6: DNSSEC and beyond
CNIT 40: 6: DNSSEC and beyondCNIT 40: 6: DNSSEC and beyond
CNIT 40: 6: DNSSEC and beyondSam Bowne
 
Minieri CS6262 Project Poster
Minieri CS6262 Project PosterMinieri CS6262 Project Poster
Minieri CS6262 Project PosterJoe Minieri
 
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]APNIC
 
Hardening the Core of the Internet
Hardening the Core of the InternetHardening the Core of the Internet
Hardening the Core of the InternetRIPE NCC
 
CNIT 40: 2: DNS Protocol and Architecture
CNIT 40: 2: DNS Protocol and ArchitectureCNIT 40: 2: DNS Protocol and Architecture
CNIT 40: 2: DNS Protocol and ArchitectureSam Bowne
 
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOS
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOSPart 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOS
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOSMen and Mice
 
getdns PyCon presentation
getdns PyCon presentationgetdns PyCon presentation
getdns PyCon presentationMelinda Shore
 
CNIT 40: 4: Monitoring and detecting security breaches
CNIT 40: 4: Monitoring and detecting security breachesCNIT 40: 4: Monitoring and detecting security breaches
CNIT 40: 4: Monitoring and detecting security breachesSam Bowne
 
Monitoring for DNS Security
Monitoring for DNS SecurityMonitoring for DNS Security
Monitoring for DNS SecurityThousandEyes
 
Carlos García - Pentesting Active Directory Forests [rooted2019]
Carlos García - Pentesting Active Directory Forests [rooted2019]Carlos García - Pentesting Active Directory Forests [rooted2019]
Carlos García - Pentesting Active Directory Forests [rooted2019]RootedCON
 
IPv6 Threat Presentation
IPv6 Threat PresentationIPv6 Threat Presentation
IPv6 Threat Presentationjohnmcclure00
 
DNS & DNSSEC
DNS & DNSSECDNS & DNSSEC
DNS & DNSSECAPNIC
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopAjay Choudhary
 

What's hot (20)

Understanding the DNS & DNSSEC
Understanding the DNS & DNSSECUnderstanding the DNS & DNSSEC
Understanding the DNS & DNSSEC
 
8 technical-dns-workshop-day4
8 technical-dns-workshop-day48 technical-dns-workshop-day4
8 technical-dns-workshop-day4
 
DNS Security
DNS SecurityDNS Security
DNS Security
 
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017
DNSSEC Deployment for .VN and share information of DNSSEC's plan in 2017
 
CNIT 40: 6: DNSSEC and beyond
CNIT 40: 6: DNSSEC and beyondCNIT 40: 6: DNSSEC and beyond
CNIT 40: 6: DNSSEC and beyond
 
Minieri CS6262 Project Poster
Minieri CS6262 Project PosterMinieri CS6262 Project Poster
Minieri CS6262 Project Poster
 
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]
Understanding and Deploying DNSSEC, by Champika Wijayatunga [APRICOT 2015]
 
Hardening the Core of the Internet
Hardening the Core of the InternetHardening the Core of the Internet
Hardening the Core of the Internet
 
CNIT 40: 2: DNS Protocol and Architecture
CNIT 40: 2: DNS Protocol and ArchitectureCNIT 40: 2: DNS Protocol and Architecture
CNIT 40: 2: DNS Protocol and Architecture
 
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOS
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOSPart 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOS
Part 3 - Local Name Resolution in Linux, FreeBSD and macOS/iOS
 
getdns PyCon presentation
getdns PyCon presentationgetdns PyCon presentation
getdns PyCon presentation
 
CNIT 40: 4: Monitoring and detecting security breaches
CNIT 40: 4: Monitoring and detecting security breachesCNIT 40: 4: Monitoring and detecting security breaches
CNIT 40: 4: Monitoring and detecting security breaches
 
Monitoring for DNS Security
Monitoring for DNS SecurityMonitoring for DNS Security
Monitoring for DNS Security
 
Carlos García - Pentesting Active Directory Forests [rooted2019]
Carlos García - Pentesting Active Directory Forests [rooted2019]Carlos García - Pentesting Active Directory Forests [rooted2019]
Carlos García - Pentesting Active Directory Forests [rooted2019]
 
ION Hangzhou - How to Deploy DNSSEC
ION Hangzhou - How to Deploy DNSSECION Hangzhou - How to Deploy DNSSEC
ION Hangzhou - How to Deploy DNSSEC
 
IPv6 Threat Presentation
IPv6 Threat PresentationIPv6 Threat Presentation
IPv6 Threat Presentation
 
1 technical-dns-workshop-day1
1 technical-dns-workshop-day11 technical-dns-workshop-day1
1 technical-dns-workshop-day1
 
DNS & DNSSEC
DNS & DNSSECDNS & DNSSEC
DNS & DNSSEC
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming Workshop
 
Network Security Best Practice (BCP38 & 140)
Network Security Best Practice (BCP38 & 140) Network Security Best Practice (BCP38 & 140)
Network Security Best Practice (BCP38 & 140)
 

Similar to An Overview of DNSSEC

Cryptography
CryptographyCryptography
CryptographyPPT4U
 
An Introduction to DANE - Securing TLS using DNSSEC
An Introduction to DANE - Securing TLS using DNSSECAn Introduction to DANE - Securing TLS using DNSSEC
An Introduction to DANE - Securing TLS using DNSSECCarlos Martinez Cagnazzo
 
NZNOG 2020: DOH
NZNOG 2020: DOHNZNOG 2020: DOH
NZNOG 2020: DOHAPNIC
 
DNS Exfiltration and Out-of-bound attacks
DNS Exfiltration and Out-of-bound attacksDNS Exfiltration and Out-of-bound attacks
DNS Exfiltration and Out-of-bound attacksNitesh Shilpkar
 
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionCNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionSam Bowne
 
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionCNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionSam Bowne
 
DNS Security
DNS SecurityDNS Security
DNS Securityinbroker
 
DANE and DNSSEC Authentication Chain Extension for TLS
DANE and DNSSEC Authentication Chain Extension for TLSDANE and DNSSEC Authentication Chain Extension for TLS
DANE and DNSSEC Authentication Chain Extension for TLSShumon Huque
 
DNSSEC Tutorial; USENIX LISA 2013
DNSSEC Tutorial; USENIX LISA 2013DNSSEC Tutorial; USENIX LISA 2013
DNSSEC Tutorial; USENIX LISA 2013Shumon Huque
 
DANE and Application Uses of DNSSEC
DANE and Application Uses of DNSSECDANE and Application Uses of DNSSEC
DANE and Application Uses of DNSSECShumon Huque
 
Demystifying SharePoint Infrastructure – for NON-IT People
 Demystifying SharePoint Infrastructure – for NON-IT People  Demystifying SharePoint Infrastructure – for NON-IT People
Demystifying SharePoint Infrastructure – for NON-IT People SPC Adriatics
 
23rd PITA AGM and Conference: DNS Security - A holistic view
23rd PITA AGM and Conference: DNS Security - A holistic view 23rd PITA AGM and Conference: DNS Security - A holistic view
23rd PITA AGM and Conference: DNS Security - A holistic view APNIC
 
NANOG 84: DNS Openness
NANOG 84: DNS OpennessNANOG 84: DNS Openness
NANOG 84: DNS OpennessAPNIC
 

Similar to An Overview of DNSSEC (20)

ION Bangladesh - DANE, DNSSEC, and TLS Testing in the Go6lab
ION Bangladesh - DANE, DNSSEC, and TLS Testing in the Go6labION Bangladesh - DANE, DNSSEC, and TLS Testing in the Go6lab
ION Bangladesh - DANE, DNSSEC, and TLS Testing in the Go6lab
 
ION Bucharest - DANE-DNSSEC-TLS
ION Bucharest - DANE-DNSSEC-TLSION Bucharest - DANE-DNSSEC-TLS
ION Bucharest - DANE-DNSSEC-TLS
 
Cryptography
CryptographyCryptography
Cryptography
 
An Introduction to DANE - Securing TLS using DNSSEC
An Introduction to DANE - Securing TLS using DNSSECAn Introduction to DANE - Securing TLS using DNSSEC
An Introduction to DANE - Securing TLS using DNSSEC
 
ION Bucharest - Deploying DNSSEC
ION Bucharest - Deploying DNSSECION Bucharest - Deploying DNSSEC
ION Bucharest - Deploying DNSSEC
 
NZNOG 2020: DOH
NZNOG 2020: DOHNZNOG 2020: DOH
NZNOG 2020: DOH
 
Understanding DNS Security
Understanding DNS SecurityUnderstanding DNS Security
Understanding DNS Security
 
DNS Exfiltration and Out-of-bound attacks
DNS Exfiltration and Out-of-bound attacksDNS Exfiltration and Out-of-bound attacks
DNS Exfiltration and Out-of-bound attacks
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
 
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionCNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
 
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruptionCNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
CNIT 40: 5: Prevention, protection, and mitigation of DNS service disruption
 
DNS Security
DNS SecurityDNS Security
DNS Security
 
DANE and DNSSEC Authentication Chain Extension for TLS
DANE and DNSSEC Authentication Chain Extension for TLSDANE and DNSSEC Authentication Chain Extension for TLS
DANE and DNSSEC Authentication Chain Extension for TLS
 
DNSSEC Tutorial; USENIX LISA 2013
DNSSEC Tutorial; USENIX LISA 2013DNSSEC Tutorial; USENIX LISA 2013
DNSSEC Tutorial; USENIX LISA 2013
 
Lets talk dns
Lets talk dnsLets talk dns
Lets talk dns
 
DANE and Application Uses of DNSSEC
DANE and Application Uses of DNSSECDANE and Application Uses of DNSSEC
DANE and Application Uses of DNSSEC
 
Demystifying SharePoint Infrastructure – for NON-IT People
 Demystifying SharePoint Infrastructure – for NON-IT People  Demystifying SharePoint Infrastructure – for NON-IT People
Demystifying SharePoint Infrastructure – for NON-IT People
 
23rd PITA AGM and Conference: DNS Security - A holistic view
23rd PITA AGM and Conference: DNS Security - A holistic view 23rd PITA AGM and Conference: DNS Security - A holistic view
23rd PITA AGM and Conference: DNS Security - A holistic view
 
DANE/DNSSEC/TLS Testing in the go6Lab - ION Cape Town
DANE/DNSSEC/TLS Testing in the go6Lab - ION Cape TownDANE/DNSSEC/TLS Testing in the go6Lab - ION Cape Town
DANE/DNSSEC/TLS Testing in the go6Lab - ION Cape Town
 
NANOG 84: DNS Openness
NANOG 84: DNS OpennessNANOG 84: DNS Openness
NANOG 84: DNS Openness
 

More from Carlos Martinez Cagnazzo

Como brindar servicio de Internet (casi) sin IPv4
Como brindar servicio de Internet (casi) sin IPv4Como brindar servicio de Internet (casi) sin IPv4
Como brindar servicio de Internet (casi) sin IPv4Carlos Martinez Cagnazzo
 
Evolución del stack de protocolos de Internet - IPv6 y QUIC
Evolución del stack de protocolos de Internet - IPv6 y QUICEvolución del stack de protocolos de Internet - IPv6 y QUIC
Evolución del stack de protocolos de Internet - IPv6 y QUICCarlos Martinez Cagnazzo
 
The End of IPv4: What It Means for Incident Responders
The End of IPv4: What It Means for Incident RespondersThe End of IPv4: What It Means for Incident Responders
The End of IPv4: What It Means for Incident RespondersCarlos Martinez Cagnazzo
 
Actualización sobre DNS en el IETF para LACNIC 28
Actualización sobre DNS en el IETF para LACNIC 28Actualización sobre DNS en el IETF para LACNIC 28
Actualización sobre DNS en el IETF para LACNIC 28Carlos Martinez Cagnazzo
 
Introduccion a RPKI - Certificacion de Recursos de Internet
Introduccion a RPKI - Certificacion de Recursos de InternetIntroduccion a RPKI - Certificacion de Recursos de Internet
Introduccion a RPKI - Certificacion de Recursos de InternetCarlos Martinez Cagnazzo
 
Seguridad de la Información para Traductores
Seguridad de la Información para TraductoresSeguridad de la Información para Traductores
Seguridad de la Información para TraductoresCarlos Martinez Cagnazzo
 
Mitigación de denegaciones de servicio en DNS con RRL
Mitigación de denegaciones de servicio en DNS con RRLMitigación de denegaciones de servicio en DNS con RRL
Mitigación de denegaciones de servicio en DNS con RRLCarlos Martinez Cagnazzo
 
NAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estadoNAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estadoCarlos Martinez Cagnazzo
 

More from Carlos Martinez Cagnazzo (20)

Como brindar servicio de Internet (casi) sin IPv4
Como brindar servicio de Internet (casi) sin IPv4Como brindar servicio de Internet (casi) sin IPv4
Como brindar servicio de Internet (casi) sin IPv4
 
Evolución del stack de protocolos de Internet - IPv6 y QUIC
Evolución del stack de protocolos de Internet - IPv6 y QUICEvolución del stack de protocolos de Internet - IPv6 y QUIC
Evolución del stack de protocolos de Internet - IPv6 y QUIC
 
RPKI en America Latina y el Caribe
RPKI en America Latina y el CaribeRPKI en America Latina y el Caribe
RPKI en America Latina y el Caribe
 
The End of IPv4: What It Means for Incident Responders
The End of IPv4: What It Means for Incident RespondersThe End of IPv4: What It Means for Incident Responders
The End of IPv4: What It Means for Incident Responders
 
Evolución de Protocolos de Internet 2017
Evolución de Protocolos de Internet 2017Evolución de Protocolos de Internet 2017
Evolución de Protocolos de Internet 2017
 
Actualización sobre DNS en el IETF para LACNIC 28
Actualización sobre DNS en el IETF para LACNIC 28Actualización sobre DNS en el IETF para LACNIC 28
Actualización sobre DNS en el IETF para LACNIC 28
 
IPv6 Routing Table Prefix Size Analysis
IPv6 Routing Table Prefix Size AnalysisIPv6 Routing Table Prefix Size Analysis
IPv6 Routing Table Prefix Size Analysis
 
Internet of Things en el Dia de Internet
Internet of Things en el Dia de InternetInternet of Things en el Dia de Internet
Internet of Things en el Dia de Internet
 
Monitoreo de Red para Peering
Monitoreo de Red para PeeringMonitoreo de Red para Peering
Monitoreo de Red para Peering
 
An IPv6 Primer
An IPv6 PrimerAn IPv6 Primer
An IPv6 Primer
 
Introduccion a RPKI - Certificacion de Recursos de Internet
Introduccion a RPKI - Certificacion de Recursos de InternetIntroduccion a RPKI - Certificacion de Recursos de Internet
Introduccion a RPKI - Certificacion de Recursos de Internet
 
Enabling IPv6 Services Transparently
Enabling IPv6 Services TransparentlyEnabling IPv6 Services Transparently
Enabling IPv6 Services Transparently
 
LACNOG - Logging in the Post-IPv4 World
LACNOG - Logging in the Post-IPv4 WorldLACNOG - Logging in the Post-IPv4 World
LACNOG - Logging in the Post-IPv4 World
 
Seguridad de la Información para Traductores
Seguridad de la Información para TraductoresSeguridad de la Información para Traductores
Seguridad de la Información para Traductores
 
Mitigación de denegaciones de servicio en DNS con RRL
Mitigación de denegaciones de servicio en DNS con RRLMitigación de denegaciones de servicio en DNS con RRL
Mitigación de denegaciones de servicio en DNS con RRL
 
An Overview of RPKI
An Overview of RPKIAn Overview of RPKI
An Overview of RPKI
 
IPv6 Transition Considerations for ISPs
IPv6 Transition Considerations for ISPsIPv6 Transition Considerations for ISPs
IPv6 Transition Considerations for ISPs
 
Una introduccion a IPv6
Una introduccion a IPv6Una introduccion a IPv6
Una introduccion a IPv6
 
NAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estadoNAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estado
 
DNSSEC - Generalidades e Introducción
DNSSEC - Generalidades e IntroducciónDNSSEC - Generalidades e Introducción
DNSSEC - Generalidades e Introducción
 

Recently uploaded

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

An Overview of DNSSEC

  • 1. 1 An Overview of DNSSEC TATT Workshops, Port of Spain Carlos Martínez-Cagnazzo carlos @ lacnic.net
  • 2. DNSSEC •  Cryptography 101 •  DNSSEC •  Where DNSSEC ? •  How does DNSSEC work ? •  New Resource Records •  Trust Chains 2
  • 4. Cryptography •  Cryptography concepts we'll need for DNSSEC u  Public-key Cryptography u  Hashing algorithms u  Digital signatures u  Trust Chains 4
  • 5. Cryptography (ii) •  Let's imagine two parties which need to communicate in a private manner. They will like to see certain properties enforced in their data exchanges. u  They'd like to be sure that no one else has been able to read their messages (privacy property) u  They'd like to be sure that no one else has been able to change or alter their messages (integrity property) u  They'd like to be sure that the party who sends a message is really who it claims to be (authentication property) 5
  • 6. Symmetric Cryptography [Source: Stallings] 6 •  E[.] y D[.] are two functions both which are inverse mappings of each other •  D[ E [X] ] = X K (the key) is a parameter introduced to ease compromise recoveries •  Symmetric Cryptography •  DK[ EK [X] ] = X
  • 7. Cryptographic Hashes •  H is a transformation with the following properties u  p << n u  For each algorithm ”p” is a given value u  len(H) is fixed regardless of len(M) •  This means that collisions do exist •  Collision: If for a pair M1 and M2, H(M1) == H(M2), then M1 and M2 represent a collision •  If H() is chosen and designed carefully then finding collisions is very difficult
  • 8. Cryptographic Hashes (ii) •  Intuitively u  The more "random" the result of a hash "looks", the better it is •  Some well-known algorithms: •  MD5 •  p=128 bits •  SHA1 / SHA256 •  p=160 / 256 bits
  • 9. Public-key Cryptography •  Key distribution was always the weak point in traditional (symmetric) cryptography •  A lot effort was put to find workarounds and alternatives •  Breakthrough: (Diffie-Hellman ca. 1976) “Public-key Cryptography” •  A public-key cryptosystem has the following properties: u  DK1[ EK2 [X] ] = X u  D cannot be easily found even if E is known u  E cannot be broken with a chosen plaintext attack 9
  • 10. Public-key Cryptography (ii) •  Each party generates a keypair, that is one public and one secret key u  Kpub, Kpriv u  Both keys in the pair are related •  If one is given the other is also given •  When transmitting a message “X” from A -> B the following computation takes place: u  Y = E [ KpubB, X] •  When B receives the encrypted message the following computation takes place: 10
  • 11. Public-key Cryptography (iii) •  [Source: Stallings] 11
  • 12. Digital Signatures •  Goal: u  Create integrity proofs of digital documents •  Usually implemented using public-key cryptography 12
  • 13. Digital Signatures (iii) •  Given M, a digital document to be signed by party A(lice) to be received by party B(ob) u  A computes: •  A hash for M, H = Hash[M] •  A signature for M, F = E[ KprivA, H] u  A sends the pair {M, F} to B •  When B receives the encrypted message the following computation takes place: u  A hash for M, H' = Hash[M] u  The hash of the signature is recalculated, H = D[ KpubA, F] u  Is the signature VALID ? Is H == H’ ?? 13
  • 14. Digital Signatures (iii) •  Trust Chains u  Each level in the hierarchy signs data in the next one u  The root needs to be analyzed separately u  Validation can be either •  Top down •  Up down 14
  • 16. Protocol Specification •  Overview of DNS's wire packet format u  Header •  Protocol header •  Flags (QR, RA, RD,…) u  Question Section •  Query we send to the DNS server u  Tuples (Name, Type, Class) u  Answer Section •  RRs that answer the query (if any are available), also in (N, T, C) tuple format u  Authority Section •  RRs pointing to authoritative servers (optional) u  Additional Section •  RRs that may be useful to the querying client (according to the server answering the query) Header Question Answer Authority Additional
  • 17. DNS Queries local resolver local recursive DNS server Other authoritative servers
  • 19. Vulnerabilities in DNS •  DNS transmitted data is more prone to spoofing as it is mostly transported over UDP u  Between master and slaves (AXFR) u  Between masters and clients (AXFR) “resolver” •  Currently the DNS protocol does not have a way to validate information found in a query response u  Vulnerable to different poisoning techniques u  Poisoned data can be a problem for long periods of time depending on the TTL values of the zones •  Neither do slave servers have a way to authenticate the master servers they're talking to 19
  • 20. Introducing DNSSEC •  Threat analysis in the DNS system u  RFC 3833: “Threat Analysis of the Domain Name System (DNS)” •  DNSSEC: u  “DNS Security Extensions” u  RFC 4033, 4034, 4035 u  ~ May 2005 20
  • 21. What does DNSSEC Protect us from? •  DNSSEC will protect us from data corruption and spoofing u  It provides a way to validate both the integrity and the authenticity of the records contained in a DNS zone •  DNSKEY/RRSIG/NSEC u  It provides a way to delegate trust in public keys (trust chains) •  DS u  It provides a way to authenticate zone transfers between masters and slaves •  TSIG 21
  • 22. DNSSEC Introduction •  DNSSEC is not a new protocol •  Is a set of extensions to the DNS protocol as we know it u  Changes to the wire protocol (EDNS0) •  Maximum UDP query response extended from 512 to 4096 bytes u  New resource records added •  RRSIG, DNSKEY, DS, NSEC u  New flags added •  Checking Disabled (CD) •  Authenticated Data (AD) 22
  • 23. DNSSEC Introduction (2) •  New RRs u  RRSIG: Resource Record Signature u  DNSKEY: DNS Public Key u  DS: Delegation Signer u  NSEC: Next Secure •  New Flags: u  AD: authenticated data u  CD: checking disabled 23
  • 24. DNSSEC Introduction (3) •  A resource record in DNS is a five-value tuple u  (name, class, type, TTL, value) •  The record: u  www.company.com. 86400 IN A 200.40.100.141 u  Is represented by the tuple: •  Name (www.company.com) •  Class (IN) •  Type (A) •  TTL (86400 seconds) •  Value (200.40.100.141) 24
  • 25. DNSSEC Introduction (4) u  Resource Record Sets (RRSets) •  DNSSEC works by signing RRSets (not individual RRs) •  An RRSet is a set of resource records that share the same: u  Class u  Type u  Name u  Sample RRSet (TTL omitted for clarity) •  www IN A 200.40.241.100 •  www IN A 200.40.241.101 25
  • 26. DNSSEC Introduction (5) Zone Signing •  A key pair is created for each zone u  Each zone has at least one key pair u  The private key is kept, well, private •  The private key is used to sign the RRSets in the zone u  The public key is published in DNS using DNSKEY records •  The private key is also used to verify the signatures of the RRSets u  An RRSet can have multiple signatures generated using different key pairs 26
  • 27. DNSSEC Introduction (6) •  The digital signature of a RRSet is returned in a special RRSIG record with the query answer •  Example: 27 ~ carlosm$ dig +dnssec www.nic.se ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 1 ;; ANSWER SECTION: www.nic.se. 60 IN A 212.247.7.218 www.nic.se. 60 IN RRSIG A 5 3 60 20101021132001 20101011132001 23369 nic.se. HeeUZ5h5iExK5uU1SuNRIf2Dbmh2/ aWV8FkjmzixUzTAVrHv39PfmfnG DHdHoZxoz85hqqYiWb +t9EZh5+iqxQk8AxRDic9Nn6WxifOoWeS+IUKQ rVyqXf1NtkZvu1A325vwa8obtbeVGVkhqg6bDIjKYeHixjlQ4cRoFcEW Izk= ;; AUTHORITY SECTION: nic.se. 2974 IN NS ns3.nic.se. nic.se. 2974 IN NS ns2.nic.se. nic.se. 2974 IN NS ns.nic.se. nic.se. 3600 IN RRSIG NS 5 2 3600 20101021132001 20101011132001 23369 nic.se. GSzAUC3SC3D0G/ iesCOPnVux8WkQx1dGbw491RatXz53b7SY0pQuyT1W eb063Z62rtX7etynNcJwpKlYTG9FeMbDceD9af3KzTJHxq6B+Tpmmxyk FoKAVaV0cHTcGUXSObFquGr5/03G79C/YHJmXw0bHun5ER5yrOtOLegU IAU=
  • 28. Trust Chains •  How do clients verify a zone's RRSets? u  It queries for the corresponding DNSKEY u  The necessary computations are carried out and then compared with the signature in the RRSIG •  If they match the signatures are valid •  But, how can we trust the DNSKEY? It listed on the same zone we want to verify! u  We need to validate the trust chain 28
  • 29. Trust Chains (ii) •  DS Record “Delegation Signature” u  DS records "sign" the keys in their child zones u  In this way one can also verify the DNSKEY as it is signed when the parent zone is signed •  DS records contain a hash of the public key u  That is a hash of the DNSKEY's record content •  DS records in the parent zone are signed with the keys of the parent zone •  To complete the full trust chain we also need the root of the DNS to be signed 29
  • 30. Trust Chains (iii) •  What about the root zone ? u  The root zone has no parent zone where a DS record could be placed u  The DNS root has been signed since July 2010 •  [ http://www.root-dnssec.org ] u  The DS record for "." is obtained out-of-band and installed locally in each server •  [ http://data.iana.org/root-anchors/root-anchors.xml ] •  . IN DS 49AAC11D7B6F6446702E54A1607371607A1A41855200F D2CE1CDDE32F24E8FB5 30
  • 31. DNSSEC Introduction (9) Root Zone Signing •  How is the the root trust anchor verified? •  It is verified also out-of-band u  It can be downloaded using http/https u  Several validation mechanisms are in place (X.509 certs, PGP signatures) u  It is locally installed in the same way the root zone itself is configured locally 31
  • 32. DNSSEC Introduction (10) Denial of Existence •  "NXDOMAIN" answers u  Provide “denial of existence” answers via a flag on the “Header” pseudo-section u  NXDOMAINS are cached in the same way as other responses are u  Forging NXDOMAINs is a DDoS attack vector •  How can non-existence be signed ? u  We need an RRSet to sign •  Remember that DNSSEC always signs RRSets u  Two different techniques have been proposed: •  NSEC and NSEC3 32