view Side-By-Side changes
DNS Extensions R. Arends Internet-Draft Telematica Instituut Expires:June 1,August 15, 2003 R. Austein ISC M. Larson VeriSign D. Massey USC/ISI S. Rose NISTDecember 2002February 14, 2003 DNS Security Introduction and Requirementsdraft-ietf-dnsext-dnssec-intro-04draft-ietf-dnsext-dnssec-intro-05 Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http:// www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire onJune 1,August 15, 2003. Copyright Notice Copyright (C) The Internet Society(2002).(2003). All Rights Reserved. Abstract The Domain Name System Security Extensions (DNSSEC)provideadd data origin authentication and dataintegrity.integrity to the Domain Name System. This document introduces theseextensionsextensions, and describes their capabilities and limitations.TheThis document also discusses the Arends, et al. Expires August 15, 2003 [Page 1] Internet-Draft DNSSEC Introduction and Requirements February 2003 services that the DNS security extensionsprovidedo and do notprovide are discussed. Lastly,provide. Last, this document describes the interrelationships between the group of documents that collectively describethe DNS security extensions and their interrelationships is discussed. Arends, et al. Expires June 1, 2003 [Page 1] Internet-Draft DNSSEC Intro. and Requirements December 2002DNSSEC. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Definitions of Important DNSSEC Terms . . . . . . . . . . . . 4 3. Services Provided by DNS Security . . . . . . . . . . . . . .56 3.1 Data Origin Authentication and Data Integrity . . . . . . . .56 3.2 Authenticating Name and Type Non-Existence . . . . . . . . . .67 4. Services Not Provided by DNS Security . . . . . . . . . . . .79 5. Resolver Considerations . . . . . . . . . . . . . . . . . . .810 6. Stub Resolver Considerations . . . . . . . . . . . . . . . . . 11 7. Zone Considerations . . . . . . . . . . . . . . . . . . . . .10 6.112 7.1 TTL values vs. SIG validity period . . . . . . . . . . . . . .10 6.212 7.2 New Temporal Dependency Issues for Zones . . . . . . . . . . .. . . . . 10 7.12 8. Name Server Considerations . . . . . . . . . . . . . . . . . .. . 11 8.13 9. DNS Security Document Family . . . . . . . . . . . . . . . . .12 8.114 9.1 DNS Security Document Roadmap . . . . . . . . . . . . . . . .12 8.214 9.2 Categories of DNS Security Documents . . . . . . . . . . . . .12 9.14 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .14 10.16 11. Security Considerations . . . . . . . . . . . . . . . . . . .15 11.17 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . .1619 Normative References . . . . . . . . . . . . . . . . . . . . .1720 Informative References . . . . . . . . . . . . . . . . . . . .1821 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . .1821 Full Copyright Statement . . . . . . . . . . . . . . . . . . .2023 Arends, et al. ExpiresJune 1,August 15, 2003 [Page 2] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 1. Introduction This document introduces the Domain Name System Security Extensions (DNSSEC). This document anda collection of related documents update RFC 2535 [3] anditsrelatedtwo companion documentsto further clarify([13] and [14]) update, clarify, and refine the security extensions originally defined in RFC2535.2535 [3]. These security extensions consist of a set of new resource record types and modifications to the existing DNS protocol [2]. The new records and protocol modifications are not fully described in this document, but are described in a family of documents outlined in Section8. The9. Section 3 and Section 4 describe the capabilities and limitations of the security extensionsare describedin greaterdetail indetail. Section35, Section 6, Section 7, and Section4, respectively. These three documents update/obsolete RFC's: 2525,8 discuss the effect that these security extensions will have on resolvers, stub resolvers, zones and name servers. This document and its two companions update and obsolete RFCs 2535, 3008, 3090, 3225, 3226,3445andInternet Drafts:3445, as well as several works in progress: "Redefinition of the AD bit", "Delegation Signer Resource Record", and "DNSSEC Opt-In". See [18] for more detailsofon these documents.Lastly, the effect that these security extensions will have on resolvers, zones and servers is discussed in Section 5, Section 6 and Section 7, respectively.The DNS security extensions providedataorigin authentication anddataintegrity protection for DNS data, as well as a means of public key distribution.The securityThese extensions do not provide protection against other types of attack, nor do they provide confidentiality. Arends, et al. ExpiresJune 1,August 15, 2003 [Page 3] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 2. Definitions of Important DNSSEC Terms authenticationkey: A public key, forchain: In the DNSSEC model, azone or a host, that a resolver trusts and that can therefore be used to verify data. A key can become trusted in two ways: First, it can be statically configured and declared in the resolver's initial configuration. Second, if a new key is referenced by a DS record that is signed by an already known authentication key, and the signature verifies, the new key becomes trusted by the resolver. key signing key: Described in [14] An authentication key that is only used to sign a DNSSEC authentication key. The zone authentication key may be changed frequently (according to local policy), while the key signing key is used as a more static secure entry point for the zone. Designating a key signing key is an operational issue only, the key is treated the same way as an authentication key by the DNS. authentication chain: In DNSSEC, a keyKEY RR signs a DSrecord,RR, whichpoints tohashes one RR in anotherkey (or key signing key),KEY RRset, which in turn signs another DSrecord,RR, whichpoints tohashes one RR in yet anotherkey, etc. Eventually endingKEY RRset, and so forth, finally ending, if all goes well, with akey that has generated a SIG over aKEY RRset.which signs whatever DNS data the end user was looking for in the first place. This alternating succession of KEY RRsets and DSrecordsRRs forms a chain of signed data, with each link in the chain vouching for the next.A resolver starting atIf apiece of datasignature somewhere inthethis chainsignedhas been generated bya knownan authentication key known to a security-aware resolver, then the resolver can attempt to verifyall subsequent signatures. Thus all subsequent data inand authenticate the signed chainis verified and authenticated. security-aware resolver: A resolver (defined in section 2.4of[1])KEY and DS RRs from thatunderstandspoint down to theDNS security extensions defined in this document set. In particular,target data. authentication key: A public key which a security-aware resolveruses known authentication keys to verify signatures over RRsetstrusts and(optionally)can therefore use to verify data. A security-aware resolver can discover trusted authentication keys in three ways. First, the resolver is generally preconfigured to know about at least one key which it should trust. Second, the resolver may be able to discover both a new key and an associated DS RR which contains a valid hash of the new key and which has been signed by a key which the resolver trusts. Third, the resolver may be able to determine that a new key has been signed by another key which the resolver trusts. Note that the resolver must always be guided by local policy when deciding whether to trust a new key, even if the local policy is simply to trust any new key for which the resolver is able verify the signature. key signing key: An authentication key which is used to sign one or more other authentication keys. Typically, a key signing key will sign a zone signing key, which in turn will sign other zone data. Local policy may require the zone signing key to be changed frequently, while the key signing key may have a longer validity period in order to provide a more stable secure entry point into the zone. Designating an authentication key as a key signing key is purely an operational issue: DNSSEC itself does not distinguish between key signing keys and other DNSSEC authentication keys. Key signing keys are discussed in more detail in [12]. security-aware name server: An entity acting in the role of a name server (defined in section 2.4 of [1]) which understands the DNSmessages.security extensions defined in this document set. In particular, a security-aware name server is an entity which receives DNS queries, sends DNS responses, supports the EDNS0 [4] message size extension and the DO bit [8], and supports the RR types and message header bits defined in this document set. Arends, et al. Expires August 15, 2003 [Page 4] Internet-Draft DNSSEC Introduction and Requirements February 2003 security-aware recursive name server: An entity which acts in both the security-aware name server and security-aware resolver roles. A more cumbersome equivalent phrase would be "a security-aware name server(also definedwhich offers recursive service". security-aware resolver: An entity acting in the role of a resolver (defined in section 2.4 of [1])thatwhich understands the DNS securityextensions.extensions defined in this document set. In particular,it supports the KEY, SIG, DS and NXT record types,alargersecurity-aware resolver is an entity which sends DNS queries, receives DNS responses, supports the EDNS0 [4] message sizevia EDNS0,extension andother protocol changes such as support fortheOK bit. Also called a "secure server". unsecure server: The proper term forDO bit [8], and is capable of using theoppositeRR types and message header bits defined in this document set to provide DNSSEC services. security-aware stub resolver: An entity acting in the role of a resolver (defined in section 2.4 of [1]) which has at least a minimal understanding the DNS security extensions defined in this document set, but which trusts one or more security-awareserver.recursive name servers to perform most of the tasks discussed in this document set on its behalf. In particular, a security-aware stub resolver is an entity which sends DNS queries, receives DNS responses, and is capable of establishing an appropriately secured channel to a security-aware recursive name server which will provide these services on behalf of the security-aware stub resolver. Note that the distinction between security-aware resolvers and security-aware stub resolvers is different from the distinction between iterative-mode and recursive-mode resolvers in the base DNS specification: a particular security-aware resolver may operate exclusively in recursive mode, but still performs its own DNSSEC signature validity checks, while a security-aware stub resolver does not, by definition. security-oblivious: The opposite of "security-aware". signed zone: A zone whose RRsets are signed and which contains properly constructed KEY, SIG, NXT and (optionally) DS records. unsigned zone: Theproper term for theopposite of asecure"signed zone". zone signing key: An authentication key which is used to sign a zone. See key signing key, above. Typically a zone signing key will be part of the same KEY RRset as the key signing key which signs it, but is used for a slightly different purpose and may differ from the key signing key in other ways, such as validity lifetime. Arends, et al. ExpiresJune 1,August 15, 2003 [Page4]5] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 3. Services Provided by DNS Security The Domain Name System (DNS)protocolsecurity extensions providedataorigin authentication anddataintegrityassurance. In addition, a means of providing anassurance services for DNS data, including mechanisms for authenticated denial of existenceis provided, asof DNS data. These mechanisms are described below. These mechanisms require minor changes to the DNS protocol. DNSSEC adds four new resource record types (SIG, KEY, DS and NXT) and two new message header bits (CD and AD). In order to support the larger DNS message sizes that result from adding the DNSSEC RRs, DNSSEC also requires EDNS0 support [4]. Finally, DNSSEC requires support for the DO bit [8], so that a security-aware resolver can indicate in its queries that it wishes to receive DNSSEC RRs in response messages. These services protect against most of the threats to the Domain Name System described in [11]. 3.1 Data Origin Authentication and Data IntegrityAuthentication is providedDNSSEC provides authentication by associating cryptographically generated digital signaturesassociatedwith DNS RRsets. These digital signatures are stored in a new resource record, the SIG record. Typically, there will be a single private key that signs a zone's data, but multiple keys arepossible; e.g.,possible: for example, there may be keys for each of several different digital signature algorithms. If a security-aware resolver reliably learns a zone's public key, it can authenticate that zone's signed data. An important DNSSEC concept is that the key that signs a zone's data is associated with the zone itself and not with the zone's authoritative name servers(although hosts/services can(public keys for DNS transaction authentication mechanisms may alsohave key pairs in DNSSEC; see the reference to SIG(0)appear in[7] ). Security-aware servers attempt to send the signature(s) needed to authenticate an RRsetzones, as described inthe DNS reply message along with the RRset itself, provided there[7], but DNSSEC itself isspace available in the message.concerned with object security of DNS data, not channel security of DNS transactions). A security-aware resolvercouldcan learn a zone's public key either by having the keystatically configuredpreconfigured into the resolver or by normal DNS resolution. To allow the latter, public keys are stored in a new type of resource record, the KEYrecord.RR. Note that the private keys used to sign zone data must be keptsecuresecure, andbest practices call for them toshould be storedoffline.offline when practical to do so. Toreliablydiscover a public keybyreliably via DNS resolution, the target key itself needs to be signed by either astatically configuredpreconfigured authentication key or another key that has beenpreviously authenticated. Zone information isauthenticated previously. Security-aware resolvers authenticate zone information by formingaan authentication chain from a newly learned public key back to a previously known authentication publickey (which iskey, which in turn eitherstatically configuredmust have been preconfigured into the resolver orpreviouslymust have been learned andverified).verified previously. Therefore, the Arends, et al. Expires August 15, 2003 [Page 6] Internet-Draft DNSSEC Introduction and Requirements February 2003 resolver must be configured with at least one public key: if the preconfigured key(eitheris a zone signingkey or key signing key) that authenticates one zone (or zonekey,inthen it will authenticate the associated zone; if thecase ofpreconfigured key is a key signingkey) askey, it will authenticate astarting point.zone signing key. To help security-aware resolvers establish this authentication chain, security-aware name servers attempt to send the signature(s) needed to authenticate a zone's public key in the DNS reply message along with the public key itself, provided there is space available in the message. The authentication chain specified in the original DNS securityArends, et al. Expires June 1, 2003 [Page 5] Internet-Draft DNSSEC Intro. and Requirements December 2002extensions proceeded from signed KEY record to signed KEY record, as necessary, and finally to the queried RRset.AThe current specification adds a newrecord,Delegation Signer (DS) RR type to simplify some of thedelegation signer (DS), has been added for additional flexibility.administrative tasks involved in signing delegations across organizational boundaries. The DS RRset resides at a delegation point in a parent zone andspecifiesindicates the key or keys used by thespecifieddelegated child zone to self-sign the KEY RRset atitsthe child zone's apex. Thechild,child zone, in turn, uses one or more ofthesethe keys in this KEY RRset to sign its zone data. The authentication chain is thereforeDS->KEY- >[DS->KEY->...]->RRset.KEY->[DS->KEY]*->RRset, where "*" denotes zero or more DS- >KEY subchains. This authentication chain is normally constructed"top down" (i.e.from the root"."of the DNS hierarchy down to the leafzones). However, thiszones, and isbase DNSSEC protocol only. Local policynormally based onauthenticationpreconfigured knowledge ofRR setsthe public key for the root. Local policy, however, mayoverride this policy. Ultimately, authentication isalso allow amattersecurity-aware resolver to trust one or more preconfigured keys other than the root key, or may not provide preconfigured knowledge oflocal,the root key, or may even prevent the resolverpolicyfrom trusting particular keys for arbitrary reasons even if those keys are properly signed with verifiable signatures. DNSSEC provides mechanisms by which a security-aware resolver can determine whether an RRset's signature is "valid" within the meaning of DNSSEC, but authentication and trust, in the final analysis, are matters of local policy, which mayextend,extend or even override the protocol extensions defined in this document set.Adding data origin authentication and data integrity requires minor changes to the on-the-wire DNS protocol. Four new resource record types are required: SIG, KEY, DS and NXT. EDNS0 support [4] for larger message sizes [9] is required, as is support for the OK bit [8]. EDNS0 support is required for the larger DNS message sizes that result when DNSSEC RRs are added. Support for the OK bit (part of EDNS0) is required for a security aware resolver to indicate that it is security-aware and wishes for DNSSEC RR types to be added to the response.3.2 Authenticating Name and Type Non-Existence The security mechanismreferenced abovedescribed in Section 3.1 only provides a way to sign existing RRsets in a zone. The problem of providing negative responses with the same level of authentication and integrity requires the use of another new resourcerecord,record type, thenon- existence (NXT)NXT record. The NXT record allows a security-aware resolver to authenticate a negative reply(eitherfor either nameor type non-existence) to be authenticatedor type non-existence via the sameway asmechanisms used to authenticate other DNS replies. Use of NXT records require a canonical representation andorderordering for domain names in zones. Chains of NXT recordsexist to coverexplicitly describe the gaps, or "empty space", between domain names in a zone, as well asnon-existent recordlisting Arends, et al. Expires August 15, 2003 [Page 7] Internet-Draft DNSSEC Introduction and Requirements February 2003 the typesforof RRsets present at existing names. Each NXT record is signed and authenticatedinusing thesame way as any other RRset.mechanisms described in Section 3.1. Arends, et al. ExpiresJune 1,August 15, 2003 [Page6]8] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 4. Services Not Provided by DNS SecurityTheDNSdesign philosophy calls for allwas originally designed with the assumptions that the DNSdatawill return the same answer tobe publicany given query regardless of who may have issued the query, anduniform answers tothat allinquirers.data in the DNS is thus visible. Accordingly,confidentiality for queries or responsesDNSSEC is notprovided, nor are any sort ofdesigned to provide confidentiality, access controllistslists, or other meansto differentiateof differentiating between inquirers.There isDNSSEC provides no protection against denial of service attacks.Security- awareSecurity-aware resolvers and security-aware name servers are vulnerable toanotheran additional class ofDoSdenial of service attacks based on cryptographic operations.See the Security Considerations section below.Please see Section 11 for details. TheDNSSECDNS security extensions provide data and origin authenticationoffor DNS data.NoThe mechanisms outlined above extend no protectionis extendedto operations such as zone transfers and dynamic update [16]. Message authentication schemes described in [5] and [7] address security operations that pertain to these transactions.Signed zone data and/or the use of transaction authentication will not protect against errors in DNS zone information or servers incorrectly interpreting and/or setting DNS message header fields. The security extensions cannot insure the correctness of DNS information. Ultimately, final authentication is a matter of local policy. A local policy might extend or override the protocol extensions defined in this document set.Arends, et al. ExpiresJune 1,August 15, 2003 [Page7]9] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 5. Resolver Considerations A security-aware resolver needs to be able to perform necessary cryptographic functions to verify digital signatures using at least the mandatory-to-implement algorithms. Security-aware resolvers must also be capable of forming a authentication chain from a newly learned zone back to a authenticationkey (as defined above).key, as described above. This process might require additional queriesofto intermediate DNS zonesforto obtain necessary KEY, DS and SIG records.It is assumed that aA security-aware resolverwillshould be configured with at least one authentication key as the starting point from which it will attempt to establishanauthenticationchain. The stubchains. If a security-aware resolver is separated from the relevant authoritative name servers by a recursive name server or by any sort of device which acts as a proxy for DNS, and if the recursive name server or proxy is not security-aware, the security-aware resolverfound in many hostsmay not beaugmentedable toprovide a different set of security features instead of the full security awareness foundoperate in asecurity-aware resolver. The use of transaction authentication (i.e. SIG(0) or TSIG) could helpsecurethe final message passing betweenmode. For example, if a security-awareDNS server and a stub resolver. Thisresolver's packets are routed through amatter of local security policy. Notenetwork address translation device thattransaction authentication changes theincludes a DNSprotocol. Using SIG(0)proxy which is not security-aware the security-aware resolver may find it difficult orTSIG keys means thatimpossible to obtain or validate signed DNSclients now can have identity and are no longer anonymous. Possession ofdata. If akey used for transaction authentication could allowsecurity-aware resolver must rely on an unsigned zone or asecurity awarename serverto identify athat is not security aware, the resolver may not be able to validate DNS responses, andsegregate resolvers it accepts queries from.will need a local policy on whether to accept unverified responses. Asecurity aware stubsecurity-aware resolverought to be configuredshould take a signature's validation period into consideration when determining the TTL of data in its cache, tomake useavoid caching signed data beyond the validity period of the signature, but should also allow for the possibility that the security-aware resolver's own clock is wrong. Thus, asecurity aware fullsecurity-aware resolver(e.g.which is part of a security-awarecaching server) andrecursive name server will need tocommunicate with it using some formpay careful attention to the DNSSEC "checking disabled" (CD) bit [13] in order to avoid blocking valid signatures from getting through to other security-aware resolvers which are clients ofintegrity protection forthis recursive name server and which are capable of performing their own DNSSEC validity checks. Arends, et al. Expires August 15, 2003 [Page 10] Internet-Draft DNSSEC Introduction and Requirements February 2003 6. Stub Resolver Considerations Although not strictly required to do so by the protocol, most DNS queriesand responses. Examples of integrity protectionoriginate from stub resolvers. Stub resolvers, by definition, aretransaction authentication schemes as defined inminimal DNS resolvers which use recursive query mode to offload most of thecontextwork of DNSand/or IPsecresolution toprotect all traffic froma recursive name server. Given the widespread use of stubresolver's hostresolvers, the DNSSEC architecture has to take stub resolvers into account, but thehost of asecurityaware full resolver. Iffeatures needed in asecurity aware fullstub resolveris configured to forward queries to anotherdiffer in some respects from those needed in a fullresolver,security-aware resolver. Even an unaugmented stub resolver may get some benefit from DNSSEC if thelatter is recommended to be security aware also. If not,recursive name servers it uses are security-aware, but for thesecurity awarestub resolvermight not be abletoobtainplace any real reliance on DNSSEC services, thedata needed to make a security determination. A security awarestub resolverought to be capable of contactingmust trust both theauthoritativerecursive name serversdirectly, but do so within question and theconsiderationcommunication channels between itself and those name servers. The first ofperformance impacts. If a security aware resolverthese issues isseparated from authoritative servers byacachinglocal policy issue: in essence, a stub resolver has no real choice but to place itself at the mercy of the recursive name servers thatis not security aware,itis possible that the security aware resolver will only be able to operate in an insecure mode. For example, if auses, since it does not perform DNSSEC validity checks on its own. The second issue requires some kind of channel securityaware resolver's packets are routed through a device (suchmechanism; proper use of DNS transaction authentication mechanisms such asa Network Address Translator) that actsSIG(0) or TSIG would suffice, asa DNS proxywould appropriate use of IPsec, and particular implementations may have other choices available, such as operating system specific interprocess communication mechanisms. Confidentiality is not needed for this channel, but data integrity and message authentication are. {{AD bit currently ratholed, update this when its fate isnot security aware,settled}} There is one more step which a security-aware stub resolver can take if, for whatever reason, itmight not be possible to deliver secured responses. Thisisbecause the base DNS Arends, et al. Expires June 1, 2003 [Page 8] Internet-Draft DNSSEC Intro. and Requirements December 2002 protocol doesnotprovide meansable toremotely manage intermediate DNS caches, hence, it is possible that some data may be 'stuck' or dropped in the cache and prevent construction ofestablish a useful trust relationship with theauthentication chainrecursive name servers which it uses: it can perform its own signature validation, by setting theclient resolver. If an unsecure server or an unsigned zone results in a breakChecking Disabled (CD) bit inthe authentication chain,its query messages. Upon taking this step, the resolvercannot ensure security. Ifis no longer really asecurity-awarestub resolvermust rely on an unsecure server (or unsigned zone) that cannot supply the necessary security RRs,at all anymore (in theresolver cannot verify DNS responsesterminology used in this document set, anyway), andshould rely on local policy when accepting responses.is now a security-aware resolver with somewhat limited functionality. Arends, et al. ExpiresJune 1,August 15, 2003 [Page9]11] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 6.February 2003 7. Zone ConsiderationsA secure zone will haveThere are several differencesfrom anbetween signed and unsignedzone.zones. Asecuresigned zone will contain additional security-related records (SIG, KEY, DS and NXT records). SIG and NXT records may be generated by a signing process prior to serving the zone.Zone data is only valid and considered secure for a definable time period.The SIG records that accompany zone data have defined inception and expirationtimes. These timestimes, which establish a validity period for the signatures and the zone data the signatures cover.6.17.1 TTL values vs. SIG validity period It is important to note the distinction between an RRset's TTL value and the signature validity period specifiedinby the SIG RR coveringanthat RRset. DNSSEC does not change the definition or function of the TTL value, which is intended to maintain database coherency incaches: stalecaches. A caching resolver purges RRsetsare purgedfromcaches afterits cache no later than theperiodend of the timedefined inperiod specified by the TTLfield.fields of those RRsets, regardless of whether or not the resolver is security-aware. The inception and expiration fields in the SIG RR[12],[13], on the other hand, specify the time periodwhenduring which the signature can be used to validateits covering RRset. Zonethe RRset that it covers. The signatures associated with signed zone dataisare only(cryptographically)validand secure (pending verification of the signature)fora specificthe time periodandspecified by these fieldsestablish the time period that a given signature coversin theRRset. TheSIG RRs in question. TTLvalue should not be used to artificiallyvalues cannot extend the validity period of signedRR setsRRsets in a resolver's cache, but the resolver may use the time remaining before expiration of the signature validity periodmay decreaseof a signed RRset as an upper bound for the TTL of the signedRRsetsRRset and its associated SIG RR inathe resolver's cache.6.27.2 New Temporal Dependency Issues for ZonesWith the addition of the security extensions,Information in a signed zoneinformation nowhas a temporalfactor thatdependency which did notpreviouslyexist in the original DNS protocol.The signature validity period is a time period for which an RRset can be considered valid, and applies only to the specific RRset, not to the zone as a whole.A signed zone requires regular maintenance to ensure that each RRset in the zone has atemporallycurrent valid SIG RR.This might also requireThe signature validity period of a SIG RR is a"zone load"interval during whichwillthe signature for one particular signed RRset can bedefined as an increaseconsidered valid, and the signatures of different RRsets in a zone may expire at different times. Re-signing one or more RRsets in a zone will change one or more SIG RRs, which in turn will require incrementing the zone's SOA serialnumber, indicatingnumber to indicate that a zone change has occurred and re-signing the SOA RRset itself. Thus, re- signing any RRset in a zone maycausealso trigger DNS NOTIFY messages and zone transfersto take place (IXFR or AXFR).operations. Arends, et al. ExpiresJune 1,August 15, 2003 [Page10]12] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 7.February 2003 8. Name Server Considerations A security-awareserver must be capable of performing the following operations in addition to the normal operations of a DNS server described in [2]: A security-awarename server shouldmake all attempts toincludenecessary security-relatedthe appropriate DNSSEC records (SIG, KEY, DS and NXT) in all responsesas DNSto queries from resolvers which have signaled their willingness to receive such records via use of the DO bit in the EDNS header, subject to messagespace permits. A caching (i.e. recursive)size limitations. For this reason a security-aware name servershould also take a signature's validation period into consideration when determiningmust support thetimeEDNS mechanism size extension, since otherwise inclusion of DNSSEC RRs could easily cause UDP message truncation and fallback tolive (TTL)TCP. If possible, the private half ofcached data: signed dataeach DNSSEC key pair should be kept offline, but this will not becached beyond the signature validity period. All means of restricting query,possible for a zonetransfer,for which DNS dynamic updateand administrative access to an authoritative security-awarehas been enabled. In the dynamic update case, the primary master serverfall underfor thecategoryzone will have to re-sign the zone when updated, so the private half ofoperational security and are not addressed bytheDNS security extensions. Such issues fall underzone signing key will have to be kept online. This is an example of a situation where theneed for transaction security (see [5]ability to separate the zone's KEY RRset into zone signing key(s) and[7] ).key signing key(s) may be useful, since the key singing key(s) in such a case can still be kept offline. DNSSEC, by itself, is not enough to protect the integrity of an entire zone during zone transfer operations, since even a signed zone contains some unsigned data, so zone maintenance operations will require some additional mechanisms (most likely some form of channel security, such as TSIG, SIG(0), or IPsec). Arends, et al. ExpiresJune 1,August 15, 2003 [Page11]13] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 8.February 2003 9. DNS Security Document Family The DNSSEC set of documents can be partitioned into five main groups as depicted in Figure 1. All these documents are in turn under the larger umbrella of the DNS base protocol documents described in [18].8.19.1 DNS Security Document Roadmap ---------------------------------------------------------------------+--------------------------------+ | |+----------------------------------+ | Base DNS ProtocolDocsDocuments | | [RFC1035, RFC2181,etc.] | |et sequentia] |+--------------------------------++----------------------------------+ | | +-----------++-------------++----------+ | DNSSEC | | New | | Protocol |--------->| Security | | Documents | | Uses | +-----------++-------------++----------+ | | +---------------- - - - - - - -+ | . | .+------------+ +---------------+ | Dig. Sig. |+------------------+ . | Digital | +------------------+ |AlgorithmSignature | | Transaction | |Impl.Algorithm | |Impl.Authentication | | Implementations | | Implementations |+------------+ +---------------++------------------+ +------------------+ Figure 1: DNSSEC Document Roadmap ---------------------------------------------------------------------8.29.2 Categories of DNS Security Documents The "DNSSEC protocol document set" refers to the three documentsthatwhich form the core of the DNS security extensions: 1. DNS Security Introduction and Requirements (this document) 2. Resource Records for DNS Security Extensions [13] Arends, et al. ExpiresJune 1,August 15, 2003 [Page12]14] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 2. Resource Records for DNS Security Extensions [12]February 2003 3. Protocol Modifications for the DNS Security Extensions[13][14] The"Dig. Sig."Digital Signature AlgorithmImpl."Implementations" document set refers to the group of documents that describe how specific digital signature algorithms should be implemented to fit the DNSSEC resource record format. Each of these documents deals with a specific digital signature algorithm. The "TransactionImpl."Authentication Implementations" document set refers to the group of documents that deal with DNS message authentication, including secret key establishment and verification. While not strictly part of theDNS SecurityDNSSEC specification as defined in this set of documents,it should be included herethis group is noted tonoteshow its relationship tothe DNS Security extensions.DNSSEC. The final document set, "New Security Uses", refers to documents that seek to use proposed DNS Security extensions for other security related purposes.TheDNSSECextensionsdoes not provide any direct security for these new uses,bybut may be used to support them. Documents that fall in this category include the use of DNS in the storage and distribution of certificates [15] and individual user public keys (PGP, e-mail,etc.)and so forth) [17]. Arends, et al. ExpiresJune 1,August 15, 2003 [Page13]15] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 9.February 2003 10. IANA Considerations This document introduces no new IANA considerations. Arends, et al. ExpiresJune 1,August 15, 2003 [Page14]16] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 10.February 2003 11. Security Considerations This document introduces the DNS security extensions and describes the document set that contains the new security records and DNS protocol modifications.TheThis document discusses the capabilities and limitations of theseextensions are discussed.extensions. The extensions provide data origin authentication and data integrity using digital signatures over resource record sets. In order for asecuresecurity-aware resolver to validate a DNS response, all of the intermediate zonesand serversmust becapablesigned, and all ofDNS security processingthe intermediate name servers must be security-aware, as defined in this document set. A security-aware resolver cannot verify responses originating from an unsignedzone orzone, from a zone not served by anon-security-aware server.security-aware name server, or for any DNS data which the resolver is only able to obtain through a recursive name server which is not security-aware. If there is a break in the authentication chain(i.e., nosuch that a security-aware resolver cannot obtain and validate the authenticationkey can be obtained),keys it needs, thena security awarethe security-aware resolver cannotverify thosevalidate the affected DNSresponses. Otherdata. This document briefly discusses other methods of adding security to a DNSqueryquery, such as using asecurechannel(e.g. IPSec tunnel, etc.)secured by IPsec or using a DNS transaction authenticationover DNS messages aremechanism, but transaction security is notdiscussed inpart of DNSSEC per se. A security-aware stub resolver, by definition, does not perform DNSSEC signature validation on its own, and thus is vulnerable both to attacks on (and by) the security-aware recursive name servers which perform thesedocuments. Localchecks on its behalf and also to attacks on its communication with those security-aware recursive name servers. Security-aware stub resolvers should use some form of channel securitypolicy may extend or overrideto defend against theprotocol modifications described in this document set.latter threat. TheDNS security extensions doonly known defense against the former threat would be for the security-aware stub resolver to perform its own signature validation, at which point, again by definition, it would no longer be a security-aware stub resolver. DNSSEC does not protect against denial of service(DoS)attacks. DNSSEC makes DNS vulnerable to a new class of denial of service attacks based on cryptographic operations against security-aware resolvers and security-aware name servers, since an attacker can attempt to use DNSSEC mechanisms to consume a victim's resources. This class of attacks takes at least two forms. An attacker may be able to consume resources in a security-aware resolver's signature validation code by tampering with SIG RRs in response messages orprovide confidentiality. Theby constructing needlessly complex signature chains. An attacker may also be able to consume resources in a security-aware name server which supports DNS Arends, et al. Expires August 15, 2003 [Page 17] Internet-Draft DNSSECextensions does openIntroduction and Requirements February 2003 dynamic update, by sending anew class of cryptographic based classstream ofDoS attacks against a security-aware resolver orupdate messages that force the security-awareserver. These attacks attemptname server tooccupy a system's resources with cryptographic operations. There is now alsore-sign some RRsets in the zone more frequently than would otherwise be necessary. DNSSEC add the ability for a hostile party to enumerate all the names in a zone by following the NXT chain.TheNXTRR indicatesRRs assert which names do not exist in a zone by linkingafrom existing name tothe next canonicalexisting nameinalong a canonical ordering of all the names within a zone.A resolverThus, an attacker can query these NXT RRs in sequence to obtain all thehostnamesnames in a zone. Whilethis mightnotbe consideredan attacktoon thepublic DNS,DNS itself, this could allowa mapping ofan attacker to map network hosts or other resources by enumerating the contents of a zone. DNSSEC does not provide confidentiality, due to a deliberate design choice. DNSSEC does not protect against tampering with unsigned zone data. Non-authoritative data at zone cuts (glue and NS RRs in the parent zone) are not signed. Thus, while DNSSEC can provide data origin authentication and data integrity for RRsets, it cannot do so for zones, and other mechanisms must be used to protect zone transfer operations. Arends, et al. ExpiresJune 1,August 15, 2003 [Page15]18] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002 11.February 2003 12. Acknowledgements This document was created from the input and ideas of several members of the DNS Extensions Working Group. The authors would like to acknowledge (in alphabetical order) the following people for their contributions and comments on this document: Derek AtkinsRob AusteinDonald Eastlake Miek Gieben Olafur Gudmundsson Olaf Kolkman Ed Lewis Ted Lindgreen Bill Manning Brian Wellington Arends, et al. ExpiresJune 1,August 15, 2003 [Page16]19] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 Normative References [1] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987. [2] Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987. [3] Eastlake, D., "Domain Name System Security Extensions", RFC 2535, March 1999. [4] Vixie, P., "Extension Mechanisms for DNS (EDNS0)", RFC 2671, August 1999. [5] Vixie, P., Gudmundsson, O., Eastlake, D. and B. Wellington, "Secret Key Transaction Authentication for DNS (TSIG)", RFC 2845, May 2000. [6] Eastlake, D., "Secret Key Establishment for DNS (TKEY RR)", RFC 2930, September 2000. [7] Eastlake, D., "DNS Request and Transaction Signatures ( SIG(0)s)", RFC 2931, September 2000. [8] Conrad, D., "Indicating Resolver Support of DNSSEC", RFC 3225, December 2001. [9] Gudmundsson, O., "DNSSEC and IPv6 A6 aware server/resolver message size requirements", RFC 3226, December 2001. [10] Massey, D. and S. Rose, "Limiting the Scope of the KEY Resource Record (RR)", RFC 3445, December 2002. [11] Atkins, D. and R. Austein, "Threat Analysis Of The Domain Name System", draft-ietf-dnsext-dns-threats-02 (work in progress), February 2002. [12] Kolkman, O. and J. Schlyter, "KEY RR Key Signing Key (KSK) Flag", draft-ietf-dnsext-keyrr-key-signing-flag-05 (work in progress), December 2002. [13] Arends, R., Larson, M., Massey, D. and S. Rose, "Resource Records for DNS Security Extensions", draft-ietf-dnsext-dnssec- records-02 (work in progress), November 2002.[13][14] Arends, R., Larson, M., Massey, D. and S. Rose, "Protocol Modifications for the DNS Security Extensions", draft-ietf- dnsext-dnssec-protocol-00 (work in progress), October 2002.[14] Kolkman, O. and J. Schlyter, "KEY RR Key Signing Key (KSK) Flag", draft-ietf-dnsext-keyrr-key-signing-flag-05 (work in progress), December 2002.Arends, et al. ExpiresJune 1,August 15, 2003 [Page17]20] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 Informative References [15] Eastlake, D. and O. Gudmundsson, "Storing Certificates in the Domain Name System (DNS)", RFC 2538, March 1999. [16] Wellington, B., "Secure Domain Name System (DNS) Dynamic Update", RFC 3007, November 2000. [17] Schlyter, J., "Storing application public keys in the DNS", draft-schlyter-appkey-02 (work in progress), February 2002. [18] Rose, S., "DNS Security Document Roadmap", draft-ietf-dnsext- dnssec-roadmap-06 (work in progress), November 2001. Authors' Addresses Roy Arends Telematica Instituut Drienerlolaan 5 7522 NB Enschede NL EMail:roy@logmess.comroy.arends@telin.nl Rob Austein Internet Software Consortium 40 Gavin Circle Reading, MA 01867 USA EMail: sra@isc.org Matt Larson VeriSign, Inc. 21345 Ridgetop Circle Dulles, VA 20166-6503 USA EMail: mlarson@verisign.com Arends, et al. Expires August 15, 2003 [Page 21] Internet-Draft DNSSEC Introduction and Requirements February 2003 Dan Massey USC Information Sciences Institute 3811 N. Fairfax Drive Arlington, VA 22203 USA EMail: masseyd@isi.eduArends, et al. Expires June 1, 2003 [Page 18] Internet-Draft DNSSEC Intro. and Requirements December 2002Scott Rose National Institute for Standards and Technology 100 Bureau Drive Gaithersburg, MD 20899-8920 USA EMail: scott.rose@nist.gov Arends, et al. ExpiresJune 1,August 15, 2003 [Page19]22] Internet-Draft DNSSECIntro.Introduction and RequirementsDecember 2002February 2003 Full Copyright Statement Copyright (C) The Internet Society(2002).(2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgement Funding for the RFC Editor function is currently provided by the Internet Society. Arends, et al. ExpiresJune 1,August 15, 2003 [Page20]23] ----