faqs.org - Internet FAQ Archives

RFC 3655 - Redefinition of DNS Authenticated Data (AD) bit


Or Display the document by number




Network Working Group                                      B. Wellington
Request for Comments: 3655                                O. Gudmundsson
Updates: 2535                                              November 2003
Category: Standards Track

            Redefinition of DNS Authenticated Data (AD) bit

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2003).  All Rights Reserved.

Abstract

   This document alters the specification defined in RFC 2535.  Based on
   implementation experience, the Authenticated Data (AD) bit in the DNS
   header is not useful.  This document redefines the AD bit such that
   it is only set if all answers or records proving that no answers
   exist in the response has been cryptographically verified or
   otherwise meets the server's local security policy.

1.  Introduction

   Familiarity with the DNS system [RFC1035] and DNS security extensions
   [RFC2535] is helpful but not necessary.

   As specified in RFC 2535 (section 6.1), the AD (Authenticated Data)
   bit indicates in a response that all data included in the answer and
   authority sections of the response have been authenticated by the
   server according to the policies of that server.  This is not
   especially useful in practice, since a conformant server SHOULD never
   reply with data that failed its security policy.

   This document redefines the AD bit such that it is only set if all
   data in the response has been cryptographically verified or otherwise
   meets the server's local security policy.  Thus, neither a response
   containing properly delegated insecure data, nor a server configured
   without DNSSEC keys, will have the AD set.  As before, data that
   failed to verify will not be returned.  An application running on a
   host that has a trust relationship with the server performing the

   recursive query can now use the value of the AD bit to determine
   whether the data is secure.

1.1.  Motivation

   A full DNSSEC capable resolver called directly from an application
   can return to the application the security status of the RRsets in
   the answer.  However, most applications use a limited stub resolver
   that relies on an external recursive name server which incorporates a
   full resolver.  The recursive nameserver can use the AD bit in a
   response to indicate the security status of the data in the answer,
   and the local resolver can pass this information to the application.
   The application in this context can be either a human using a DNS
   tool or a software application.

   The AD bit SHOULD be used by the local resolver if and only if it has
   been explicitly configured to trust the remote resolver.  The AD bit
   SHOULD be ignored when the recursive name server is not trusted.

   An alternate solution would be to embed a full DNSSEC resolver into
   every application, but this has several disadvantages.

   -  DNSSEC validation is both CPU and network intensive, and caching
      SHOULD be used whenever possible.

   -  DNSSEC requires non-trivial configuration - the root key must be
      configured, as well as keys for any "islands of security" that
      will exist until DNSSEC is fully deployed.  The number of
      configuration points should be minimized.

1.2.  Requirements

   The key words "MAY", "MAY NOT" "MUST", "MUST NOT", "SHOULD", "SHOULD
   NOT", "RECOMMENDED", in this document are to be interpreted as
   described in BCP 14, RFC 2119 [RFC2119].

1.3.  Updated documents and sections

   The definition of the AD bit in RFC 2535, Section 6.1, is changed.

2.  Setting of AD bit

   The presence of the CD (Checking Disabled) bit in a query does not
   affect the setting of the AD bit in the response.  If the CD bit is
   set, the server will not perform checking, but SHOULD still set the
   AD bit if the data has already been cryptographically verified or

   complies with local policy.  The AD bit MUST only be set if DNSSEC
   records have been requested via the DO bit [RFC3225] and relevant SIG
   records are returned.

2.1.  Setting of AD bit by recursive servers

   Section 6.1 of RFC 2535 says:

   "The AD bit MUST NOT be set on a response unless all of the RRs in
   the answer and authority sections of the response are either
   Authenticated or Insecure."

   The replacement text reads:

   "The AD bit MUST NOT be set on a response unless all of the RRsets in
   the answer and authority sections of the response are Authenticated."

   "The AD bit SHOULD be set if and only if all RRs in the answer
   section and any relevant negative response RRs in the authority
   section are Authenticated."

   A recursive DNS server following this modified specification will
   only set the AD bit when it has cryptographically verified the data
   in the answer.

2.2.  Setting of AD bit by authoritative servers

   A primary server for a secure zone MAY have the policy of treating
   authoritative secure zones as Authenticated.  Secondary servers MAY
   have the same policy, but SHOULD NOT consider zone data Authenticated
   unless the zone was transferred securely and/or the data was
   verified.  An authoritative server MUST only set the AD bit for
   authoritative answers from a secure zone if it has been explicitly
   configured to do so.  The default for this behavior SHOULD be off.

   Note that having the AD bit clear on an authoritative answer is
   normal and expected behavior.

2.2.1.  Justification for setting AD bit w/o verifying data

   The setting of the AD bit by authoritative servers affects only the
   small set of resolvers that are configured to directly query and
   trust authoritative servers.  This only affects servers that function
   as both recursive and authoritative.  Iterative resolvers SHOULD
   ignore the AD bit.

   The cost of verifying all signatures on load by an authoritative
   server can be high and increases the delay before it can begin

   answering queries.  Verifying signatures at query time is also
   expensive and could lead to resolvers timing out on many queries
   after the server reloads zones.

   Organizations requiring that all DNS responses contain
   cryptographically verified data will need to separate the
   authoritative name server and signature verification functions, since
   name servers are not required to validate signatures of data for
   which they are authoritative.

