| draft-krishnan-mip6-firewall-admin-03.txt | draft-krishnan-mip6-firewall-admin-04.txt | |||
|---|---|---|---|---|
| Network Working Group S. Krishnan | Network Working Group S. Krishnan | |||
| Internet-Draft Ericsson | Internet-Draft Ericsson | |||
| Intended status: Informational N. Steinleitner | Intended status: Informational N. Steinleitner | |||
| Expires: August 27, 2008 University of Goettingen | Expires: November 1, 2008 University of Goettingen | |||
| Y. Qiu | Y. Qiu | |||
| Institute for Infocomm Research | Institute for Infocomm Research | |||
| G. Bajko | G. Bajko | |||
| Nokia | Nokia | |||
| February 24, 2008 | April 30, 2008 | |||
| Guidelines for firewall administrators regarding MIPv6 traffic | Guidelines for firewall administrators regarding MIPv6 traffic | |||
| draft-krishnan-mip6-firewall-admin-03 | draft-krishnan-mip6-firewall-admin-04 | |||
| Status of this Memo | Status of this Memo | |||
| By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
| applicable patent or other IPR claims of which he or she is aware | 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 | 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. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
| skipping to change at page 1, line 39 | skipping to change at page 1, line 39 | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
| http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
| The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
| http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
| This Internet-Draft will expire on August 27, 2008. | This Internet-Draft will expire on November 1, 2008. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (C) The IETF Trust (2008). | Copyright (C) The IETF Trust (2008). | |||
| Abstract | Abstract | |||
| This document presents some recommendations for firewall | This document presents some recommendations for firewall | |||
| administrators to help them configure their existing firewalls in a | administrators to help them configure their existing firewalls in a | |||
| way that allows in certain deployment scenarios the Mobile IPv6 | way that allows in certain deployment scenarios the Mobile IPv6 | |||
| skipping to change at page 2, line 17 | skipping to change at page 2, line 17 | |||
| question include some kind of stateful packet filtering capability. | question include some kind of stateful packet filtering capability. | |||
| Table of Contents | Table of Contents | |||
| 1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 | 1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 4. Home Agent behind a firewall . . . . . . . . . . . . . . . . . 4 | 4. Home Agent behind a firewall . . . . . . . . . . . . . . . . . 4 | |||
| 4.1. Signaling between the MN and the HA . . . . . . . . . . . 4 | 4.1. Signaling between the MN and the HA . . . . . . . . . . . 4 | |||
| 4.2. IKEv2 signaling between MN and HA for establishing SAs . . 5 | 4.2. IKEv2 signaling between MN and HA for establishing SAs . . 5 | |||
| 4.3. Data traffic from and to MN passing through the HA . . . . 5 | ||||
| 5. Correspondent Node behind a firewall . . . . . . . . . . . . . 5 | 5. Correspondent Node behind a firewall . . . . . . . . . . . . . 5 | |||
| 5.1. Route optimization signaling between MN and CN through | 5.1. Route optimization signaling between MN and CN through | |||
| HA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | HA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5.2. Route optimization signaling between MN and CN . . . . . . 7 | 5.2. Route optimization signaling between MN and CN . . . . . . 6 | |||
| 5.3. Binding Update from MN to CN . . . . . . . . . . . . . . . 7 | 5.3. Binding Update from MN to CN . . . . . . . . . . . . . . . 7 | |||
| 5.4. Route Optimization data traffic from MN . . . . . . . . . 7 | 5.4. Route Optimization data traffic from MN . . . . . . . . . 7 | |||
| 5.5. Bi-directional tunnelled data traffic from the MN to | 6. Mobile Node behind a firewall . . . . . . . . . . . . . . . . 7 | |||
| the CN through HA . . . . . . . . . . . . . . . . . . . . 7 | 6.1. Signaling between MN and HA . . . . . . . . . . . . . . . 8 | |||
| 6. Mobile Node behind a firewall . . . . . . . . . . . . . . . . 8 | 6.2. Signaling between MN and CN . . . . . . . . . . . . . . . 8 | |||
| 6.1. Signaling between MN and HA . . . . . . . . . . . . . . . 9 | 6.3. IKEv2 signaling between MN and HA for establishing SAs . . 9 | |||
| 6.2. Signaling between MN and CN . . . . . . . . . . . . . . . 9 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 6.3. IKEv2 signaling between MN and HA for establishing SAs . . 10 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 9. Security Considerations . . . . . . . . . . . . . . . . . . . 9 | |||
| 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 10. Normative References . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 9. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 10. Normative References . . . . . . . . . . . . . . . . . . . . . 11 | Intellectual Property and Copyright Statements . . . . . . . . . . 12 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11 | ||||
| Intellectual Property and Copyright Statements . . . . . . . . . . 13 | ||||
| 1. Requirements notation | 1. Requirements notation | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in [RFC2119]. | document are to be interpreted as described in [RFC2119]. | |||
| 2. Introduction | 2. Introduction | |||
| Network elements such as firewalls are an integral aspect of a | Network elements such as firewalls are an integral aspect of a | |||
| skipping to change at page 4, line 41 | skipping to change at page 4, line 41 | |||
| Figure 1: HA behind a firewall | Figure 1: HA behind a firewall | |||
| For each type of traffic that needs to pass through this firewall, | For each type of traffic that needs to pass through this firewall, | |||
| recommendations are presented on how to identify that traffic. The | recommendations are presented on how to identify that traffic. The | |||
| following types of traffic are considered | following types of traffic are considered | |||
| o Signaling between the MN and the HA | o Signaling between the MN and the HA | |||
| o IKEv2 signaling between MN and HA for establishing SAs | o IKEv2 signaling between MN and HA for establishing SAs | |||
| o Data traffic from and to MN passing through the HA | ||||
| 4.1. Signaling between the MN and the HA | 4.1. Signaling between the MN and the HA | |||
| The signaling between the MN and HA is protected using IPSec ESP. | The signaling between the MN and HA is protected using IPSec ESP. | |||
| These messages are critical to the MIPv6 protocol and if these | These messages are critical to the MIPv6 protocol and if these | |||
| messages are discarded, Mobile IPv6 as specified today will cease to | messages are discarded, Mobile IPv6 as specified today will cease to | |||
| work. In order to permit these messages through, the firewall has to | work. In order to permit these messages through, the firewall has to | |||
| detect the messages using the following patterns. | detect the messages using the following patterns. | |||
| Destination Address: Address of HA | Destination Address: Address of HA | |||
| Next Header: 50 (ESP) | Next Header: 50 (ESP) | |||
| skipping to change at page 5, line 29 | skipping to change at page 5, line 26 | |||
| The MN and HA exchange IKEv2 signaling in order to establish the | The MN and HA exchange IKEv2 signaling in order to establish the | |||
| security associations. The security associations so established will | security associations. The security associations so established will | |||
| later be used for securing the mobility signaling messages. Hence | later be used for securing the mobility signaling messages. Hence | |||
| these messages need to be permitted to pass through the firewalls. | these messages need to be permitted to pass through the firewalls. | |||
| The following pattern will detect these messages. | The following pattern will detect these messages. | |||
| Destination Address: Address of HA | Destination Address: Address of HA | |||
| Transport Protocol: UDP | Transport Protocol: UDP | |||
| Destination UDP Port: 500 | Destination UDP Port: 500 | |||
| 4.3. Data traffic from and to MN passing through the HA | ||||
| If a CN tries to initiate traffic to an MN, a stateful firewall would | ||||
| prevent these connection requests to pass through as there is no | ||||
| established state on the firewall. If this is necessary to do, the | ||||
| pattern to look for is | ||||
| Destination Address: MN HoA | ||||
| Allowing this traffic might allow any kind of traffic, including | ||||
| malicious traffic, to pass through unfiltered to the MN. This would | ||||
| expose the MN to any type of possibly malicious traffic, resulting in | ||||
| a denial of service or exploitation of known security | ||||
| vulnerabilities. This practice is NOT RECOMMENDED. | ||||
| 5. Correspondent Node behind a firewall | 5. Correspondent Node behind a firewall | |||
| This section presents the recommendations for configuring a firewall | This section presents the recommendations for configuring a firewall | |||
| if a node behind it should be able to act as Mobile IPv6 CN. | if a node behind it should be able to act as Mobile IPv6 CN. | |||
| +----------------+ +----+ | +----------------+ +----+ | |||
| | | | HA | | | | | HA | | |||
| | | +----+ | | | +----+ | |||
| | | Home Agent | | | Home Agent | |||
| | +---+ +----+ of B | | +---+ +----+ of B | |||
| skipping to change at page 6, line 24 | skipping to change at page 6, line 4 | |||
| | | +---+ | | | +---+ | |||
| +----------------+ External Mobile | +----------------+ External Mobile | |||
| Network protected Node | Network protected Node | |||
| by a firewall | by a firewall | |||
| Figure 2: CN behind a firewall | Figure 2: CN behind a firewall | |||
| For each type of traffic that needs to pass through this firewall, | For each type of traffic that needs to pass through this firewall, | |||
| recommendations are presented on how to identify that traffic. The | recommendations are presented on how to identify that traffic. The | |||
| following types of traffic are considered | following types of traffic are considered | |||
| o Route optimization signaling between MN and CN through HA | o Route optimization signaling between MN and CN through HA | |||
| o Route optimization signaling between MN and CN | o Route optimization signaling between MN and CN | |||
| o Binding Update from MN to CN | o Binding Update from MN to CN | |||
| o Route Optimization data traffic from MN | o Route Optimization data traffic from MN | |||
| o Bi-directional tunnelled data traffic from the MN to the CN | ||||
| through HA | ||||
| 5.1. Route optimization signaling between MN and CN through HA | 5.1. Route optimization signaling between MN and CN through HA | |||
| Parts of the initial route optimization signaling has to pass through | Parts of the initial route optimization signaling has to pass through | |||
| the HA, namely the HoTI and the HoT messages. Without assistance, | the HA, namely the HoTI and the HoT messages. Without assistance, | |||
| the HoTI message from the HA to the CN is not able to traverse the | the HoTI message from the HA to the CN is not able to traverse the | |||
| firewall. The following pattern will allow these messages to | firewall. When only a few priviledged nodes (like servers) are | |||
| traverse. | allowed to be contacted by outside nodes, then the following pattern | |||
| will allow the HoTI messages to reach these nodes: | ||||
| Destination Address: CN Address | Destination Address: CN Address | |||
| Mobility Header Type: 1 | Mobility Header Type: 1 (HoTI) | |||
| This pinhole allows the HoTI message from the HA to the CN to | where CN Address describes the address(es) of the priviledged | |||
| traverse the firewall. The HoT message from the CN to the MN through | node(s). This pinhole allows the HoTI message from the HA to the CN | |||
| the HA can traverse the firewall without any assistance. Hence no | to traverse the firewall. The HoT message from the CN to the MN | |||
| pinhole is required. | through the HA can traverse the firewall without any assistance. | |||
| Hence no pinhole is required. | ||||
| 5.2. Route optimization signaling between MN and CN | 5.2. Route optimization signaling between MN and CN | |||
| Route Optimization allows direct communication of data packets | Route Optimization allows direct communication of data packets | |||
| between the MN and a CN without tunnelling it back through the HA. | between the MN and a CN without tunnelling it back through the HA. | |||
| To get route optimization work, the MN has to send a CoTI message | To get route optimization work, the MN has to send a CoTI message | |||
| directly to the CN, which response with a CoT message. However, a | directly to the CN, which response with a CoT message. However, a | |||
| stateful firewall would prevent the CoTI message to pass through as | stateful firewall would prevent the CoTI message to pass through as | |||
| there is no established state on the firewall. The following pinhole | there is no established state on the firewall. When only a few | |||
| will allow the CoTI message to traverse. | priviledged nodes (like servers) are allowed to be contacted by | |||
| outside nodes, then the following pattern will allow the CoTI | ||||
| messages to reach these nodes: | ||||
| Destination Address: CN Address | Destination Address: CN Address | |||
| Mobility Header Type: 2 | Mobility Header Type: 2 (CoTI) | |||
| The CoT message from the CN to the MN can traverse the firewall | where CN Address describes the address(es) of the priviledged | |||
| without any assistance. Hence no pinhole is required. | node(s).The CoT message from the CN to the MN can traverse the | |||
| firewall without any assistance. Hence no pinhole is required. | ||||
| 5.3. Binding Update from MN to CN | 5.3. Binding Update from MN to CN | |||
| After successfully performing the return routability procedure, the | After successfully performing the return routability procedure, the | |||
| MN sends the BU to the CN and expects the BA. Since this BU does not | MN sends the BU to the CN and expects the BA. Since this BU does not | |||
| match any previous installed pinhole rules, an additional pinhole | match any previous installed pinhole rules, an additional pinhole | |||
| with the following format is required. | with the following format is required.When only a few priviledged | |||
| nodes (like servers) are allowed to be contacted by outside nodes, | ||||
| then the following pattern will allow the BU messages to reach these | ||||
| nodes: | ||||
| Destination Address: CN Address | Destination Address: CN Address | |||
| Mobility Header Type: 5 | Mobility Header Type: 5 | |||
| This allows the BU to traverse the firewall and the BA can pass the | where CN Address describes the address(es) of the priviledged | |||
| firewall without any assistance. Therefore, the Binding Update | node(s).This allows the BU to traverse the firewall and the BA can | |||
| sequence can be performed successfully. | pass the firewall without any assistance. Therefore, the Binding | |||
| Update sequence can be performed successfully. | ||||
| 5.4. Route Optimization data traffic from MN | 5.4. Route Optimization data traffic from MN | |||
| Also the Route Optimization data traffic from MN directly to the CN | Also the Route Optimization data traffic from MN directly to the CN | |||
| can not traverse the firewall without assistance. A dynamically | can not traverse the firewall without assistance. A dynamically | |||
| created pinhole such as the one specified in [MIP6FWVENDOR] will | created pinhole such as the one specified in [MIP6FWVENDOR] will | |||
| allow this traffic to pass. | allow this traffic to pass. | |||
| 5.5. Bi-directional tunnelled data traffic from the MN to the CN | ||||
| through HA | ||||
| If a MN tries to initiate traffic to a CN through the HA using bi- | ||||
| directional tunnelling, a stateful firewall would prevent these | ||||
| connection requests to pass through as there is no established state | ||||
| on the firewall. This is usually a problem as CNs often provide | ||||
| services. A solution is to static configure the firewall to let this | ||||
| traffic pass through. However, this is only an acceptable option if | ||||
| it is not necessary to open an all-embracing pinhole, e.g. if the | ||||
| destination ports are well-known. In this case, the pinhole has to | ||||
| look like | ||||
| Destination Address: CN Address | ||||
| Destination Port: Application Ports | ||||
| If the ports are unknown, it is necessary to install a pinhole with | ||||
| only the Destination Address as pattern. Allowing this traffic might | ||||
| allow any kind of traffic, including malicious traffic, to traverse | ||||
| to the CN. Allowing this traffic might allow any kind of traffic, | ||||
| including malicious traffic, to pass through unfiltered to the CN. | ||||
| This would expose the CN to any type of possibly malicious traffic, | ||||
| resulting in a denial of service or exploitation of known security | ||||
| vulnerabilities. This practice is NOT RECOMMENDED. | ||||
| 6. Mobile Node behind a firewall | 6. Mobile Node behind a firewall | |||
| This section presents the recommendations for configuring a firewall | This section presents the recommendations for configuring a firewall | |||
| that protects the network a mobile node visiting. | that protects the network a mobile node visiting. | |||
| +----------------+ +----+ | +----------------+ +----+ | |||
| | | | HA | | | | | HA | | |||
| | | +----+ | | | +----+ | |||
| | | Home Agent | | | Home Agent | |||
| | +---+ +----+ of A +---+ | | +---+ +----+ of A +---+ | |||
| skipping to change at page 10, line 19 | skipping to change at page 9, line 28 | |||
| The MN and HA exchange IKEv2 signaling in order to establish the | The MN and HA exchange IKEv2 signaling in order to establish the | |||
| security associations. The security associations so established will | security associations. The security associations so established will | |||
| later be used for securing the mobility signaling messages. Due to | later be used for securing the mobility signaling messages. Due to | |||
| variable source/destination IP addresses and MN always as initiator, | variable source/destination IP addresses and MN always as initiator, | |||
| the following pattern will let the negotiation pass. | the following pattern will let the negotiation pass. | |||
| Source Address: Visited subnet prefix | Source Address: Visited subnet prefix | |||
| Transport Protocol: UDP | Transport Protocol: UDP | |||
| Destination UDP Port: 500 | Destination UDP Port: 500 | |||
| 7. Contributors | 7. Acknowledgements | |||
| This document is one of the deliverables of the MIPv6 firewall | ||||
| design. The following members of the team were involved in the | ||||
| creation of this document. | ||||
| Hannes Tschofenig Hannes.Tschofenig@gmx.net | ||||
| Gabor Bajko Gabor.Bajko@nokia.com | ||||
| Suresh Krishnan suresh.krishnan@ericsson.com | ||||
| Hesham Soliman solimanhs@gmail.com | ||||
| Yaron Sheffer yaronf@checkpoint.com | ||||
| Qiu Ying qiuying@i2r.a-star.edu.sg | ||||
| Niklas Steinleitner steinleitner@cs.uni-goettingen.de | ||||
| Vijay Devarapalli vijay.devarapalli@AzaireNet.com | The authors would like to thank the following members of the MIPv6 | |||
| firewall design team for contributing to this document: Hannes | ||||
| Tschofenig, Hesham Soliman, Yaron Sheffer, and Vijay Devarapalli. | ||||
| The authors would also like to thank William Ivancic, Ryuji Wakikawa, | ||||
| Jari Arkko and Henrik Levkowetz for their thorough reviews of the | ||||
| document and for providing comments to improve the quality of the | ||||
| document. | ||||
| 8. IANA Considerations | 8. IANA Considerations | |||
| This document does not require any IANA action. | This document does not require any IANA action. | |||
| 9. Security Considerations | 9. Security Considerations | |||
| This document specifies recommendations for firewall administrators | This document specifies recommendations for firewall administrators | |||
| to allow Mobile IPv6 traffic to pass through unhindered. Since some | to allow Mobile IPv6 traffic to pass through unhindered. Since some | |||
| of this traffic is encrypted it is not possible for firewalls to | of this traffic is encrypted it is not possible for firewalls to | |||
| discern whether it is safe or not. This document recommends a | discern whether it is safe or not. This document recommends a | |||
| liberal setting so that all legitimate traffic can pass. This means | liberal setting so that all legitimate traffic can pass. This means | |||
| that some malicious traffic may be permitted by these rules. These | that some malicious traffic may be permitted by these rules. These | |||
| rules may allow the initiation of Denial of Service attacks against | rules may allow the initiation of Denial of Service attacks against | |||
| Mobile IPv6 capable nodes (the MNs, CNs and the HAs). Especially the | Mobile IPv6 capable nodes (the MNs, CNs and the HAs). | |||
| rules specified in Section 4.3 and Section 5.5 are broadly defined | ||||
| and hence possess the most potential for abuse. Hence, if these | ||||
| rules are implemented, the firewalls SHOULD be configured to rate- | ||||
| limit such traffic on a per-destination basis. This would allow the | ||||
| firewall to mitigate possible denial of service attacks on the | ||||
| endpoints. Please note that such measures would not mitigate other | ||||
| potential security issues. | ||||
| 10. Normative References | 10. Normative References | |||
| [MIP6FWVENDOR] | [MIP6FWVENDOR] | |||
| Krishnan, S., "Guidelines for firewall vendors regarding | Krishnan, S., Sheffer, Y., Steinleitner, N., and G. Bajko, | |||
| MIPv6 traffic", draft-krishnan-mip6-firewall-vendor-01 | "Guidelines for firewall vendors regarding MIPv6 traffic", | |||
| (work in progress), November 2007. | draft-krishnan-mip6-firewall-vendor-03 (work in progress), | |||
| February 2008. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| [RFC3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support | [RFC3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support | |||
| in IPv6", RFC 3775, June 2004. | in IPv6", RFC 3775, June 2004. | |||
| [RFC4487] Le, F., Faccin, S., Patil, B., and H. Tschofenig, "Mobile | [RFC4487] Le, F., Faccin, S., Patil, B., and H. Tschofenig, "Mobile | |||
| IPv6 and Firewalls: Problem Statement", RFC 4487, | IPv6 and Firewalls: Problem Statement", RFC 4487, | |||
| May 2006. | May 2006. | |||
| End of changes. 24 change blocks. | ||||
| 112 lines changed or deleted | 53 lines changed or added | |||
This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||