idnits 2.17.1 draft-ietf-dnsop-reflectors-are-evil-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 16. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 298. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 309. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 316. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 322. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (September 1, 2008) is 5715 days in the past. Is this intentional? Checking references for intended status: Best Current Practice ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 2671 (Obsoleted by RFC 6891) ** Obsolete normative reference: RFC 2845 (Obsoleted by RFC 8945) Summary: 3 errors (**), 0 flaws (~~), 1 warning (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group J. Damas 3 Internet-Draft ISC 4 Intended status: BCP F. Neves 5 Expires: March 5, 2009 Registro.br 6 September 1, 2008 8 Preventing Use of Recursive Nameservers in Reflector Attacks 9 draft-ietf-dnsop-reflectors-are-evil-06.txt 11 Status of this Memo 13 By submitting this Internet-Draft, each author represents that any 14 applicable patent or other IPR claims of which he or she is aware 15 have been or will be disclosed, and any of which he or she becomes 16 aware will be disclosed, in accordance with Section 6 of BCP 79. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 This Internet-Draft will expire on March 5, 2009. 36 Abstract 38 This document describes ways to prevent the use of default configured 39 recursive nameservers as reflectors in Denial of Service (DoS) 40 attacks. Recommended configuration as measures to mitigate the 41 attack are given. 43 Table of Contents 45 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 46 2. Document Terminology . . . . . . . . . . . . . . . . . . . . . 3 47 3. Problem Description . . . . . . . . . . . . . . . . . . . . . . 3 48 4. Recommended Configuration . . . . . . . . . . . . . . . . . . . 5 49 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 50 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 6 51 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 52 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 53 8.1. Normative References . . . . . . . . . . . . . . . . . . . 6 54 8.2. Informative References . . . . . . . . . . . . . . . . . . 7 55 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 56 Intellectual Property and Copyright Statements . . . . . . . . . . 8 58 1. Introduction 60 Recently, DNS [RFC1034] has been named as a major factor in the 61 generation of massive amounts of network traffic used in Denial of 62 Service (DoS) attacks. These attacks, called reflector attacks, are 63 not due to any particular flaw in the design of the DNS or its 64 implementations, aside perhaps the fact that DNS relies heavily on 65 UDP, the easy abuse of which is at the source of the problem. They 66 have preferentially used DNS due to common default configurations 67 that allow for easy use of open recursive nameservers that make use 68 of such a default configuration. 70 In addition, due to the small query-large response potential of the 71 DNS system it is easy to yield great amplification of the source 72 traffic as reflected traffic towards the victims. 74 DNS authoritative servers which do not provide recursion to clients 75 can also be used as amplifiers; however, the amplification potential 76 is greatly reduced when authoritative servers are used. It is also 77 not practical to restrict access to authoritative servers to a subset 78 of the Internet, since their normal operation relies on them being 79 able to serve a wide audience, and hence the opportunities to 80 mitigate the scale of an attack by modifying authoritative server 81 configurations are limited. This document's recommendations are 82 concerned with recursive nameservers only. 84 In this document we describe the characteristics of the attack and 85 recommend DNS server configurations that specifically alleviate the 86 problem described, while pointing to the only truly real solution: 87 the wide-scale deployment of ingress filtering to prevent use of 88 spoofed IP addresses [BCP38]. 90 2. Document Terminology 92 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 93 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 94 document are to be interpreted as described in [RFC2119]. 96 3. Problem Description 98 Because most DNS traffic is stateless by design, an attacker could 99 start a DoS attack in the following way: 101 1. The attacker starts by configuring a record on any zone he has 102 access to, normally with large RDATA and TTL. 104 2. Taking advantage of clients on non-BCP38 networks, the attacker 105 then crafts a query using the source address of their target 106 victim and sends it to an open recursive nameserver. 107 3. Each open recursive nameserver proceeds with the resolution, 108 caches the record and finally sends it to the target. After this 109 first lookup, access to the authoritative nameservers is normally 110 no longer necessary. The record will remain cached for the 111 duration of the TTL at the open recursive nameserver even if it's 112 deleted from the zone. 113 4. Cleanup of the zone might, depending on the implementation used 114 in the open recursive nameserver, afford a way to clean the 115 cached record from the open recursive nameserver. This would 116 possibly involve queries luring the open recursive nameserver to 117 lookup information for the same name that is being used in the 118 amplification. 120 Because the characteristics of the attack normally involve a low 121 volume of packets amongst all the kinds of actors besides the victim, 122 it's unlikely any one of them would notice their involvement based on 123 traffic pattern changes. 125 Taking advantage of open recursive nameserver that support EDNS0 126 [RFC2671], the amplification factor (response packet size / query 127 packet size) could be around 80. With this amplification factor a 128 relatively small army of clients and open recursive nameservers could 129 generate gigabits of traffic towards the victim. 131 With the increasing length of authoritative DNS responses derived 132 from deployment of DNSSEC and NAPTR as used in ENUM services, 133 authoritative servers will eventually be more useful as actors in 134 this sort of amplification attack. 136 Even if this attack is only really possible due to non-deployment of 137 BCP38, this amplification attack is easier to leverage because for 138 historical reasons, from times when the Internet was a much closer- 139 knit community, some nameserver implementations have been made 140 available with default configurations that when used for recursive 141 nameservers made the server accessible to all hosts on the Internet. 143 For years this was a convenient and helpful configuration, enabling 144 wider availability of services. As this document aims to make 145 apparent, it is now much better to be conscious of ones own 146 nameserver services and focus the delivery of services on the 147 intended audience of those services, be they a university campus, an 148 enterprise or an ISP's customers. The target audience also includes 149 operators of small networks and private server managers who decide to 150 operate nameservers with the aim of optimising their DNS service, as 151 these are more likely to use default configurations as shipped by 152 implementors. 154 4. Recommended Configuration 156 In this section we describe the Best Current Practice for operating 157 recursive nameservers. Following these recommendations would reduce 158 the chances of having a given recursive nameserver be used for the 159 generation of an amplification attack. 161 The generic recommendation to nameserver operators is to use the 162 means provided by the implementation of choice to provide recursive 163 name lookup service only to the intended clients. Client 164 authorization can be usually done in several ways: 166 o IP address based authorization. Use the IP source address of the 167 DNS queries and filter them through an Access Control List (ACL) 168 to service only the intended clients. This is easily applied if 169 the recursive name server's service area is a reasonably fixed IP 170 address range that is protected against external address spoofing, 171 usually the local network. 173 o Incoming Interface based selection. Use the incoming interface 174 for the query as a discriminator to select which clients are to be 175 served. This is of particular applicability for SOHO devices, 176 such as broadband routers that include embedded recursive name 177 servers. 179 o Use TSIG [RFC2845] or SIG(0) [RFC2931] signed queries to 180 authenticate the clients. This is a less error prone method, 181 which allows server operators to provide service to clients who 182 change IP address frequently (e.g. roaming clients). The current 183 drawback of this method is that very few stub resolver 184 implementations support TSIG or SIG(0) signing of outgoing 185 queries. The effective use of this method implies in most cases 186 running a local instance of a caching nameserver or forwarder that 187 will be able to TSIG sign the queries and send them on to the 188 recursive nameserver of choice. 190 o For mobile users use a local caching name server running on the 191 mobile device or use a Virtual Private Network to a trusted 192 server. 194 In nameservers that do not need to be providing recursive service, 195 for instance servers that are meant to be authoritative only, turn 196 recursion off completely. In general, it is a good idea to keep 197 recursive and authoritative services separate as much as practical. 198 This, of course, depends on local circumstances. 200 Even with all these recommendations network operators should consider 201 deployment of ingress filtering [BCP38] in routers to prevent use of 202 address spoofing as a viable course of action. In situations where 203 more complex network setups are in place, "Ingress Filtering for 204 Multihomed Network" [BCP84] maybe a useful additional reference. 206 By default, nameservers SHOULD NOT offer recursive service to 207 external networks. 209 5. Security Considerations 211 This document does not create any new security issues for the DNS 212 protocol, it deals with a weakness in implementations. 214 Deployment of SIG(0) transaction security should consider the caveats 215 with SIG(0) computational expense as it uses public key cryptography 216 rather than the symmetric keys used by TSIG. In addition, the 217 identification of the appropriate keys needs similar mechanisms to 218 those for deploying TSIG, or alternatively, the use of DNSSEC 219 signatures (RRSIGs) over the KEY RRs if published in DNS. This will 220 in turn require the appropriate management of DNSSEC trust anchors. 222 6. Acknowledgments 224 The authors would like to acknowledge the helpful input and comments 225 of Joe Abley, Olafur Gudmundsson, Pekka Savola, Andrew Sullivan and 226 Tim Polk. 228 7. IANA Considerations 230 This document does not define a registry and does not require any 231 IANA action. 233 8. References 235 8.1. Normative References 237 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 238 STD 13, RFC 1034, November 1987. 240 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 241 Requirement Levels", BCP 14, RFC 2119, March 1997. 243 [RFC2671] Vixie, P., "Extension Mechanisms for DNS (EDNS0)", 244 RFC 2671, August 1999. 246 [RFC2845] Vixie, P., Gudmundsson, O., Eastlake, D., and B. 247 Wellington, "Secret Key Transaction Authentication for DNS 248 (TSIG)", RFC 2845, May 2000. 250 [RFC2931] Eastlake, D., "DNS Request and Transaction Signatures ( 251 SIG(0)s)", RFC 2931, September 2000. 253 8.2. Informative References 255 [BCP38] Ferguson, P. and D. Senie, "Network Ingress Filtering: 256 Defeating Denial of Service Attacks which employ IP Source 257 Address Spoofing", BCP 38, RFC 2827, May 2000. 259 [BCP84] Baker, F. and P. Savola, "Ingress Filtering for Multihomed 260 Networks", BCP 84, RFC 3704, March 2004. 262 Authors' Addresses 264 Joao Damas 265 Internet Systems Consortium, Inc. 266 950 Charter Street 267 Redwood City, CA 94063 268 US 270 Phone: +1 650 423 1300 271 Email: Joao_Damas@isc.org 272 URI: http://www.isc.org/ 274 Frederico A. C. Neves 275 NIC.br / Registro.br 276 Av. das Nacoes Unidas, 11541, 7 277 Sao Paulo, SP 04578-000 278 BR 280 Phone: +55 11 5509 3511 281 Email: fneves@registro.br 282 URI: http://registro.br/ 284 Full Copyright Statement 286 Copyright (C) The IETF Trust (2008). 288 This document is subject to the rights, licenses and restrictions 289 contained in BCP 78, and except as set forth therein, the authors 290 retain all their rights. 292 This document and the information contained herein are provided on an 293 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 294 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 295 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 296 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 297 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 298 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 300 Intellectual Property 302 The IETF takes no position regarding the validity or scope of any 303 Intellectual Property Rights or other rights that might be claimed to 304 pertain to the implementation or use of the technology described in 305 this document or the extent to which any license under such rights 306 might or might not be available; nor does it represent that it has 307 made any independent effort to identify any such rights. Information 308 on the procedures with respect to rights in RFC documents can be 309 found in BCP 78 and BCP 79. 311 Copies of IPR disclosures made to the IETF Secretariat and any 312 assurances of licenses to be made available, or the result of an 313 attempt made to obtain a general license or permission for the use of 314 such proprietary rights by implementers or users of this 315 specification can be obtained from the IETF on-line IPR repository at 316 http://www.ietf.org/ipr. 318 The IETF invites any interested party to bring to its attention any 319 copyrights, patents or patent applications, or other proprietary 320 rights that may cover technology that may be required to implement 321 this standard. Please address the information to the IETF at 322 ietf-ipr@ietf.org.