3.  Interpretation of the AD bit

   A response containing data marked Insecure in the answer or authority
   section MUST never have the AD bit set.  In this case, the resolver
   SHOULD treat the data as Insecure whether or not SIG records are
   present.

   A resolver MUST NOT blindly trust the AD bit unless it communicates
   with a recursive nameserver over a secure transport mechanism or
   using a message authentication such as TSIG [RFC2845] or SIG(0)
   [RFC2931] and is explicitly configured to trust this recursive name
   server.

4.  Applicability statement

   The AD bit is intended to allow the transmission of the indication
   that a resolver has verified the DNSSEC signatures accompanying the
   records in the Answer and Authority section.  The AD bit MUST only be
   trusted when the end consumer of the DNS data has confidence that the
   intermediary resolver setting the AD bit is trustworthy.  This can
   only be accomplished via an out of band mechanism such as:

   -  Fiat: An organization that can dictate whether it is OK to trust
      certain DNS servers.

   -  Personal: Because of a personal relationship or the reputation of
      a recursive nameserver operator, a DNS consumer can decide to
      trust that recursive nameserver.

   -  Knowledge: If a recursive nameserver operator posts the configured
      policy of a recursive nameserver, a consumer can decide that
      recursive nameserver is trustworthy.

   In the absence of one or more of these factors AD bit from a
   recursive name server SHOULD NOT be trusted.  For example, home users
   frequently depend on their ISP to provide recursive DNS service; it

   is not advisable to trust these recursive nameservers.  A
   roaming/traveling host SHOULD not use recursive DNS servers offered
   by DHCP when looking up information where security status matters.

   In the latter two cases, the end consumer must also completely trust
   the path to the trusted recursive name servers, or a secure transport
   must be employed to protect the traffic.

   When faced with a situation where there are no satisfactory recursive
   nameservers available, running one locally is RECOMMENDED.  This has
   the advantage that it can be trusted, and the AD bit can still be
   used to allow applications to use stub resolvers.

5.  Security Considerations

   This document redefines a bit in the DNS header.  If a resolver
   trusts the value of the AD bit, it must be sure that the responder is
   using the updated definition, which is any DNS server/resolver
   supporting the DO bit [RFC3225].

   Authoritative servers can be explicitly configured to set the AD bit
   on answers without doing cryptographic checks.  This behavior MUST be
   off by default.  The only affected resolvers are those that directly
   query and trust the authoritative server, and this functionality
   SHOULD only be used on servers that act both as authoritative and
   recursive name servers.

   Resolvers (full or stub) that blindly trust the AD bit without
   knowing the security policy of the server generating the answer can
   not be considered security aware.

   A resolver MUST NOT blindly trust the AD bit unless it communicates
   such as IPsec, or using message authentication such as TSIG [RFC2845]
   or SIG(0) [RFC2931].  In addition, the resolver must have been
   explicitly configured to trust this recursive name server.

6.  IANA Considerations

   None.

7.  Internationalization Considerations

   None.  This document does not change any textual data in any
   protocol.

8.  Intellectual Property Rights Notice

   The IETF takes no position regarding the validity or scope of any
   intellectual property or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; neither does it represent that it
   has made any effort to identify any such rights.  Information on the
   IETF's procedures with respect to rights in standards-track and
   standards-related documentation can be found in BCP-11.  Copies of
   claims of rights made available for publication and any assurances of
   licenses to be made available, or the result of an attempt made to
   obtain a general license or permission for the use of such
   proprietary rights by implementors or users of this specification can
   be obtained from the IETF Secretariat.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights which may cover technology that may be required to practice
   this standard.  Please address the information to the IETF Executive
   Director.

9.  Acknowledgments

   The following people have provided input on this document: Robert
   Elz, Andreas Gustafsson, Bob Halley, Steven Jacob, Erik Nordmark,
   Edward Lewis, Jakob Schlyter, Roy Arends, Ted Lindgreen.

10.  Normative References

   [RFC1035] Mockapetris, P., "Domain Names - Implementation and
             Specification", STD 13, RFC 1035, November 1987.

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2535] Eastlake, D., "Domain Name System Security Extensions", RFC
             2535, March 1999.

   [RFC2845] Vixie, P., Gudmundsson, O., Eastlake 3rd, D. and B.
             Wellington, "Secret Key Transaction Authentication for DNS
             (TSIG)", RFC 2845, May 2000.

   [RFC2931] Eastlake, D., "DNS Request and Transaction Signatures
             (SIG(0))", RFC 2931, September 2000.

   [RFC3225] Conrad, D., "Indicating Resolver Support of DNSSEC", RFC
             3225, December 2001.

11.  Authors' Addresses

   Brian Wellington
   Nominum Inc.
   2385 Bay Road
   Redwood City, CA, 94063
   USA

   EMail: Brian.Wellington@nominum.com

   Olafur Gudmundsson
   3821 Village Park Drive
   Chevy Chase, MD, 20815
   USA

   EMail: ogud@ogud.com

12.  Full Copyright Statement

   Copyright (C) The Internet Society (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 assignees.

   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.

 

User Contributions:

Comment about this RFC, ask questions, or add new information about this topic:

CAPTCHA