📄 rfc3655.txt
字号:
Network Working Group B. WellingtonRequest for Comments: 3655 O. GudmundssonUpdates: 2535 November 2003Category: Standards Track Redefinition of DNS Authenticated Data (AD) bitStatus 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 theWellington & Gudmundsson Standards Track [Page 1]RFC 3655 Redefinition of DNS AD bit November 2003 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 orWellington & Gudmundsson Standards Track [Page 2]RFC 3655 Redefinition of DNS AD bit November 2003 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 beginWellington & Gudmundsson Standards Track [Page 3]RFC 3655 Redefinition of DNS AD bit November 2003 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; itWellington & Gudmundsson Standards Track [Page 4]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -