IPv6 Operations T. Chown Internet-Draft University of Southampton Intended status: Informational March 27, 2007 Expires: September 28, 2007 IPv6 Implications for Network Scanning draft-ietf-v6ops-scanning-implications-03 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 other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months 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 September 28, 2007. Copyright Notice Copyright (C) The IETF Trust (2007). Abstract The 128 bits of IPv6 address space is considerably bigger than the 32 bits of address space of IPv4. In particular, the IPv6 subnets to which hosts attach will by default have 64 bits of host address space. As a result, traditional methods of remote TCP or UDP network scanning to discover open or running services on a host will potentially become less feasible, due to the larger search space in the subnet. In addition automated attacks, such as those performed by network worms, that pick random host addresses to propagate to, Chown Expires September 28, 2007 [Page 1] Internet-Draft IPv6 Network Scanning March 2007 may be hampered. This document discusses this property of IPv6 and describes related issues for IPv6 site network administrators to consider, which may be of importance when planning site address allocation and management strategies. While traditional network scanning probes (whether by individuals or automated via network worms) may become less common, administrators should be aware of other methods attackers may use to discover IPv6 addresses on a target network, and also be aware of appropriate measures to mitigate them. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Target Address Space for Network Scanning . . . . . . . . . . 4 2.1. IPv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3. Reducing the IPv6 Search Space . . . . . . . . . . . . . . 4 2.4. Dual-stack Networks . . . . . . . . . . . . . . . . . . . 5 2.5. Defensive Scanning . . . . . . . . . . . . . . . . . . . . 5 3. Alternatives for Attackers: Off-link . . . . . . . . . . . . . 5 3.1. Gleaning IPv6 prefix information . . . . . . . . . . . . . 6 3.2. DNS Advertised Hosts . . . . . . . . . . . . . . . . . . . 6 3.3. DNS Zone Transfers . . . . . . . . . . . . . . . . . . . . 6 3.4. Log File Analysis . . . . . . . . . . . . . . . . . . . . 6 3.5. Application Participation . . . . . . . . . . . . . . . . 6 3.6. Multicast Group Addresses . . . . . . . . . . . . . . . . 7 3.7. Transition Methods . . . . . . . . . . . . . . . . . . . . 7 4. Alternatives for Attackers: On-link . . . . . . . . . . . . . 7 4.1. General on-link methods . . . . . . . . . . . . . . . . . 7 4.2. Intra-site Multicast or Other Service Discovery . . . . . 8 5. Site Administrator Tools . . . . . . . . . . . . . . . . . . . 8 5.1. IPv6 Privacy Addresses . . . . . . . . . . . . . . . . . . 8 5.2. Cryptographically Generated Addresses (CGAs) . . . . . . . 9 5.3. Non-use of MAC addresses in EUI-64 format . . . . . . . . 9 5.4. DHCP Service Configuration Options . . . . . . . . . . . . 9 5.5. Rolling Server Addresses . . . . . . . . . . . . . . . . . 10 5.6. Application-Specific Addresses . . . . . . . . . . . . . . 10 6. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 10 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11 10. Informative References . . . . . . . . . . . . . . . . . . . . 11 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 12 Intellectual Property and Copyright Statements . . . . . . . . . . 13 Chown Expires September 28, 2007 [Page 2] Internet-Draft IPv6 Network Scanning March 2007 1. Introduction One of the key differences between IPv4 and IPv6 is the much larger address space for IPv6, which also goes hand-in-hand with much larger subnet sizes. This change has a significant impact on the feasibility of TCP and UDP network scanning, whereby an automated process is run to detect open ports (services) on systems that may then be subject of a subsequent attack. Today many IPv4 sites are subjected to such probing on a recurring basis. The 128 bits of IPv6 [1] address space is considerably bigger than the 32 bits of address space in IPv4. In particular, the IPv6 subnets to which hosts attach will by default have 64 bits of host address space [2]. As a result, traditional methods of remote TCP or UDP network scanning to discover open or running services on a host will potentially become less feasible, due to the larger search space in the subnet. This document discusses this property of IPv6, and describes related issues for IPv6 site network administrators to consider, which may be of importance when planning site address allocation and management strategies. This document complements the transition-centric discussion of the issues that can be found in Appendix A of the IPv6 Transition/ Co-existence Security Considerations text [12], which takes a broad view of security issues for transitioning networks. The reader is also referred to a recent paper by Bellovin on worm propagation strategies in IPv6 networks [13]. This paper discusses some of the issues included in this document, from a slightly different perspective. Network scanning is quite a prevalent tactic used by would-be attackers. There are two general classes of such scanning. In one case, the probes are from an attacker outside a site boundary who is trying to find weaknesses on any system in that network which they may then subsequently be able to compromise. The other case is scanning by worms that spread through (site) networks, looking for further hosts to compromise. Many worms, like Slammer, rely on such address scanning methods to propagate, whether they pick subnets numerically (and thus probably topologically) close to the current victim, or subnets in random remote networks. It must be remembered that the defence of a network must not rely solely on the unpredictable sparseness of the host addresses on that network. Such a feature or property is only one measure in a set of measures that may be applied. However, with a growth in usage of IPv6 devices in open networks likely, and security becoming more likely an issue for the end devices, such obfuscation can be useful Chown Expires September 28, 2007 [Page 3] Internet-Draft IPv6 Network Scanning March 2007 where its use is of little or no cost to the administrator to implement it. However, a law of diminishing returns does apply. An administrator who undertakes an address hiding policy through unpredictable sparseness should be aware that while IPv6 host addresses may be assigned to hosts that are likely to take significant time to discover by traditional scanning methods, there are other means by which such addresses may be discovered. Implementing all of the mitigating methods described in this text may be deemed unwarranted effort. But it is up to the site administrator to be aware of the context and the options available, and in particular what new methods may attackers use to glean IPv6 address information, and how these can potentially be mitigated against. Finally, note that this document is currently intended to be informational; there is not yet sufficient deployment experience for it to be considered BCP. 2. Target Address Space for Network Scanning There are significantly different considerations for the feasibility of plain, brute force IPv4 and IPv6 address scanning. 2.1. IPv4 A typical IPv4 subnet may have 8 bits reserved for host addressing. In such a case, a remote attacker need only probe at most 256 addresses to determine if a particular service is running publicly on a host in that subnet. Even at only one probe per second, such a scan would take under 5 minutes to complete. 2.2. IPv6 A typical IPv6 subnet will have 64 bits reserved for host addressing. In such a case, a remote attacker in principle needs to probe 2^64 addresses to determine if a particular open service is running on a host in that subnet. At a very conservative one probe per second, such a scan may take some 5 billion years to complete. A more rapid probe will still be limited to (effectively) infinite time for the whole address space. However, there are ways for the attacker to reduce the address search space to scan against within the target subnet, as we discuss below. 2.3. Reducing the IPv6 Search Space The IPv6 host address space through which an attacker may search can be reduced in at least two ways. First, the attacker may rely on the administrator conveniently Chown Expires September 28, 2007 [Page 4] Internet-Draft IPv6 Network Scanning March 2007 numbering their hosts from [prefix]::1 upward. This makes scanning trivial, and thus should be avoided unless the host's address is readily obtainable from other sources (for example it is the site's published primary DNS or email MX server). Alternatively if hosts are numbered sequentially, or using any regular scheme, knowledge of one address may expose other available addresses to scan. Second, in the case of statelessly autoconfiguring [1] hosts, the host part of the address will usually take a well-known format that includes the Ethernet vendor prefix and the "fffe" stuffing. For such hosts, the search space can be reduced to 48 bits. Further, if the Ethernet vendor is also known, the search space may be reduced to 24 bits, with a one probe per second scan then taking a less daunting 194 days. Even where the exact vendor is not known, using a set of common vendor prefixes can reduce the search. In addition, many nodes in a site network may be procured in batches, and thus have sequential or near sequential MAC addresses; if one node's autoconfigured address is known, scanning around that address may yield results for the attacker. Again, any form of sequential host addressing should be avoided if possible. 2.4. Dual-stack Networks Full advantage of the increased IPv6 address space in terms of resilience to network scanning may not be gained until IPv6-only networks and devices become more commonplace, given that most IPv6 hosts are currently dual stack, with (more readily scannable) IPv4 connectivity. However, many applications or services (e.g. new peer- to-peer applications) on the (dual stack) hosts may emerge that are only accessible over IPv6, and that thus can only be discovered by IPv6 address scanning. 2.5. Defensive Scanning The problem faced by the attacker for an IPv6 network is also faced by a site administrator looking for vulnerabilities in their own network's systems. The administrator should have the advantage of being on-link for scanning purposes though. 3. Alternatives for Attackers: Off-link If IPv6 hosts in subnets are allocated addresses 'randomly', and as a result IPv6 network scanning becomes relatively infeasible, attackers will need to find new methods to identify IPv6 addresses for subsequent scanning. In this section, we discuss some possible paths attackers may take. In these cases, the attacker will attempt to identify specific IPv6 addresses for subsequent targeted probes. Chown Expires September 28, 2007 [Page 5] Internet-Draft IPv6 Network Scanning March 2007 3.1. Gleaning IPv6 prefix information Note that in IPv6 an attacker would not be able to search across the entire IPv6 address space as they might in IPv4. An attacker may learn general prefixes to focus their efforts on by observing route view information (e.g. from public looking glass services) or information on allocated address space from RIRs. In general this would only yield information at most at the /48 prefix granularity, but specific /64 prefixes may be observed from route views on some parts of some networks. 3.2. DNS Advertised Hosts Any servers that are DNS listed, e.g. MX mail relays, or web servers, will remain open to probing from the very fact that their IPv6 addresses will be published in the DNS. Where a site uses sequential host numbering, publishing just one address may lead to a threat upon the other hosts. Sites may use a two-faced DNS where internal system DNS information is only published in an internal DNS. It is also worth noting that the reverse DNS tree may also expose address information. In such cases, populating the reverse DNS tree for the entire subnet, even if not all addresses are actually used, may reduce that exposure. 3.3. DNS Zone Transfers In the IPv6 world a DNS zone transfer is much more likely to narrow the number of hosts an attacker needs to target. This implies restricting zone transfers is (more) important for IPv6, even if it is already good practice to restrict them in the IPv4 world. There are some projects that provide Internet mapping data from access to such transfers. Administrators may of course agree to provide such transfers where they choose to do so. 3.4. Log File Analysis IPv6 addresses may be harvested from recorded logs such as web site logs. Anywhere else where IPv6 addresses are explicitly recorded may prove a useful channel for an attacker, e.g. by inspection of the (many) Received from: or other header lines in archived email or Usenet news messages. 3.5. Application Participation More recent peer-to-peer applications often include some centralised server which coordinates the transfer of data between peers. The Chown Expires September 28, 2007 [Page 6] Internet-Draft IPv6 Network Scanning March 2007 BitTorrent application builds swarms of nodes that exchange chunks of files, with a tracker passing information about peers with available chunks of data between the peers. Such applications may offer an attacker a source of peer IP addresses to probe. 3.6. Multicast Group Addresses Where an Embedded RP [7] multicast group address is known, the unicast address of the rendezvous point is implied by the group address. Where unicast prefix based multicast group addresses [5] are used, specific /64 link prefixes may also be disclosed in traffic that goes off-site. An administrator may thus choose to put aside /64 bit prefixes for multicast group addresses that are not in use for normal unicast routing and addressing. Alternatively a site may simply use their /48 site prefix allocation to generate RFC3306 multicast group addresses. 3.7. Transition Methods Specific knowledge of the target network may be gleaned if that attacker knows it is using 6to4 [4], ISATAP [10], Teredo [11] or other techniques that derive low-order bits from IPv4 addresses (though in this case, unless they are using IPv4 NAT, the IPv4 addresses may be probed anyway). For example, the current Microsoft 6to4 implementation uses the address 2002:V4ADDR::V4ADDR while older Linux and FreeBSD implementations default to 2002:V4ADDR::1. This leads to specific knowledge of specific hosts in the network. Given one host in the network is observed as using a given transition technique, it is likely that there are more. In the case of Teredo, the 64 bit node identifier is generated from the IPv4 address observed at a Teredo server along with a UDP port number. The Teredo specification also allows for discovery of other Teredo clients on the same IPv4 subnet via a well-known IPv4 multicast address (see Section 2.17 of RFC4380 [11]). 4. Alternatives for Attackers: On-link 4.1. General on-link methods If the attacker is on link, then traffic on the link, be it Neighbour Discovery or application based traffic, can invariably be observed, and target addresses learnt. In this document we are assuming the attacker is off link, but traffic to or from other nodes (in particular server systems) is likely to show up if an attacker can Chown Expires September 28, 2007 [Page 7] Internet-Draft IPv6 Network Scanning March 2007 gain a presence on any one subnet in a site's network. IPv6-enabled hosts on local subnets may be discovered through probing the "all hosts" link local multicast address. Likewise any routers on link may be found via the "all routers" link local multicast address. An attacker may choose to probe in a slightly more obfuscated way by probing the solicited node multicast address of a potential target host. Where a host has already been compromised, its Neighbour Discovery cache is also likely to include information about active nodes on link, just as an ARP cache would do for IPv4. 4.2. Intra-site Multicast or Other Service Discovery A site may also have site or organisational scope multicast configured, in which case application traffic, or service discovery, may be exposed site wide. An attacker may also choose to use any other service discovery methods supported by the site. 5. Site Administrator Tools There are some tools that site administrators can apply to make the task for IPv6 network scanning attackers harder. These methods arise from the considerations in the previous section. The author notes that at his current (university) site, there is no evidence of general network scanning running across subnets. However, there is network scanning over IPv6 connections to systems whose IPv6 addresses are advertised (DNS servers, MX relays, web servers, etc), which are presumably looking for other open ports on these hosts to probe. 5.1. IPv6 Privacy Addresses By using the IPv6 Privacy Extensions [3] hosts in a network may only be able to connect to external systems using their current (temporary) privacy address. While an attacker may be able to port scan that address if they do so quickly upon observing or otherwise learning of the address, the threat or risk is reduced due to the time-constrained value of the address. One implementation of RFC3041 already deployed has privacy addresses active for one day, with such addresses reachable for seven days. Note that an RFC3041 host will usually also have a separate static global IPv6 address by which it can also be reached, and that may be DNS-advertised if an externally reachable service is running on it. Chown Expires September 28, 2007 [Page 8] Internet-Draft IPv6 Network Scanning March 2007 DHCPv6 can be used to serve normal global addresses and IPv6 Privacy Addresses. The implication is that while Privacy Addresses can mitigate the long-term value of harvested addresses, an attacker creating an IPv6 application server to which clients connect will still be able to probe the clients by their Privacy Address as and when they visit that server. The duration for which Privacy Addresses are valid will impact on the usefulness of such observed addresses to an external attacker. The frequency with which such address get recycled could be increased, though this may increase the complexity of local network management for the administrator, since doing so will cause more addresses to be used over time in the site. It may be worth exploring whether firewalls can be adapted to allow the option to block traffic initiated to a known IPv6 Privacy Address from outside a network boundary. While some applications may genuinely require such capability, it may be useful to be able to differentiate in some circumstances. 5.2. Cryptographically Generated Addresses (CGAs) The use of Cryptographically Generated Addresses (CGAs) [9] may also cause the search space to be increased from that presented by default use of Stateless Autoconfiguration. Such addresses would be seen where Secure Neighbour Discovery (SEND) [8] is in use. 5.3. Non-use of MAC addresses in EUI-64 format The EUI-64 identifier format does not require the use of MAC addresses for identifier construction. At least one well-known operating system currently defaults to generation of the 64 bit interface identifier by use of random bits, and thus does not embed the MAC address. Where such a method exists as an option, an administrator may wish consider use of that option. 5.4. DHCP Service Configuration Options The administrator should configure DHCPv6 so that the first addresses allocated from the pool begins much higher in the address space than at [prefix]::1. Further, it is desirable that allocated addresses are not sequential, nor have any predictable pattern to them. Unpredictable sparseness in the allocated addresses is a desirable property. DHCPv6 implementors should support configuration options to allow such behaviour. DHCPv6 also includes an option to use Privacy Extension [3] addresses, i.e. temporary addresses, as described in Section 12 of Chown Expires September 28, 2007 [Page 9] Internet-Draft IPv6 Network Scanning March 2007 the DHCPv6 [6] specification. 5.5. Rolling Server Addresses Given the huge address space in an IPv6 subnet/link, and the support for IPv6 multiaddressing, whereby a node or interface may have multiple IPv6 valid addresses of which one is preferred for sending, it may be possible to periodically change the advertised addresses that certain long standing services use (where 'short' exchanges to those services are used). For example, an MX server could be assigned a new primary address on a weekly basis, and old addresses expired monthly. Where MX server IP addresses are detected and cached by spammers, such a defence may prove useful to reduce spam volumes, especially as such IP lists may also be passed between potential attackers for subsequent probing. 5.6. Application-Specific Addresses By a similar reasoning, it may be possible to consider using application-specific addresses for systems, such that a given application may have exclusive use of an address, meaning that disclosure of the address should not expose other applications or services running on the same system. 6. Conclusions Due to the much larger size of IPv6 subnets in comparison to IPv4 it will become less feasible for network scanning methods to detect open services for subsequent attacks. If administrators number their IPv6 subnets in 'random', non-predictable ways, attackers, whether they be in the form of automated network scanners or dynamic worm propagation, will need to use new methods to determine IPv6 host addresses to target. Of course, if those systems are dual-stack, and have open IPv4 services running, they will remain exposed to traditional probes over IPv4 transport. This document has discussed the considerations a site administrator should bear in mind when considering IPv6 address planning issues and configuring various service elements. It highlights relevant issues and offers some informational guidance for administrators. While some suggestions are currently more practical than others, it is up to individual administrators to determine how much effort they wish to invest in 'address hiding' schemes, given that this is only one aspect of network security, and certainly not one to rely solely upon. But by implementing the basic principle of allocating addresses on the basis of unpredictable sparseness, some level of Chown Expires September 28, 2007 [Page 10] Internet-Draft IPv6 Network Scanning March 2007 obfuscation can be cheaply deployed. 7. Security Considerations There are no specific security considerations in this document outside of the topic of discussion itself. 8. IANA Considerations There are no IANA considerations for this document. 9. Acknowledgements Thanks are due to people in the 6NET project (www.6net.org) for discussion of this topic, including Pekka Savola, Christian Strauf and Martin Dunmore, as well as other contributors from the IETF v6ops and other mailing lists, including Tony Finch, David Malone, Bernie Volz, Fred Baker, Andrew Sullivan, Tony Hain, Dave Thaler and Alex Petrescu. 10. Informative References [1] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", RFC 2460, December 1998. [2] Thomson, S. and T. Narten, "IPv6 Stateless Address Autoconfiguration", RFC 2462, December 1998. [3] Narten, T. and R. Draves, "Privacy Extensions for Stateless Address Autoconfiguration in IPv6", RFC 3041, January 2001. [4] Carpenter, B. and K. Moore, "Connection of IPv6 Domains via IPv4 Clouds", RFC 3056, February 2001. [5] Haberman, B. and D. Thaler, "Unicast-Prefix-based IPv6 Multicast Addresses", RFC 3306, August 2002. [6] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003. [7] Savola, P. and B. Haberman, "Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address", RFC 3956, November 2004. Chown Expires September 28, 2007 [Page 11] Internet-Draft IPv6 Network Scanning March 2007 [8] Arkko, J., Kempf, J., Zill, B., and P. Nikander, "SEcure Neighbor Discovery (SEND)", RFC 3971, March 2005. [9] Aura, T., "Cryptographically Generated Addresses (CGA)", RFC 3972, March 2005. [10] Templin, F., Gleeson, T., Talwar, M., and D. Thaler, "Intra- Site Automatic Tunnel Addressing Protocol (ISATAP)", RFC 4214, October 2005. [11] Huitema, C., "Teredo: Tunneling IPv6 over UDP through Network Address Translations (NATs)", RFC 4380, February 2006. [12] Davies, E., Krishnan, S., and P. Savola, "IPv6 Transition/ Co-existence Security Considerations (draft-ietf-v6ops-security-overview-06)", October 2007. [13] Bellovin, S. et al, "Worm Propagation Strategies in an IPv6 Internet (http://www.cs.columbia.edu/~smb/papers/v6worms.pdf)", ;login:, February 2006. Author's Address Tim Chown University of Southampton Southampton, Hampshire SO17 1BJ United Kingdom Email: tjc@ecs.soton.ac.uk Chown Expires September 28, 2007 [Page 12] Internet-Draft IPv6 Network Scanning March 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Chown Expires September 28, 2007 [Page 13]