idnits 2.17.1 draft-krishnan-mip6-firewall-01.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 18. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 472. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 483. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 490. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 496. 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 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 (July 6, 2007) is 6138 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 3775 (Obsoleted by RFC 6275) Summary: 2 errors (**), 0 flaws (~~), 2 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group S. Krishnan 3 Internet-Draft Ericsson 4 Intended status: Informational N. Steinleitner 5 Expires: January 7, 2008 University of Goettingen 6 Y. Qiu 7 Institute for Infocomm Research 8 July 6, 2007 10 Firewall Recommendations for MIPv6 11 draft-krishnan-mip6-firewall-01 13 Status of this Memo 15 By submitting this Internet-Draft, each author represents that any 16 applicable patent or other IPR claims of which he or she is aware 17 have been or will be disclosed, and any of which he or she becomes 18 aware will be disclosed, in accordance with Section 6 of BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF), its areas, and its working groups. Note that 22 other groups may also distribute working documents as Internet- 23 Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 The list of current Internet-Drafts can be accessed at 31 http://www.ietf.org/ietf/1id-abstracts.txt. 33 The list of Internet-Draft Shadow Directories can be accessed at 34 http://www.ietf.org/shadow.html. 36 This Internet-Draft will expire on January 7, 2008. 38 Copyright Notice 40 Copyright (C) The IETF Trust (2007). 42 Abstract 44 This document presents some recommendations for firewall 45 administrators to help them configure their firewalls in a way that 46 allows Mobile IPv6 signaling and data messags to pass through. This 47 document assumes that the firewalls in question include some kind of 48 stateful packet filtering capability. 50 Table of Contents 52 1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 53 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 54 3. Home Agent behind a firewall . . . . . . . . . . . . . . . . . 5 55 3.1. Signaling between the MN and the HA . . . . . . . . . . . 5 56 3.2. Route optimization signaling between MN and CN through 57 HA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 58 3.3. IKEv2 signaling between MN and HA for establishing SAs . . 6 59 3.4. Data traffic from and to MN passing through the HA . . . . 6 60 4. Correspondent Node behind a firewall . . . . . . . . . . . . . 7 61 4.1. Route optimization signaling between MN and CN through 62 HA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 63 4.2. Route optimization signaling between MN and CN . . . . . . 7 64 4.3. Binding Update from MN to CN . . . . . . . . . . . . . . . 8 65 4.4. Route Optimization data traffic from MN . . . . . . . . . 8 66 4.5. Bi-directional tunnelled data traffic from the MN to 67 the CN through HA . . . . . . . . . . . . . . . . . . . . 8 68 5. Mobile Node behind a firewall . . . . . . . . . . . . . . . . 10 69 5.1. Signaling between MN and HA . . . . . . . . . . . . . . . 10 70 5.2. Signaling between MN and CN . . . . . . . . . . . . . . . 10 71 5.3. IKEv2 signaling between MN and HA for establishing SAs . . 11 72 5.4. Data traffic from and to the MN . . . . . . . . . . . . . 11 73 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 12 74 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 75 8. Security Considerations . . . . . . . . . . . . . . . . . . . 14 76 9. Normative References . . . . . . . . . . . . . . . . . . . . . 15 77 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16 78 Intellectual Property and Copyright Statements . . . . . . . . . . 17 80 1. Requirements notation 82 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 83 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 84 document are to be interpreted as described in [RFC2119]. 86 2. Introduction 88 Network elements such as firewalls are an integral aspect of a 89 majority of IP networks today, given the state of security in the 90 Internet, threats, and vulnerabilities to data networks. MIPv6 91 [RFC3775] defines mobility support for IPv6 nodes. Since firewalls 92 are not aware of MIPv6 protocol details, they will probably interfere 93 with the smooth operation of the protocol. The problems caused by 94 firewalls to Mobile IPv6 are documented in [RFC4487]. 96 This document presents some recommendations for firewall 97 administrators to help them configure their firewalls in a way that 98 allows Mobile IPv6 signaling and data messags to pass through. This 99 document assumes that the firewalls in question include some kind of 100 stateful packet filtering capability. 102 3. Home Agent behind a firewall 104 This section presents the recommendations for configuring a firewall 105 that is protects a home agent. For each type of traffic that needs 106 to pass through this firewall, recommendations are presented on how 107 to identify that traffic. The following types of traffic are 108 considered 110 o Signaling between the MN and the HA 112 o Route optimization signaling between MN and CN through HA 114 o IKEv2 signaling between MN and HA for establishing SAs 116 o Data traffic from and to MN passing through the HA 118 3.1. Signaling between the MN and the HA 120 The signaling between the MN and HA is protected using IPSec ESP. 121 These messages are encrypted and hence are not inspectable by 122 firewalls. So the firewall has to either permit all these messages 123 or discard all of them. But if these messages are discarded, Mobile 124 IPv6 as specified today will cease to work. In order to permit these 125 messages through, the firewall has to detect the messages using the 126 following pattern. 128 Destination Address: Address of HA 129 IP payload protocol number: 50 (ESP) 131 This pattern will allow the BU messages from MNs to HA and BA 132 messages from the HA to the MNs to pass through. It will also allow 133 the HoTI and HoT messages (related to route optimization) between the 134 MN and the HA to pass through. 136 3.2. Route optimization signaling between MN and CN through HA 138 Route Optimization allows direct communication of data packets 139 between the MN and a CN without tunneling it back through the HA. In 140 order for route optimization to work, part of the initial signaling 141 has to pass through the HA. The following pattern will allow these 142 messages to pass through. 144 Destination Address: HoA of MN 145 Mobility Header Type: 3 147 This pattern allows the HoT message from the CN to the MN's HoA to 148 pass through the firewall. The HoTI message from the MN to the CN 149 through the HA usually passes through the firewall without any 150 problems. Hence no specific pattern is recommended. If the firewall 151 does not have the capability to recognize the mobility header type, 152 it needs to at least filter on the IP payload protocol type 135 153 (Mobility Header) in order to limit the scope of this filter rule. 155 3.3. IKEv2 signaling between MN and HA for establishing SAs 157 The MN and HA exchange IKEv2 signaling in order to establish the 158 security associations. The security associations so established will 159 later be used for securing the mobility signaling messages. Hence 160 these messages need to be permitted to pass through the firewalls. 161 The following pattern will detect these messages. 163 Destination Address: Address of HA 164 Transport Protocol: UDP 165 Destination UDP Port: 500 167 3.4. Data traffic from and to MN passing through the HA 169 If a CN tries to initiate traffic to an MN, a stateful firewall would 170 prevent these connection requests to pass through as there is no 171 established state on the firewall. Since MNs do not usually provide 172 services, this is not usually a problem. But if this is necessary to 173 do, the pattern to look for is 175 Destination Address: MN HoA 177 Allowing this traffic might allow any kind of traffic, including 178 malicious traffic, to pass through unfiltered to the MN. This would 179 expose the MN to any type of possibly malicious traffic, resulting in 180 a denial of service or exploitation of known security 181 vulnerabilities. This practice is NOT RECOMMENDED. 183 4. Correspondent Node behind a firewall 185 This section presents the recommendations for configuring a firewall 186 if a node behind it should be able to act as Mobile IPv6 CN. For 187 each type of traffic that needs to pass through this firewall, 188 recommendations are presented on how to identify that traffic. The 189 following types of traffic are considered 191 o Route optimization signaling between MN and CN through HA 193 o Route optimization signaling between MN and CN 195 o Binding Update from MN to CN 197 o Route Optimization data traffic from MN 199 o Bi-directional tunnelled data traffic from the MN to the CN 200 through HA 202 4.1. Route optimization signaling between MN and CN through HA 204 Parts of the initial route optimization signaling has to pass through 205 the HA, namely the HoTI and the HoT messages. Without assistance, 206 the HoTI message from the HA to the CN is not able to traverse the 207 firewall. The following pattern will allow these messages to 208 traverse. 210 Destination Address: CN Address 212 Mobility Header Type: 1 214 This pinhole allows the HoTI message from the HA to the CN to 215 traverse the firewall. The HoT message from the CN to the MN through 216 the HA can traverse the firewall without any assistance. Hence no 217 pinhole is required. 219 4.2. Route optimization signaling between MN and CN 221 Route Optimization allows direct communication of data packets 222 between the MN and a CN without tunnelling it back through the HA. 223 To get route optimization work, the MN has to send a CoTI message 224 directly to the CN, which response with a CoT message. However, a 225 stateful firewall would prevent the CoTI message to pass through as 226 there is no established state on the firewall. The following pinhole 227 will allow the CoTI message to traverse. 229 Destination Address: CN Address 231 Mobility Header Type: 2 233 The CoT message from the CN to the MN can traverse the firewall 234 without any assistance. Hence no pinhole is required. 236 4.3. Binding Update from MN to CN 238 After successfully performing the return routability procedure, the 239 MN sends the BU to the CN and expects the BA. Since this BU does not 240 match any previous installed pinhole rules, an additional pinhole 241 with the following format is required. 243 Destination Address: CN Address 245 Mobility Header Type: 5 247 This allows the BU to traverse the firewall and the BA can pass the 248 firewall without any assistance. Therefore, the Binding Update 249 sequence can be performed successfully. 251 4.4. Route Optimization data traffic from MN 253 Also the Route Optimization data traffic from MN directly to the CN 254 can not traverse the firewall without assistance. But as we have 255 configured the firewall to allow the BU message from MN to the CN to 256 traverse the firewall, the Route Optimization data traffic is able to 257 pass through as it also matches the pinhole installed for the BU. 259 Therefore, no additional pinhole rules are required. 261 4.5. Bi-directional tunnelled data traffic from the MN to the CN 262 through HA 264 If a MN tries to initiate traffic to a CN through the HA using bi- 265 directional tunnelling, a stateful firewall would prevent these 266 connection requests to pass through as there is no established state 267 on the firewall. This is usually a problem as CNs often provide 268 services. A solution is to static configure the firewall to let this 269 traffic pass through. However, this is only an acceptable option if 270 it is not necessary to open an all-embracing pinhole, e.g. if the 271 destination ports are well-known. In this case, the pinhole has to 272 look like 273 Destination Address: CN Address 275 Destination Port: Application Ports 277 If the ports are unknown, it is necessary to install a pinhole with 278 only the Destination Address as pattern. Allowing this traffic might 279 allow any kind of traffic, including malicious traffic, to traverse 280 to the CN. Allowing this traffic might allow any kind of traffic, 281 including malicious traffic, to pass through unfiltered to the CN. 282 This would expose the CN to any type of possibly malicious traffic, 283 resulting in a denial of service or exploitation of known security 284 vulnerabilities. This practice is NOT RECOMMENDED 286 5. Mobile Node behind a firewall 288 This section presents the recommendations for configuring a firewall 289 that protects the network a mobile node visiting. For each type of 290 traffic that needs to pass through this firewall, recommendations are 291 presented on how to identify that traffic. The following types of 292 traffic are considered 294 o Signaling between MN and HA 296 o Route Optimization Signaling between MN and CN 298 o IKEv2 signaling between MN and HA for establishing SAs 300 o Data traffic from and to MN 302 5.1. Signaling between MN and HA 304 As described in Section 3.1, the signaling between the MN and HA is 305 protected using IPSec ESP. Currently, a lot of firewalls are 306 configured to block the incoming ESP packets. Moreover, from the 307 view of the firewall, both source and destination addresses of these 308 messages from/to mobile node are variable. Fortunately, for a 309 stateful firewall, if the initial traffic is allowed through the 310 firewall, then the return traffic is also allowed. A mobile node is 311 always the initiator for the BU. Since MN's CoA is not able to be 312 known in advance, the firewall can use following pattern to permit 313 these messages through. 315 Source Address: Visited subnet prefix 316 IP payload protocol number: 50 (ESP) 318 This pattern will allow the initial packets (e.g. BU from MNs to HA, 319 HoTI, etc.) to pass through the firewall. Then the return packets 320 (BA from HA to MN, HoT) is also able to pass through accordingly. 322 5.2. Signaling between MN and CN 324 Route Optimization allows direct communication of data packets 325 between the MN and a CN without tunneling it back through the HA. It 326 includes 3 pairs of messages: HoTI/HoT, CoTI/CoT and BU/BA. The 327 first pair can pass through the firewall using the pattern described 328 in section 5.1. Here we discuss CoTI/CoT and BU/BA messages. 329 Following pattern permits these messages through the firewall. 331 Source Address: Visited subnet prefix 332 IP payload protocol number: 135 (Mobility Header) 333 This pattern allows the initial messages (CoTI and BU) from the MN to 334 the CN pass through the firewall. The return messages (CoT and BA) 335 from the CN to the MN can also passes through the firewall 336 accordingly. 338 5.3. IKEv2 signaling between MN and HA for establishing SAs 340 The MN and HA exchange IKEv2 signaling in order to establish the 341 security associations. The security associations so established will 342 later be used for securing the mobility signaling messages. Due to 343 variable source/destination IP addresses and MN always as initiator, 344 the following pattern will let the negotiation pass. 346 Source Address: Visited subnet prefix 347 Transport Protocol: UDP 348 Destination UDP Port: 500 350 5.4. Data traffic from and to the MN 352 After sending the home binding update, every traffic packet between 353 MN and HA will be encapsulated by ESP. As described in section 5.1, 354 the firewall allows theses packets pass through. However, if a CN 355 tries to initiate traffic to an MN, a stateful firewall would prevent 356 these connection requests to pass through as there is no established 357 state on the firewall. We may use following steps to establish a 358 channel state between MN and CN: 360 1. When detecting BU message from MN to CN with protocol number 135 361 and mobility header type 5, the firewall extracts the home 362 address from the destination option. 364 2. Firewall adds a security rule to its table with following 365 pattern. 367 Destination Address: CoA 368 Source Address: CN 369 Routing Header Type 2 Address: HoA 371 Thereafter any packets to MN will be filtered by above pattern. 373 6. Contributors 375 This document is one of the deliverables of the MIPv6 firewall 376 design. The following members of the team were involved in the 377 creation of this document. 379 Hannes Tschofenig Hannes.Tschofenig@gmx.net 381 Gabor Bajko Gabor.Bajko@nokia.com 383 Suresh Krishnan suresh.krishnan@ericsson.com 385 Hesham Soliman solimanhs@gmail.com 387 Yaron Sheffer yaronf@checkpoint.com 389 Qiu Ying qiuying@i2r.a-star.edu.sg 391 Ram Vishnu vishnu@motorola.com 393 Niklas Steinleitner steinleitner@cs.uni-goettingen.de 395 Vijay Devarapalli vijay.devarapalli@AzaireNet.com 397 7. IANA Considerations 399 This document does not require any IANA action. 401 8. Security Considerations 403 This document specifies recommendations for firewall administrators 404 to allow Mobile IPv6 traffic to pass through unhindered. Since some 405 of this traffic is encrypted it is not possible for firewalls to 406 discern whether it is safe or not. This document recommends a 407 liberal setting so that all legitimate traffic can pass. This means 408 that some malicious traffic may be permitted by these rules. These 409 rules may allow the initiation of Denial of Service attacks against 410 Mobile IPv6 capable nodes (the MNs, CNs and the HAs). Especially the 411 rules specified in Section 3.4 and Section 4.5 are broadly defined 412 and hence possess the most potential for abuse. Hence, if these 413 rules are implemented, the firewalls SHOULD be configured to rate- 414 limit such traffic on a per-destination basis. This would allow the 415 firewall to mitigate possible denial of service attacks on the 416 endpoints. Please note that such measures would not mitigate other 417 potential security issues. 419 9. Normative References 421 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 422 Requirement Levels", BCP 14, RFC 2119, March 1997. 424 [RFC3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support 425 in IPv6", RFC 3775, June 2004. 427 [RFC4487] Le, F., Faccin, S., Patil, B., and H. Tschofenig, "Mobile 428 IPv6 and Firewalls: Problem Statement", RFC 4487, 429 May 2006. 431 Authors' Addresses 433 Suresh Krishnan 434 Ericsson 435 8400 Decarie Blvd. 436 Town of Mount Royal, QC 437 Canada 439 Phone: +1 514 345 7900 x42871 440 Email: suresh.krishnan@ericsson.com 442 Niklas Steinleitner 443 University of Goettingen 444 Lotzestr. 16-18 445 Goettingen 446 Germany 448 Email: steinleitner@cs.uni-goettingen.de 450 Ying Qiu 451 Institute for Infocomm Research 452 21 Heng Mui Keng Terrace 453 Singapore 455 Phone: +65-6874-6742 456 Email: qiuying@i2r.a-star.edu.sg 458 Full Copyright Statement 460 Copyright (C) The IETF Trust (2007). 462 This document is subject to the rights, licenses and restrictions 463 contained in BCP 78, and except as set forth therein, the authors 464 retain all their rights. 466 This document and the information contained herein are provided on an 467 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 468 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 469 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 470 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 471 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 472 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 474 Intellectual Property 476 The IETF takes no position regarding the validity or scope of any 477 Intellectual Property Rights or other rights that might be claimed to 478 pertain to the implementation or use of the technology described in 479 this document or the extent to which any license under such rights 480 might or might not be available; nor does it represent that it has 481 made any independent effort to identify any such rights. Information 482 on the procedures with respect to rights in RFC documents can be 483 found in BCP 78 and BCP 79. 485 Copies of IPR disclosures made to the IETF Secretariat and any 486 assurances of licenses to be made available, or the result of an 487 attempt made to obtain a general license or permission for the use of 488 such proprietary rights by implementers or users of this 489 specification can be obtained from the IETF on-line IPR repository at 490 http://www.ietf.org/ipr. 492 The IETF invites any interested party to bring to its attention any 493 copyrights, patents or patent applications, or other proprietary 494 rights that may cover technology that may be required to implement 495 this standard. Please address the information to the IETF at 496 ietf-ipr@ietf.org. 498 Acknowledgment 500 Funding for the RFC Editor function is provided by the IETF 501 Administrative Support Activity (IASA).