Study notes: Understanding DNSSEC

DNSSEC

Recently I have been researching materials covering DNSSEC as it is an important subject for LPIC-3 Exam 303. DNSSEC has been developed to address security issues of the DNS protocol, in particular preventing DNS cache poisoning attacks. Below I post DNSSEC description from Internet Corporation for Assigned Names and Numbers (ICANN), which I find useful and included in my study notes. 

"DNSSEC strengthens authentication in DNS using digital signatures based on public key cryptography. With DNSSEC, it's not DNS queries and responses themselves that are cryptographically signed, but rather DNS data itself is signed by the owner of the data.

Every DNS zone has a public/private key pair. The zone owner uses the zone's private key to sign DNS data in the zone and generate digital signatures over that data. As the name "private key" implies, this key material is kept secret by the zone owner. The zone's public key, however, is published in the zone itself for anyone to retrieve. Any recursive resolver that looks up data in the zone also retrieves the zone's public key, which it uses to validate the authenticity of the DNS data. The resolver confirms that the digital signature over the DNS data it retrieved is valid. If so, the DNS data is legitimate and is returned to the user. If the signature does not validate, the resolver assumes an attack, discards the data, and returns an error to the user."

Source: https://www.icann.org/resources/pages/dnssec-what-is-it-why-important-2019-03-05-en

DNS Records

The following DNS records are associated with DNSSEC:

  • DNSKEY - contains public signing key
  • DS - contains the hash of a DNSKEY record
  • RRSIG - contains a cryptographic signature
  • NSEC - links to the next record name in the zone; used to verify the non-existence of a record
  • NSEC3 - same as NSEC; additionally it uses cryptographically hashed record names to prevent enumeration of the record names in a zone
  • NSEC3PARAM - used by authoritative DNS servers to calculate and determine which NSEC3-records to include in responses

Enabling DNSSEC: BIND

DNSSEC is enabled in named.conf with the following directives:

dnssec-enable yes;
dnssec-validation yes;

A tutorial with detailed DNSSEC configuration steps on BIND by Daniel Stirnimann

https://securityblog.switch.ch/2020/12/01/dnssec-signing-your-domain-with-bind-9-16/

DNSSEC with AWS and Route 53

Fortunately, since December 2020 DNSSEC is supported by Amazon Route 53. This significantly limits deployment effort and simplifies configuration. See this YouTube video by Andreas Wittig for the details. 



Comments

  1. The finest trick to get higher odds to beat slots is to select video games with a theoretical Return to Player above 96%. You find a record of the 12 finest slot machines to play right on this desk. He’d walk away after a few minutes, then 코인카지노 return a bit later to give the game a second chance.

    ReplyDelete

Post a Comment

Popular posts from this blog

Splunk: Authentication with Discord? Wht not! (OAuth 2.0)

Linux: auditd fundamentals