]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - contrib/bind9/doc/rfc/rfc3655.txt
Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.
[FreeBSD/releng/7.2.git] / contrib / bind9 / doc / rfc / rfc3655.txt
1
2
3
4
5
6
7 Network Working Group                                      B. Wellington
8 Request for Comments: 3655                                O. Gudmundsson
9 Updates: 2535                                              November 2003
10 Category: Standards Track
11
12
13             Redefinition of DNS Authenticated Data (AD) bit
14
15 Status of this Memo
16
17    This document specifies an Internet standards track protocol for the
18    Internet community, and requests discussion and suggestions for
19    improvements.  Please refer to the current edition of the "Internet
20    Official Protocol Standards" (STD 1) for the standardization state
21    and status of this protocol.  Distribution of this memo is unlimited.
22
23 Copyright Notice
24
25    Copyright (C) The Internet Society (2003).  All Rights Reserved.
26
27 Abstract
28
29    This document alters the specification defined in RFC 2535.  Based on
30    implementation experience, the Authenticated Data (AD) bit in the DNS
31    header is not useful.  This document redefines the AD bit such that
32    it is only set if all answers or records proving that no answers
33    exist in the response has been cryptographically verified or
34    otherwise meets the server's local security policy.
35
36 1.  Introduction
37
38    Familiarity with the DNS system [RFC1035] and DNS security extensions
39    [RFC2535] is helpful but not necessary.
40
41    As specified in RFC 2535 (section 6.1), the AD (Authenticated Data)
42    bit indicates in a response that all data included in the answer and
43    authority sections of the response have been authenticated by the
44    server according to the policies of that server.  This is not
45    especially useful in practice, since a conformant server SHOULD never
46    reply with data that failed its security policy.
47
48    This document redefines the AD bit such that it is only set if all
49    data in the response has been cryptographically verified or otherwise
50    meets the server's local security policy.  Thus, neither a response
51    containing properly delegated insecure data, nor a server configured
52    without DNSSEC keys, will have the AD set.  As before, data that
53    failed to verify will not be returned.  An application running on a
54    host that has a trust relationship with the server performing the
55
56
57
58 Wellington & Gudmundsson    Standards Track                     [Page 1]
59 \f
60 RFC 3655               Redefinition of DNS AD bit          November 2003
61
62
63    recursive query can now use the value of the AD bit to determine
64    whether the data is secure.
65
66 1.1.  Motivation
67
68    A full DNSSEC capable resolver called directly from an application
69    can return to the application the security status of the RRsets in
70    the answer.  However, most applications use a limited stub resolver
71    that relies on an external recursive name server which incorporates a
72    full resolver.  The recursive nameserver can use the AD bit in a
73    response to indicate the security status of the data in the answer,
74    and the local resolver can pass this information to the application.
75    The application in this context can be either a human using a DNS
76    tool or a software application.
77
78    The AD bit SHOULD be used by the local resolver if and only if it has
79    been explicitly configured to trust the remote resolver.  The AD bit
80    SHOULD be ignored when the recursive name server is not trusted.
81
82    An alternate solution would be to embed a full DNSSEC resolver into
83    every application, but this has several disadvantages.
84
85    -  DNSSEC validation is both CPU and network intensive, and caching
86       SHOULD be used whenever possible.
87
88    -  DNSSEC requires non-trivial configuration - the root key must be
89       configured, as well as keys for any "islands of security" that
90       will exist until DNSSEC is fully deployed.  The number of
91       configuration points should be minimized.
92
93 1.2.  Requirements
94
95    The key words "MAY", "MAY NOT" "MUST", "MUST NOT", "SHOULD", "SHOULD
96    NOT", "RECOMMENDED", in this document are to be interpreted as
97    described in BCP 14, RFC 2119 [RFC2119].
98
99 1.3.  Updated documents and sections
100
101    The definition of the AD bit in RFC 2535, Section 6.1, is changed.
102
103 2.  Setting of AD bit
104
105    The presence of the CD (Checking Disabled) bit in a query does not
106    affect the setting of the AD bit in the response.  If the CD bit is
107    set, the server will not perform checking, but SHOULD still set the
108    AD bit if the data has already been cryptographically verified or
109
110
111
112
113
114 Wellington & Gudmundsson    Standards Track                     [Page 2]
115 \f
116 RFC 3655               Redefinition of DNS AD bit          November 2003
117
118
119    complies with local policy.  The AD bit MUST only be set if DNSSEC
120    records have been requested via the DO bit [RFC3225] and relevant SIG
121    records are returned.
122
123 2.1.  Setting of AD bit by recursive servers
124
125    Section 6.1 of RFC 2535 says:
126
127    "The AD bit MUST NOT be set on a response unless all of the RRs in
128    the answer and authority sections of the response are either
129    Authenticated or Insecure."
130
131    The replacement text reads:
132
133    "The AD bit MUST NOT be set on a response unless all of the RRsets in
134    the answer and authority sections of the response are Authenticated."
135
136    "The AD bit SHOULD be set if and only if all RRs in the answer
137    section and any relevant negative response RRs in the authority
138    section are Authenticated."
139
140    A recursive DNS server following this modified specification will
141    only set the AD bit when it has cryptographically verified the data
142    in the answer.
143
144 2.2.  Setting of AD bit by authoritative servers
145
146    A primary server for a secure zone MAY have the policy of treating
147    authoritative secure zones as Authenticated.  Secondary servers MAY
148    have the same policy, but SHOULD NOT consider zone data Authenticated
149    unless the zone was transferred securely and/or the data was
150    verified.  An authoritative server MUST only set the AD bit for
151    authoritative answers from a secure zone if it has been explicitly
152    configured to do so.  The default for this behavior SHOULD be off.
153
154    Note that having the AD bit clear on an authoritative answer is
155    normal and expected behavior.
156
157 2.2.1.  Justification for setting AD bit w/o verifying data
158
159    The setting of the AD bit by authoritative servers affects only the
160    small set of resolvers that are configured to directly query and
161    trust authoritative servers.  This only affects servers that function
162    as both recursive and authoritative.  Iterative resolvers SHOULD
163    ignore the AD bit.
164
165    The cost of verifying all signatures on load by an authoritative
166    server can be high and increases the delay before it can begin
167
168
169
170 Wellington & Gudmundsson    Standards Track                     [Page 3]
171 \f
172 RFC 3655               Redefinition of DNS AD bit          November 2003
173
174
175    answering queries.  Verifying signatures at query time is also
176    expensive and could lead to resolvers timing out on many queries
177    after the server reloads zones.
178
179    Organizations requiring that all DNS responses contain
180    cryptographically verified data will need to separate the
181    authoritative name server and signature verification functions, since
182    name servers are not required to validate signatures of data for
183    which they are authoritative.
184
185 3.  Interpretation of the AD bit
186
187    A response containing data marked Insecure in the answer or authority
188    section MUST never have the AD bit set.  In this case, the resolver
189    SHOULD treat the data as Insecure whether or not SIG records are
190    present.
191
192    A resolver MUST NOT blindly trust the AD bit unless it communicates
193    with a recursive nameserver over a secure transport mechanism or
194    using a message authentication such as TSIG [RFC2845] or SIG(0)
195    [RFC2931] and is explicitly configured to trust this recursive name
196    server.
197
198 4.  Applicability statement
199
200    The AD bit is intended to allow the transmission of the indication
201    that a resolver has verified the DNSSEC signatures accompanying the
202    records in the Answer and Authority section.  The AD bit MUST only be
203    trusted when the end consumer of the DNS data has confidence that the
204    intermediary resolver setting the AD bit is trustworthy.  This can
205    only be accomplished via an out of band mechanism such as:
206
207    -  Fiat: An organization that can dictate whether it is OK to trust
208       certain DNS servers.
209
210    -  Personal: Because of a personal relationship or the reputation of
211       a recursive nameserver operator, a DNS consumer can decide to
212       trust that recursive nameserver.
213
214    -  Knowledge: If a recursive nameserver operator posts the configured
215       policy of a recursive nameserver, a consumer can decide that
216       recursive nameserver is trustworthy.
217
218    In the absence of one or more of these factors AD bit from a
219    recursive name server SHOULD NOT be trusted.  For example, home users
220    frequently depend on their ISP to provide recursive DNS service; it
221
222
223
224
225
226 Wellington & Gudmundsson    Standards Track                     [Page 4]
227 \f
228 RFC 3655               Redefinition of DNS AD bit          November 2003
229
230
231    is not advisable to trust these recursive nameservers.  A
232    roaming/traveling host SHOULD not use recursive DNS servers offered
233    by DHCP when looking up information where security status matters.
234
235    In the latter two cases, the end consumer must also completely trust
236    the path to the trusted recursive name servers, or a secure transport
237    must be employed to protect the traffic.
238
239    When faced with a situation where there are no satisfactory recursive
240    nameservers available, running one locally is RECOMMENDED.  This has
241    the advantage that it can be trusted, and the AD bit can still be
242    used to allow applications to use stub resolvers.
243
244 5.  Security Considerations
245
246    This document redefines a bit in the DNS header.  If a resolver
247    trusts the value of the AD bit, it must be sure that the responder is
248    using the updated definition, which is any DNS server/resolver
249    supporting the DO bit [RFC3225].
250
251    Authoritative servers can be explicitly configured to set the AD bit
252    on answers without doing cryptographic checks.  This behavior MUST be
253    off by default.  The only affected resolvers are those that directly
254    query and trust the authoritative server, and this functionality
255    SHOULD only be used on servers that act both as authoritative and
256    recursive name servers.
257
258    Resolvers (full or stub) that blindly trust the AD bit without
259    knowing the security policy of the server generating the answer can
260    not be considered security aware.
261
262    A resolver MUST NOT blindly trust the AD bit unless it communicates
263    such as IPsec, or using message authentication such as TSIG [RFC2845]
264    or SIG(0) [RFC2931].  In addition, the resolver must have been
265    explicitly configured to trust this recursive name server.
266
267 6.  IANA Considerations
268
269    None.
270
271 7.  Internationalization Considerations
272
273    None.  This document does not change any textual data in any
274    protocol.
275
276
277
278
279
280
281
282 Wellington & Gudmundsson    Standards Track                     [Page 5]
283 \f
284 RFC 3655               Redefinition of DNS AD bit          November 2003
285
286
287 8.  Intellectual Property Rights Notice
288
289    The IETF takes no position regarding the validity or scope of any
290    intellectual property or other rights that might be claimed to
291    pertain to the implementation or use of the technology described in
292    this document or the extent to which any license under such rights
293    might or might not be available; neither does it represent that it
294    has made any effort to identify any such rights.  Information on the
295    IETF's procedures with respect to rights in standards-track and
296    standards-related documentation can be found in BCP-11.  Copies of
297    claims of rights made available for publication and any assurances of
298    licenses to be made available, or the result of an attempt made to
299    obtain a general license or permission for the use of such
300    proprietary rights by implementors or users of this specification can
301    be obtained from the IETF Secretariat.
302
303    The IETF invites any interested party to bring to its attention any
304    copyrights, patents or patent applications, or other proprietary
305    rights which may cover technology that may be required to practice
306    this standard.  Please address the information to the IETF Executive
307    Director.
308
309 9.  Acknowledgments
310
311    The following people have provided input on this document: Robert
312    Elz, Andreas Gustafsson, Bob Halley, Steven Jacob, Erik Nordmark,
313    Edward Lewis, Jakob Schlyter, Roy Arends, Ted Lindgreen.
314
315 10.  Normative References
316
317    [RFC1035] Mockapetris, P., "Domain Names - Implementation and
318              Specification", STD 13, RFC 1035, November 1987.
319
320    [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
321              Requirement Levels", BCP 14, RFC 2119, March 1997.
322
323    [RFC2535] Eastlake, D., "Domain Name System Security Extensions", RFC
324              2535, March 1999.
325
326    [RFC2845] Vixie, P., Gudmundsson, O., Eastlake 3rd, D. and B.
327              Wellington, "Secret Key Transaction Authentication for DNS
328              (TSIG)", RFC 2845, May 2000.
329
330    [RFC2931] Eastlake, D., "DNS Request and Transaction Signatures
331              (SIG(0))", RFC 2931, September 2000.
332
333    [RFC3225] Conrad, D., "Indicating Resolver Support of DNSSEC", RFC
334              3225, December 2001.
335
336
337
338 Wellington & Gudmundsson    Standards Track                     [Page 6]
339 \f
340 RFC 3655               Redefinition of DNS AD bit          November 2003
341
342
343 11.  Authors' Addresses
344
345    Brian Wellington
346    Nominum Inc.
347    2385 Bay Road
348    Redwood City, CA, 94063
349    USA
350
351    EMail: Brian.Wellington@nominum.com
352
353
354    Olafur Gudmundsson
355    3821 Village Park Drive
356    Chevy Chase, MD, 20815
357    USA
358
359    EMail: ogud@ogud.com
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394 Wellington & Gudmundsson    Standards Track                     [Page 7]
395 \f
396 RFC 3655               Redefinition of DNS AD bit          November 2003
397
398
399 12.  Full Copyright Statement
400
401    Copyright (C) The Internet Society (2003).  All Rights Reserved.
402
403    This document and translations of it may be copied and furnished to
404    others, and derivative works that comment on or otherwise explain it
405    or assist in its implementation may be prepared, copied, published
406    and distributed, in whole or in part, without restriction of any
407    kind, provided that the above copyright notice and this paragraph are
408    included on all such copies and derivative works.  However, this
409    document itself may not be modified in any way, such as by removing
410    the copyright notice or references to the Internet Society or other
411    Internet organizations, except as needed for the purpose of
412    developing Internet standards in which case the procedures for
413    copyrights defined in the Internet Standards process must be
414    followed, or as required to translate it into languages other than
415    English.
416
417    The limited permissions granted above are perpetual and will not be
418    revoked by the Internet Society or its successors or assignees.
419
420    This document and the information contained herein is provided on an
421    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
422    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
423    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
424    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
425    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
426
427 Acknowledgement
428
429    Funding for the RFC Editor function is currently provided by the
430    Internet Society.
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450 Wellington & Gudmundsson    Standards Track                     [Page 8]
451 \f