idnits 2.17.1 draft-irtf-asrg-bcp-blacklists-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. 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 : ---------------------------------------------------------------------------- == There are 15 instances of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. -- The document has examples using IPv4 documentation addresses according to RFC6890, but does not use any IPv6 documentation addresses. Maybe there should be IPv6 examples, too? Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to use 'NOT RECOMMENDED' as an RFC 2119 keyword, but does not include the phrase in its RFC 2119 key words list. -- 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 (October 23, 2010) is 4926 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 informational reference (is this intentional?): RFC 3330 (Obsoleted by RFC 5735) -- Obsolete informational reference (is this intentional?): RFC 5156 (Obsoleted by RFC 6890) Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 5 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Anti-Spam Research Group - IRTF C. Lewis 3 Internet-Draft Nortel Networks 4 Intended status: BCP M. Sergeant 5 Expires: April 26, 2011 MessageLabs, Inc 6 October 23, 2010 8 Guidelines for Management of DNSBLs for Email 9 draft-irtf-asrg-bcp-blacklists-06 11 Abstract 13 The rise of spam and other anti-social behavior on the Internet has 14 led to the creation of shared DNS-based lists ("DNSBLs") of IP 15 addresses or domain names intended to help guide email filtering. 16 This memo summarizes guidelines of accepted best practice for the 17 management of public DNSBLs by their operators as well as for the 18 proper use of such lists by mail server administrators (DNSBL users), 19 and it provides useful background for both parties. It is not 20 intended to advise on the utility or efficacy of particular DNSBLs or 21 the DNSBL concept in general, nor to assist end users with questions 22 about spam. 24 The document may seek BCP status. Comments and discussion of this 25 document should be addressed to the asrg@ietf.org mailing list. 27 Status of this Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at http://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on April 26, 2011. 44 Copyright Notice 46 Copyright (c) 2010 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (http://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 62 1.1. DNS-Based Reputation Systems . . . . . . . . . . . . . . . 4 63 1.2. Guidance for DNSBL Users . . . . . . . . . . . . . . . . . 6 64 1.3. Requirements Language . . . . . . . . . . . . . . . . . . 7 65 1.4. Background . . . . . . . . . . . . . . . . . . . . . . . . 7 66 2. DNSBL Policies . . . . . . . . . . . . . . . . . . . . . . . . 8 67 2.1. Transparency . . . . . . . . . . . . . . . . . . . . . . . 8 68 2.1.1. Listing/Delisting Criteria SHOULD Be Easily 69 Available . . . . . . . . . . . . . . . . . . . . . . 9 70 2.1.2. Audit Trail SHOULD be maintained . . . . . . . . . . . 9 71 2.1.3. The Scope and Aggressiveness of Listings MUST be 72 Disclosed. . . . . . . . . . . . . . . . . . . . . . . 9 73 2.2. Listings and Removals . . . . . . . . . . . . . . . . . . 10 74 2.2.1. Listings SHOULD Be Temporary . . . . . . . . . . . . . 10 75 2.2.2. A Direct Non-Public Way to Request Removal SHOULD 76 Be Available . . . . . . . . . . . . . . . . . . . . . 11 77 2.2.3. Removals SHOULD Be Prompt . . . . . . . . . . . . . . 12 78 2.2.4. SHOULD Have Similar Criteria for Listing and 79 Delisting . . . . . . . . . . . . . . . . . . . . . . 12 80 3. Operational Issues . . . . . . . . . . . . . . . . . . . . . . 13 81 3.1. DNSBL Query Root Domain Name SHOULD be a Subdomain . . . . 13 82 3.2. DNSBLs SHOULD be Adequately Provisioned . . . . . . . . . 13 83 3.3. DNSBLs SHOULD Provide Operational Flags . . . . . . . . . 14 84 3.4. Shutdowns MUST Be Done Gracefully . . . . . . . . . . . . 15 85 3.5. Listing of Special and Reserved IP Addresses MUST be 86 disclosed . . . . . . . . . . . . . . . . . . . . . . . . 16 87 3.6. Considerations for DNSBLs Listing Insecure Hosts . . . . . 16 88 3.6.1. MUST NOT scan without provocation . . . . . . . . . . 17 89 3.6.2. Re-scan Periods SHOULD be Reasonable . . . . . . . . . 17 90 3.6.3. Scans MUST NOT be Destructive . . . . . . . . . . . . 17 91 3.7. Removals SHOULD Be Possible in Absence of the DNSBL 92 Operator . . . . . . . . . . . . . . . . . . . . . . . . . 17 93 3.8. Protect Against Misconfiguration/Outages . . . . . . . . . 17 94 4. Security Considerations . . . . . . . . . . . . . . . . . . . 18 95 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 96 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19 97 6.1. Normative References . . . . . . . . . . . . . . . . . . . 19 98 6.2. Informative References . . . . . . . . . . . . . . . . . . 19 99 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 20 100 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 102 1. Introduction 104 1.1. DNS-Based Reputation Systems 106 Due to the rising amount of spam and other forms of network abuse on 107 the Internet, many community members and companies began to create, 108 publish and maintain DNS-based reputation systems (DNS-Based Lists) 109 of IP addresses or domain names and make reputation suggestions or 110 assertions about email sourced from these IP addresses or domain 111 names. 113 The first DNS-based Lists were almost exclusively intended to be used 114 (by email administrators) as lists of abusive IP addresses to block, 115 however the DNS publication method has proven to be so robust, 116 popular and simple to use, that it has been extended for use in many 117 different ways, far beyond the imaginings of the designers of DNS or 118 DNS-based blocking IP lists. For example, today, the same basic DNS- 119 based listing technology is commonly used for: 121 DNSWL listings of well-behaving email source IP/domain addresses 122 (whitelist). 124 RHSBL listings of well/ill behaving email source domain names (often 125 applied against the domain name part of the originating email 126 address or DNS PTR (reverse IP) lookups) 128 URIBL listings of well/ill behaving web link domain names or host 129 names used in email 131 Further, the DNSBL user using the list doesn't have to use a listing 132 as a pass/fail binary decision, it can use a listing as one factor in 133 email filters that make decisions based on scoring multiple factors 134 together. 136 The DNS-based list technology has even been extended to purely 137 informational purposes. For example, there are implementations that 138 return results based on what geographic region an IP/domain is 139 putatively allocated in, implementations that translate an IP/domain 140 address into an ASN number and/or allocation block, implementations 141 that indicate whether the queried domain name is registered through a 142 given Domain registrar, implementations that return aggregate numeric 143 reputation for an IP address or domain name from another system's 144 email system, and so on. The possibilities are virtually endless. 146 As well, DNS-based listing technology has also been used in areas 147 other than email filtering, such as IRC, web access control, and 148 transaction verification. 150 As the terminology in this area has never been well formalized, often 151 overlaps, and lacks precision, this document has been written to use 152 the term "DNSBL" to refer to DNS-based lists generally, not just DNS- 153 based block (or black) lists. This document is not applicable to 154 some DNSBLs in some areas (mentioned as appropriate) but it is the 155 authors' belief that most of the practices are applicable to almost 156 all DNSBLs. 158 DNSBLs may be either public or private. A public DNSBL makes its 159 data available to any party seeking information about data on the 160 list, while a private DNSBL is used solely by an organization for its 161 own use and the data is not made available publicly. There are also 162 commercial DNSBLs, available for a fee. Furthermore, some are free 163 yet require a fee for higher numbers of queries or certain classes of 164 DNSBL users. 166 The first publicly available DNSBL using the Domain Name System (DNS) 167 for distributing reputation data about email senders emerged in 1997, 168 shortly after spam became a problem for network operators and email 169 administrators. This pioneer DNSBL focused on identifying known spam 170 sources situated at static (unchanging) IP/domain addresses. Due to 171 the broad adoption of this DNSBL, it had a major impact on static 172 spam sources. Consequently, abusers found other methods for 173 distributing their spam, such as relaying messages through unsecured 174 email servers or flawed formmail scripts on web pages. Additional 175 DNSBLs were developed by others in order to address these changing 176 tactics, and today more than 700 public DNSBLs are known to be in 177 operation. 179 These DNSBLs vary widely in purpose for which the list was intended, 180 the method the list uses to achieve the purpose, the integrity of 181 those overseeing the method, and the stability of the technology used 182 to create and distribute the data. Listing criteria can sometimes be 183 quite controversial, therefore this document deliberately does not 184 discuss the rightness or wrongness of any criteria. We assert that 185 DNSBL operators are free to choose whatever listing criteria they 186 wish, as long as those criteria are clearly and accurately 187 communicated. It is the responsibility of the DNSBL user to ensure 188 that the listing criteria and other aspects of a DNSBL meets their 189 needs. 191 This document is intended to provide guidance to DNSBL operators so 192 that they may be able to identify what features users would be 193 interested in seeing as part of a high-quality, well-managed DNSBL, 194 for example, a clear listing and delisting policy to which the DNSBL 195 operator adheres strictly. This document is intended to be normative 196 rather than prescriptive: it seeks to characterize the features of a 197 well-managed DNSBL rather than setting out rules for how DNSBLs 198 should be operated. 200 This document is not intended as a protocol specification of DNSBL 201 queries. (See [RFC5782].) 203 1.2. Guidance for DNSBL Users 205 When choosing to adopt a DNSBL, a DNSBL user SHOULD keep the 206 following questions in mind: 208 1. What is the intended use of the list? 210 2. Does the list have a web site? 212 3. Are the list's policies stated on the web site? 214 4. Are the policies stated clearly and understandably? 216 5. Does the web site function properly, e.g., hyperlinks? 218 6. Are web pages for removal requirements accessible and working 219 properly? 221 7. How long has the list been in operation? 223 8. What are the demographics and quantity of the list's user base? 224 In other words, do other sites like my own use this DNSBL? 226 9. Are comparative evaluations of the list available? Note: all 227 such evaluations depend on the mail mix used as well as local 228 policy. DNSBL users SHOULD consider trial periods and/or 229 ongoing local monitoring of DNSBL suitability. 231 10. What do your peers or members of the Internet community say 232 about the list? DNSBLs can sometimes be quite controversial and 233 sometimes considerable misinformation is spread. Ensure that 234 the opinions are knowledgeable, and reflect similar goals to 235 yours. 237 11. Does the DNSBL have a mailing list for announcing changes, 238 outages etc? 240 DNSBLs can, and have, ceased operation without notice. DNSBL users 241 SHOULD periodically check the correct operation of the DNSBL, and 242 cease using DNSBLs that are working incorrectly. See Section 3.3 244 The DNSBL user MUST ensure that they understand the intended use of 245 the DNSBL. For example, some IP address-based DNSBLs are appropriate 246 only for assessment of the peer IP address of the machine connecting 247 to the DNSBL user's mail server, and not other IP addresses appearing 248 in an email (such as header Received lines or web links), or IRC 249 connections etc. While a DNSBL user may choose to ignore the intent 250 of the DNSBL, they SHOULD implement any variance in compliance with 251 the DNSBL usage instructions. 253 For example, one of the requirements of some DNSBLs is that if the 254 DNSBL is used contrary to the usage instructions, then the DNSBL user 255 should not identify the DNSBL being used. Furthermore, it is the 256 DNSBL user's responsibility to mitigate the effect of the listing 257 locally. 259 It is the responsibility of the system administrators who adopt one 260 or more DNSBLs to evaluate, understand, and make a determination of 261 which DNSBLs are appropriate for the sites they administer. If you 262 are going to allow a third party's information to guide your 263 filtering decision-making process, you MUST understand the policies 264 and practices of those third parties because responsibility for 265 filter decisions remains ultimately with you, the postmaster. 267 A DNSBL without DNSBL users does not block (or otherwise impair) 268 email or any other Internet service. A DNSBL user voluntarily uses 269 the DNSBL data to guide their decisions, and the DNSBL user therefore 270 MUST assume responsibility for dealing with the consequences. 272 DNSBL operators are expressing an opinion through the publication of 273 a DNSBL. However, it is through abiding by the guidelines set forth 274 in this BCP that the operators of a DNSBL may gain the trust of their 275 users. 277 These guidelines only address public DNSBLs and do not apply to 278 private access DNSBLs, however, implementers and users of private 279 access DNSBLs may wish to use these guidelines as a starting point of 280 things to consider. 282 1.3. Requirements Language 284 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 285 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 286 document are to be interpreted as described in [RFC2119]. 288 1.4. Background 290 The Anti Spam Research Group (ASRG) was chartered to address the spam 291 problem. The ASRG charter includes: 293 "codification of best current practices in spam management" 294 This note falls within that category by listing guidelines for 295 management of public DNSBLs. This document will seek BCP status. 297 NOTE: This document is a product of the Anti-Spam Research Group 298 (ASRG) of the IRTF. As per section 3 of [RFC2014] IRTF groups do 299 not require consensus to publish documents. Therefore readers 300 should be aware that this document does not necessarily represent 301 the consensus of the entire ASRG. 303 NOTE: This document is intended to evolve, based on comments from 304 the Anti-Spam Research Group (ASRG) mailing list. It is certain 305 that the current draft is incomplete and entirely possible that it 306 is inaccurate. Hence, comments are eagerly sought, preferably in 307 the form of suggested text changes, and preferably on the ASRG 308 mailing list, at . 310 2. DNSBL Policies 312 2.1. Transparency 314 A DNSBL SHOULD carefully describe the criteria that are the cause for 315 adding, and the criteria for removing an entry from the list. Such 316 listing and delisting criteria SHOULD be presented in a clear and 317 readable manner easily accessible to the public on the DNSBL's web 318 site. A DNSBL MUST abide by its stated listing and delisting 319 criteria. Entries that do not meet the published criteria MUST NOT 320 be added to the DNSBL. 322 In other words, be direct and honest and clear about the listing 323 criteria, and make certain that only entries meeting the published 324 criteria are added to the list. For example, some DNSBL operators 325 have been known to include "spite listings" in the lists they 326 administer -- listings of IP addresses or domain names associated 327 with someone who has insulted them, rather than actually violating 328 the published criteria for inclusion in the list. There is nothing 329 inherently wrong with this practice so long as it is clearly 330 disclosed. For example, a DNSBL described as only listing open 331 relays MUST NOT include IP addresses for any other reason. This 332 transparency principle does not require DNSBL operators to disclose 333 the precise algorithms and data involved in a listing, but rather the 334 intent behind choosing those algorithms and data. 336 Furthermore, the DNSBL documentation SHOULD be clear on the intended 337 use of the DNSBL - whether it be intended for peer addresses of 338 email, IRC, etc. 340 Availability of documentation concerning a DNSBL SHOULD NOT be 341 dependent on the continued operation of DNS for DNSBL queries. 343 In other words, if the DNSBL documentation is at 344 "http://dnsbl.example.com", the documentation for the web site should 345 not become unavailable if the DNSBL query name servers are not 346 available (or shut down). See Section 3.1. 348 2.1.1. Listing/Delisting Criteria SHOULD Be Easily Available 350 Listing and delisting criteria for DNSBLs SHOULD be easily available 351 and SHOULD be located in a place clearly marked in its own section of 352 the web site affiliated with the DNSBL. 354 DNSBLs often publish their listing criteria along with additional 355 technical information about using the DNSBL. This additional 356 technical information can confuse end users, so a separate page, 357 section or query function on its own SHOULD be dedicated to detailing 358 why a specific entry appears in the DNSBL. 360 2.1.2. Audit Trail SHOULD be maintained 362 A DNSBL SHOULD maintain an audit trail for all listings and it is 363 RECOMMENDED that it is made publicly available in an easy to find 364 location, preferably on the DNSBL's web site. Please note that 365 making an audit trail data public does not entail revealing all 366 information in the DNSBL operator's possession relating to the 367 listing; e.g., a DNSBL operator MAY make the audit trail data 368 selectively accessible in such a way as to not disclose information 369 that might assist spammers, such as the location or identity of a 370 spam trap. 372 2.1.3. The Scope and Aggressiveness of Listings MUST be Disclosed. 374 Some DNSBLs have adopted policies of listing entries that are broader 375 in scope than they have evidence of being involved in abuse. 376 Similarly, some DNSBLs list entries that are "mixed", in that the 377 entry may be behaving in a manner that is both abusive and non- 378 abusive. This is inherent to the techniques that many DNSBLs use. 380 Examples: Some DNSBLs will list IP address ranges if there is reason 381 to believe that abusive behavior seen from a few IP addresses within 382 the range is (or will be) reflected in the rest of the range. Some 383 DNSBLs utilize scoring to list IP addresses, IP ranges or domain 384 names that have abusive behavior above some threshold - often meaning 385 that some of the email corresponding to the listing is not abusive. 386 Even an entry demonstrably infected with email spam or virus emitting 387 malware may emit non-abusive email. 389 Inevitably, some of these listings may impact non-abusive email. 390 This has resulted in some labeling such practices by the emotionally 391 loaded term "collateral damage". No filtering technique is perfect, 392 and that an occasional mistake is inevitable no matter what is used, 393 DNSBLs or otherwise. 395 There is nothing wrong with this practice, because mail server 396 administrators may wish to implement such policies or use them in 397 combination with other techniques (such as scoring). However, a 398 diligent administrator needs information about these policies in 399 order to make an informed decision as to the risk and benefit of 400 using any particularly DNSBL, and in many cases guide them in how to 401 use it for results best reflecting the DNSBL user's requirements. 403 Therefore, DNSBL listing policies MUST include statements as to the 404 scope and aggressiveness of listings, and include, as appropriate, 405 whether the DNSBL operator intends the listings to be used in scoring 406 or other techniques. 408 2.2. Listings and Removals 410 2.2.1. Listings SHOULD Be Temporary 412 In many cases, listings can exist for long periods of time past the 413 conditions leading to the listing's creation, and/or the listed 414 entity has putatively changed ownership. 416 Generally speaking, listings SHOULD be considered temporary, and 417 should expire on their own at some point in the future unless reasons 418 for listing still exist. 420 Expiration intervals SHOULD be chosen to be reasonable for the type 421 of listing. For example: 423 1. It does not make sense to remove entries from DNSBL where the 424 existence of an entry is not of direct meaning. In other words, 425 DNSBLs that return information in addition to just existence/ 426 non-existence. For example: entries in DNSBLs that return 427 geographic or assignment information on where the IP address or 428 domain name is located or owned, or DNSBLs that return flow 429 statistics from the DNSBL operator that are intended for the 430 DNSBL user to interpret, need not ever be removed, just kept 431 reasonably current. 433 2. DNSBLs based on relatively static information, such as block 434 assignment or domain names of demonstrably bad actors MAY have 435 very long expiration intervals or only be removed upon request 436 after verification that the removal criteria has been met. 438 3. Automated DNSBLs with highly effective detection and fast listing 439 mechanisms can benefit from very short expiration intervals. 440 Many of the things that these DNSBLs look for are of relatively 441 short duration, and even if they do expire, a resumption of the 442 behavior will be caught quickly by the DNSBL's detection 443 mechanisms and relisted. By utilizing a short expiration 444 interval, after reassignment/problem correction, the listing will 445 automatically expire in short order without manual intervention. 447 4. Manually created DNSBL entries SHOULD be periodically reviewed in 448 some manner. 450 It is RECOMMENDED that DNSBL operators publish in general terms their 451 expiration policy, even if its only "delist on request" or no 452 expiration is performed. In information-only lists, a method for 453 users requesting corrections to the information (if appropriate) 454 SHOULD be published. Abusers may be able to "game" policy that is 455 too explicit; on the other hand, many DNSBL users wish to have an 456 idea of how "current" the DNSBL is. It is the authors' experience 457 that some automated DNSBLs have increasingly higher error rates as 458 the "last detection date" gets older. 460 Note that listings being temporary does not mean that some listings 461 will not remain after the initial timeout period. If the DNSBL 462 operator determines that the conditions triggering listing still 463 exist, then the timer for determining timeouts can be renewed. 465 2.2.2. A Direct Non-Public Way to Request Removal SHOULD Be Available 467 Discussions about whether a DNSBL should remove an entry MAY include 468 activity in a public forum. Methods for processing removal requests 469 through private, direct exchanges, such as person-to-person email or 470 a combination of web page requests and email responses, SHOULD be 471 available. As a minimum, the DNSBL SHOULD have a web page that has a 472 removal request function (separate from the page describing listing 473 criteria as per Section 2.1.1). The DNSBL SHOULD also make available 474 an email address to handle issues other than blocking issues. 476 The DNSBL operator MUST NOT use the list in question in such a way 477 that removal requests would be blocked, and, moreover, SHOULD make 478 mailboxes available in order to allow affected users to submit their 479 requests. In some cases it is impractical not to filter email to 480 accounts due to the amount of spam those mailboxes receive. If 481 filtering should be necessary in such circumstances, filtering 482 methods with as low false positive rate as practical SHOULD be 483 chosen. 485 2.2.3. Removals SHOULD Be Prompt 487 The response to removal requests (if the conditions for list removal 488 are present) SHOULD be prompt. 490 A DNSBL MAY impose restrictions on who (e.g. network operator's 491 representative or domain name owner) may make valid removal requests. 492 However, in many DNSBLs this is inadvisable because it requires 493 impractical amounts of effort and is hence NOT RECOMMENDED in most 494 cases. 496 Many DNSBLs (especially those with highly effective detection and 497 fast listing mechanisms) greatly benefit from a "no questions asked" 498 removal policy. 500 Although this approach allows people to submit a request and have any 501 listed IP address/domain name removed immediately, it does not 502 prevent the DNSBL operator from re-listing the IP address/domain name 503 at a later time. 505 Many DNSBLs can effectively use a "no questions asked" removal policy 506 because by their very nature they will redetect or relist problems 507 almost immediately. They can mitigate more organized attempts to 508 "game" the system by elementary checking and rate-limiting 509 procedures, increasing lockout periods, rescans etc. Furthermore, a 510 few IP addresses more or less usually do not make a significant 511 difference in the overall effectiveness of a DNSBL. Moreover, a "no 512 questions asked" removal policy provides the huge benefit of a swift 513 reaction to incorrect listings. 515 As an example, one popular DNSBL uses a "no questions asked" removal 516 policy, but does perform rate-limiting and malicious removal 517 detection and mitigation. 519 Another important consideration supporting a "no questions asked" 520 self-removal policy is that it forestalls many conflicts between 521 DNSBL operators and organizations whose IP addresses/domain names 522 have been listed. Such a policy may be an effective measure to 523 prevent small issues from becoming big problems. 525 2.2.4. SHOULD Have Similar Criteria for Listing and Delisting 527 The criteria for being removed from a DNSBL SHOULD bear a reasonable 528 relationship to the factors that were the cause of the addition to 529 the DNSBL. If a listed entity fulfills all published requirements 530 for removal from a DNSBL, then the DNSBL operator SHOULD NOT impose 531 any additional obstacles to remove a given entry from the DNSBL. 532 There SHOULD NOT be any extra rules for de-listing other than the 533 ones listed in the published listing criteria. 535 3. Operational Issues 537 3.1. DNSBL Query Root Domain Name SHOULD be a Subdomain 539 By virtue of using domain names, a DNSBL is a hierarchy with a root 540 anchored in the global Internet. The DNSBL "query root" SHOULD be 541 below the registered domain name, so that the DNSBL information is 542 not conflated with domain name housekeeping information (e.g., name 543 server or MX records) for the domain name. By using this approach, 544 DNSBL queries would take the form of ".dnsbl.example.com" 545 rather than ".example.com". Further, this sub-tree should 546 have its own name servers. Thus, the DNSBL query root has its own 547 zone file containing the DNSBL information, and the registered domain 548 name has its own name servers containing the information (MX records 549 etc.) for the domain name. This approach facilitates clear 550 delineation of function as well as orderly DNSBL shutdown because the 551 DNSBL name server records can be specified separately from the domain 552 name's principal name servers. 554 Many DNSBLs support more than one logical zone (DNSBL entries with 555 different meanings) that DNSBL users may wish to treat differently 556 (or even ignore). It is RECOMMENDED that, even if there is a single 557 DNSBL zone with entry type distinguished by return code, that 558 separate subdomain names (of the query root) consist only of the 559 corresponding entries. For example, entry types "A" and "B" might 560 return 127.0.0.2 and 127.0.0.3 from the consolidated zone (eg: 561 dnsbl.example.com), but there should also be zones 562 typeA.dnsbl.example.com and typeB.dnsbl.example.com that contain 563 their respective types only. See also Section 3.3. 565 3.2. DNSBLs SHOULD be Adequately Provisioned 567 The DNSBL SHOULD have sufficient name server capacity to handle the 568 expected loading, and have sufficient redundancy to handle normal 569 outages. 571 Name servers SHOULD provide appropriate glue records, possibly in 572 different TLDs to protect against single-TLD issues. 574 If the DNSBL offers zone transfers (in addition to or instead of 575 standard DNSBL query mechanisms), it SHOULD be sufficiently 576 provisioned to handle the expected loading. 578 Note that some DNSBLs have been subject to distributed denial of 579 service attacks. Provisioning SHOULD take the likelihood of this 580 into account, and include plans for dealing with it. 582 3.3. DNSBLs SHOULD Provide Operational Flags 584 Most IP address-based DNSBLs follow a convention of query entries for 585 IP addresses in 127.0.0.0/8 (127.0.0.0-127.255.255.255) to provide on 586 line indication of whether the DNSBL is operational. Many, if not 587 most, DNSBLs arrange to have a query of 127.0.0.2 return an A record 588 indicating that the IP address is listed. This appears to be a 589 defacto standard. (See [RFC5782].) 591 If this indicator is missing (query of 127.0.0.2 returns NXDOMAIN), 592 the DNSBL should be considered non-functional. 594 There does not appear to be a defacto standard for test entries 595 within domain name-based DNSBLs. A number use the same 127.0.0.2 596 query test mechanism as IP address-based DNSBLs, and others use a 597 variety of domain name-based test entries. Due to the way many 598 domain name-based DNSBLs are used (eg: hostname parts of URIs in 599 email bodies), using anything likely to appear in a legitimate email 600 is a bad idea (eg: http://example.com), especially considering that 601 some email readers will transform bare IP addresses or domain names 602 appearing in the body of an email into links. So, even 127.0.0.2 may 603 be problematic. But a common testing method is desirable. 605 In the absence of new emerging standards, it is RECOMMENDED that 606 domain name-based DNSBLs use a test entry of "test". Test is chosen 607 because it is a reserved top-level-domain. 609 Note: In Section 3.4 it is noted that some DNSBLs have shut down in 610 such a way to list all of the Internet. Further, in Section 3.5, 611 DNSBL operators MUST NOT list 127.0.0.1. Therefore, a positive 612 listing for 127.0.0.1 SHOULD indicate that the DNSBL has started 613 listing the world and is non-functional. Similarly, a domain-based 614 DNSBL SHOULD NOT ever list the reserved domain INVALID, and a 615 positive listing for INVALID SHOULD indicate that the DNSBL is non- 616 functional. 618 Other results, such as 127.0.0.3, may have different meanings. This 619 operational flag usage and meaning SHOULD be published on the DNSBL's 620 web site, and the DNSBL user SHOULD periodically test the DNSBL. 622 Some mail systems are unable to differentiate between these various 623 results or flags, however, so a public DNSBL SHOULD NOT include 624 opposing or widely different meanings -- such as 127.0.0.23 for 625 "sends good mail" and 127.0.0.99 for "sends bad mail" -- within the 626 same DNS zone. 628 3.4. Shutdowns MUST Be Done Gracefully 630 A number of DNSBLs have shut down operations in such a way as to list 631 the entire Internet, sometimes without warning. These were usually 632 done this way to force DNSBL users (mail administrators) to adjust 633 their DNSBL client configurations to omit the now inoperative DNSBL 634 and to shed the DNS query load from the registered domain name 635 servers for the DNSBL. Popular DNSBLs are used by tens of thousands 636 of sites, yet, the correct operation of the DNSBLs are not well 637 monitored by their users. The DNSBL query clients are often not 638 compliant with DNSBL query conventions (e.g.: will treat any A record 639 returned as being "listed", instead of specific 127/8 A record 640 returns) hence shutdowns (or even ordinary domain name expiration) 641 can be quite destructive to all email flow if not done properly. 643 The DNSBL operator MUST issue impending shutdown warnings (on the 644 DNSBL web site, appropriate mailing lists, newsgroups, vendor 645 newsletters etc), and indicate that the DNSBL is inoperative using 646 the signaling given in Section 3.3. 648 Only after these warnings have been issued for a significant period 649 of time (RECOMMENDED: one or more months), should the DNSBL operator 650 finally shutdown the DNSBL. 652 The shutdown procedure should have the following properties: 654 1. MUST NOT list the entire Internet 656 2. SHOULD shed the DNSBL query load from the DNSBL name servers, 657 permitting the registered domain name to continue being usable. 659 3. SHOULD, perhaps through increased delays, indicate to the Mail 660 administrator that the DNSBL is no longer functional. 662 4. Name server or query lookups MUST NOT be aimed at third parties 663 unrelated to DNSBL operation. Such behavior is similar to 664 inflicting a DDOS attack. 666 5. The base domain name SHOULD be registered indefinitely, so as to 667 ensure that the domain name doesn't represent a "booby trap" for 668 future owners, and/or provide a means by which a new owner could 669 maliciously list the entire Internet. 671 One way of satisfying the points 1-4 above is to change the DNS name 672 servers for the DNSBL to point at "TEST-NET" addresses (see 673 [RFC3330]). The below suggested [BIND] declarations will cause a 674 DNSBL query to query non-existent name servers in TEST-NET addresses, 675 which will result in a significant delay (usually more delay as the 676 number of non-existent TEST-NET name servers is increased, but not 677 return any A records except in very unusual circumstances. 679 BIND-equivalent DNS declarations for DNSBL shutdown. 681 dnsbl.example.com. 604800 IN NS u1.example.com. 682 u1.example.com. 604800 IN A 192.0.2.1 684 dnsbl.example.com. 604800 IN NS u2.example.com. 685 u2.example.com. 604800 IN A 192.0.2.2 687 dnsbl.example.com. 604800 IN NS u3.example.com. 688 u3.example.com. 604800 IN A 192.0.2.3 690 ... [as many NS/A record pairs as you like] 692 This example assumes that the DNSBL is named "dnsbl.example.com". 693 Replace "example.com" and "dnsbl.example.com" as appropriate for the 694 DNSBL. 696 NOTE: Of course, the above shutdown procedure cannot be implemented 697 if Section 3.1 is not followed. 699 3.5. Listing of Special and Reserved IP Addresses MUST be disclosed 701 The DNSBL MAY list loopback, [RFC1918], LINK-LOCAL class [RFC3927], 702 class D/E, and any other permanently reserved or special-use IP 703 addresses [RFC3330] (and [RFC5156] for IPv6), [RFC5156]. Such use 704 MUST be disclosed in the documentation related to the DNSBL. 706 As additional insurance against listings of space that should not be 707 listed through testing or other unforeseen events, DNSBL operators 708 SHOULD consider implementing facilities to prevent them. At least 709 one popular automated DNSBL has implemented permanent exclusions for 710 such addresses. 712 A functioning DNSBL MUST NOT list 127.0.0.1. There are a number of 713 mail server implementations that do not cope with this well, and many 714 will use a positive response for 127.0.0.1 as an indication that the 715 DNSBL is shut down and listing the entire Internet. 717 3.6. Considerations for DNSBLs Listing Insecure Hosts 719 Some DNSBLs list IP addresses of hosts that are insecure in various 720 ways (e.g. open relays, open proxies). The following recommendations 721 for such DNSBLs may not be relevant to other types of DNSBLs. 723 The practice of scanning for vulnerabilities can represent a risk in 724 some jurisdictions. The following recommendations for such DNSBLs 725 MAY help alleviate this risk. 727 3.6.1. MUST NOT scan without provocation 729 DNSBLs MUST NOT automatically probe for insecure hosts without 730 provocation. There is little agreement in the community as to 731 whether or not such activity should be allowed, so this BCP errs on 732 the side of caution. 734 Therefore, scanning MUST be targeted, rather than broad-based, where 735 a given scan is motivated by a specific reason to have concern about 736 the address being scanned. Examples of such reasons include delivery 737 of an email, delivery to a spam trap address, receipt of a user 738 complaint, or periodic testing of an address that is already listed. 740 3.6.2. Re-scan Periods SHOULD be Reasonable 742 If the DNSBL operator re-scans a host in order to determine whether 743 the listing SHOULD timeout or not, the re-scan period SHOULD be 744 reasonable. Automated scanning SHOULD NOT occur more often than once 745 every 24 hours. 747 It is RECOMMENDED that automated re-scanning should cease within a 748 reasonable period of the vulnerability no longer existing, and 749 targeting conditions no longer being met. 751 3.6.3. Scans MUST NOT be Destructive 753 In the past, some scanning mechanisms have proven to adversely impact 754 the scanned host, sometimes in severe fashion. Scanning 755 methodologies MUST NOT negatively impact the scanned host. 757 3.7. Removals SHOULD Be Possible in Absence of the DNSBL Operator 759 If removals cannot be automated (e.g., via robot re-testing or self- 760 removal) then the DNSBL SHOULD have multiple administrators so that a 761 removal request can be processed if the principal list administrator 762 is on vacation or otherwise unavailable. 764 3.8. Protect Against Misconfiguration/Outages 766 It is not altogether uncommon for DNSBL users to configure their 767 systems improperly for DNSBL queries. The consequences of an error 768 can range from undue (or even damaging) load on the DNSBL servers, to 769 accidentally blocking all incoming email. 771 DNSBL users MUST test their initial DNSBL configurations to ensure 772 that they're working correctly, and SHOULD periodically recheck the 773 status of the DNSBLs they use and adjust their configuration as 774 necessary. 776 Common types of misconfigurations include: 778 1. Using wrong (sub-)zones for querying (e.g. 4.3.2.1.example.com or 779 4.3.2.1.dnsbl.exmple.cm instead of 4.3.2.1.dnsbl.example.com). 781 2. Downloading a local mirror of the data, but failing to set up the 782 local name server infrastructure appropriately, and thus 783 continuing to query the public name servers. 785 3. Downloading a local mirror of the data, but misconfiguring the 786 local name server infrastructure to query a locally invented zone 787 name (4.3.2.1.dnsbl.local) at the public name servers. 789 4. Misconfigured local name servers to not do meaningful caching, 790 thus heavily increasing load on the public name servers. 792 5. Using the DNSBL query root domain name as the name server for 793 queries. 795 6. Using the DNSBL incorrectly; e.g. Some DNSBLs are suitable only 796 for certain types of filtering. Improper use may result in 797 excessive incorrect filtering. 799 While in many cases, it can be difficult to detect such situations, 800 to protect against such misconfiguration it is RECOMMENDED that DNSBL 801 operators make design decisions to mitigate the impact of such 802 mistakes, and make efforts to contact administrative contacts to 803 remedy the situation where appropriate. But the DNSBL operator 804 SHOULD also prepare to take appropriate steps to protect the 805 operational infrastructure (e.g., have the ability to block abusive 806 users from causing further damage). 808 Appropriate use of the DNSBL (e.g. email, not IRC, not against 809 authenticated local users) SHOULD be documented on the web site. 811 4. Security Considerations 813 Any system manager that uses DNSBLs is entrusting part of his or her 814 server management to the parties that run the lists. A DNSBL manager 815 that decided to list 0/0 (which has actually happened) could cause 816 every server that uses the DNSBL to reject all mail. Conversely, if 817 a DNSBL manager removes all of the entries (which has also happened), 818 systems that depend on the DNSBL will find that their filtering 819 doesn't work as they want it to. 821 If a registered domain name used for a DNSBL is allowed to lapse, or 822 the DNSBL user spells the DNSBL domain name incorrectly, the system 823 manager's server management is now subject to an entirely different 824 party than was intended. Further, even if there is no malicious 825 intent, some DNSBL query clients will interpret any A record being 826 returned as being listed. DNSBL users SHOULD be prepared to 827 periodically test the DNSBLs they use for correct operation. 829 Like all DNS-based mechanisms, DNSBLs are subject to various threats 830 outlined in [RFC3833]. 832 5. IANA Considerations 834 This document has no actions for IANA. [This section may be removed 835 before publishing as an RFC.] 837 6. References 839 6.1. Normative References 841 [RFC1918] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and 842 E. Lear, "Address Allocation for Private Internets", 843 BCP 5, RFC 1918, February 1996. 845 [RFC2014] Weinrib, A. and J. Postel, "IRTF Research Group Guidelines 846 and Procedures", BCP 8, RFC 2014, October 1996. 848 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 849 Requirement Levels", BCP 14, RFC 2119, March 1997. 851 [RFC3927] Cheshire, S., Aboba, B., and E. Guttman, "Dynamic 852 Configuration of IPv4 Link-Local Addresses", RFC 3927, 853 May 2005. 855 6.2. Informative References 857 [BIND] Internet Systems Corporation, "ISC BIND", 858 . 860 [RFC3330] IANA, "Special-Use IPv4 Addresses", RFC 3330, 861 September 2002. 863 [RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain 864 Name System (DNS)", RFC 3833, August 2004. 866 [RFC5156] Blanchet, M., "Special-Use IPv6 Addresses", RFC 5156, 867 April 2008. 869 [RFC5782] Levine, J., "DNS Blacklists and Whitelists", RFC 5782, 870 February 2010. 872 Appendix A. Acknowledgements 874 We would like to thank John R. Levine, Alan Murphy and Dave Crocker 875 for their insightful comments. 877 We would also like to thank Yakov Shafranovich and Nick Nicholas for 878 editing previous versions of this document. 880 Authors' Addresses 882 Chris Lewis 883 Nortel Networks 885 Email: clewis@nortel.com 887 Matt Sergeant 888 MessageLabs, Inc 890 Email: msergeant@messagelabs.com