--- 1/draft-ietf-dnsop-reflectors-are-evil-03.txt 2007-07-25 18:12:07.000000000 +0200 +++ 2/draft-ietf-dnsop-reflectors-are-evil-04.txt 2007-07-25 18:12:07.000000000 +0200 @@ -1,19 +1,19 @@ Network Working Group J. Damas Internet-Draft ISC -Intended status: Informational F. Neves -Expires: August 17, 2007 Registro.br - February 13, 2007 +Intended status: Best Current F. Neves +Practice Registro.br +Expires: January 10, 2008 July 9, 2007 Preventing Use of Recursive Nameservers in Reflector Attacks - draft-ietf-dnsop-reflectors-are-evil-03.txt + draft-ietf-dnsop-reflectors-are-evil-04.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that @@ -24,42 +24,45 @@ 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 on August 17, 2007. + This Internet-Draft will expire on January 10, 2008. Copyright Notice Copyright (C) The IETF Trust (2007). Abstract This document describes ways to prevent the use of default configured - recursive nameservers as reflectors on DOS attacks. Recommended - configuration as measures to mitigate the attack are given. + recursive nameservers as reflectors in Denial of Service (DoS) + attacks. Recommended configuration as measures to mitigate the + attack are given. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 - 2. Problem Description . . . . . . . . . . . . . . . . . . . . . . 3 - 3. Recommended Configuration . . . . . . . . . . . . . . . . . . . 4 - 4. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 6 + 2. Document Terminology . . . . . . . . . . . . . . . . . . . . . 3 + 3. Problem Description . . . . . . . . . . . . . . . . . . . . . . 3 + 4. Recommended Configuration . . . . . . . . . . . . . . . . . . . 4 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 - 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 - 6.1. Normative References . . . . . . . . . . . . . . . . . . . 6 - 6.2. Informative References . . . . . . . . . . . . . . . . . . 6 + 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 6 + 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 + 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 + 8.1. Normative References . . . . . . . . . . . . . . . . . . . 6 + 8.2. Informative References . . . . . . . . . . . . . . . . . . 7 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 Intellectual Property and Copyright Statements . . . . . . . . . . 8 1. Introduction Recently, DNS [RFC1034] has been named as a major factor in the generation of massive amounts of network traffic used in Denial of Service (DoS) attacks. These attacks, called reflector attacks, are not due to any particular flaw in the design of the DNS or its implementations, aside perhaps the fact that DNS relies heavily on @@ -81,27 +84,34 @@ mitigate the scale of an attack by modifying authoritative server configurations are limited. This document's recommendations are concerned with recursive nameservers only. In this document we describe the characteristics of the attack and recommend DNS server configurations that specifically alleviate the problem described, while pointing to the only truly real solution: the wide-scale deployment of ingress filtering to prevent use of spoofed IP addresses [BCP38]. -2. Problem Description +2. Document Terminology + + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this + document are to be interpreted as described in [RFC2119]. + +3. Problem Description Because most DNS traffic is stateless by design, an attacker could start a DoS attack in the following way: 1. The attacker starts by configuring a record (LRECORD) on any zone he has access to (AZONE), normally with large RDATA and TTL. + 2. Taking advantage of clients (ZCLIENTS) on non-BCP38 networks, the attacker then crafts a query for LRECORD using the source address of their target victim and sends it to an open recursive nameserver (ORNS). 3. Each ORNS proceeds with the resolution, caches the LRECORD and finally sends it to the target. After this first lookup, access to the authoritative nameservers for AZONE is normally no longer necessary. The LRECORD will remain cached for the duration of the TTL at the ORNS even if the AZONE is corrected. 4. Cleanup of the AZONE might, depending on the implementation used @@ -126,49 +136,49 @@ historical reasons, from times when the Internet was a much closer- knit community, some nameserver implementations have been made available with default configurations that when used for recursive nameservers made the server accessible to all hosts on the Internet. For years this was a convenient and helpful configuration, enabling wider availability of services. As this document aims to make apparent, it is now much better to be conscious of ones own nameserver services and focus the delivery of services on the intended audience of those services, be they a university campus, an - enterprise or an ISP's customers. The authors also want to draw the - attention of small network operators and private server managers who + enterprise or an ISP's customers. The target audience also includes + operators of small network operators and private server managers who decide to operate nameservers with the aim of optimising their DNS service, as these are more likely to use default configurations as shipped by implementors. -3. Recommended Configuration +4. Recommended Configuration From the description of the problem in the previous section it follows that the solution to these sort of attacks is the wide deployment of ingress filtering [BCP38] in routers to prevent use of address spoofing as a viable course of action to prevent the attacks. In situations were more complex network setups are in place, "Ingress Filtering for Multihomed Network" [BCP84] maybe a useful additional reference. Nonetheless, the fact remains that DNS servers acting as open recursive servers provide an easy means to obtain great rates of amplification for attack traffic, requiring only a small amount of traffic from the attack sources to generate a vast amount of traffic towards the victim. - The authors also want to note that with the increasing length of - authoritative DNS responses derived from deployment of DNSSEC and - NAPTR as used in ENUM services, authoritative servers will eventually - be more useful as actors in this sort of amplification attack, - stressing even more the need for deployment of BCP 38. + With the increasing length of authoritative DNS responses derived + from deployment of DNSSEC and NAPTR as used in ENUM services, + authoritative servers will eventually be more useful as actors in + this sort of amplification attack, stressing even more the need for + deployment of BCP 38. - In this section we describe the Current Best Practice for operating + In this section we describe the Best Current Practice for operating recursive nameservers. Following these recommendations would reduce the chances of having a given recursive nameserver be used for the generation of an amplification attack. The generic recommendation to nameserver operators is to use the means provided by the implementation of choice to provide recursive name lookup service only to the intended clients. Client authentication can be usually done in several ways: o IP based authentication. Use the IP address of the sending host @@ -191,57 +201,65 @@ running a local instance of a caching nameserver or forwarder that will be able to TSIG sign the queries and send them on to the recursive nameserver of choice. In nameservers that do not need to be providing recursive service, for instance servers that are meant to be authoritative only, turn recursion off completely. In general, it is a good idea to keep recursive and authoritative services separate as much as practical. This, of course, depends on local circumstances. - By default, nameservers SHOULD not offer recursive service to + By default, nameservers SHOULD NOT offer recursive service to external networks. -4. Acknowledgments - - The authors would like to acknowledge the helpful input and comments - of Joe Abley, Olafur Gudmundsson, Pekka Savola, and Andrew Sullivan. - 5. Security Considerations This document does not create any new security issues for the DNS - protocol. + protocol, it deals with a weakness in implementations. It's not excessive to repeat that, although recommended configurations described in this document could alleviate the problem, the only solution to source address spoofing problems is the wide-scale deployment of Ingress Filtering to prevent use of spoofed IP addresses [BCP38], [BCP84]. -6. References +6. Acknowledgments -6.1. Normative References + The authors would like to acknowledge the helpful input and comments + of Joe Abley, Olafur Gudmundsson, Pekka Savola, and Andrew Sullivan. + +7. IANA Considerations + + This document does not define a registry and does not require any + IANA action. + +8. References + +8.1. Normative References [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987. + [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate + Requirement Levels", BCP 14, RFC 2119, March 1997. + [RFC2671] Vixie, P., "Extension Mechanisms for DNS (EDNS0)", RFC 2671, August 1999. [RFC2845] Vixie, P., Gudmundsson, O., Eastlake, 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)s)", RFC 2931, September 2000. -6.2. Informative References +8.2. Informative References [BCP38] Ferguson, P. and D. Senie, "Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing", BCP 38, RFC 2827, May 2000. [BCP84] Baker, F. and P. Savola, "Ingress Filtering for Multihomed Networks", BCP 84, RFC 3704, March 2004. Authors' Addresses