SECUIRYT THREATS ANALYSIS OF ROUTE OPTIMIZATION MECHANSIM IN MOBILE IPV6 W. Al-Salihy R. Sures Network Research Group School of computer Science University Sains Malaysia Penang, Malaysia Network Research Group School of computer Science University Sains Malaysia Penang, Malaysia H/P (006) 0125581776 H/P (006) 0134303334 wafaa@nrg.cs.usm.my sures@usm.my ABSTRACT 1.1 How Mobile IPv6 work In current mobile Ipv6, each mobile node is identified by its home address, regardless of its current point of attachment to the Internet. While situated away from its home, a mobile node is also associated with a care-of address, which provides information about the mobile node's current location. IPv6 packets addressed to a mobile node's home address are transparently routed to its care-of address. The protocol enables IPv6 nodes to apply route optimization thereby cache the binding of a mobile node's home address with its care-of address, and to then send any packets destined for the mobile node directly to it at this care-of address. MIPv6 [4] describes mechanisms similar to mobile IP whereby a mobile node can freely roam between network links and yet constantly remain accessible through a home address (HoA) statically allocated on its “home” network. While away from its home network a mobile node (Mn) makes use of a care-of address (CoA) dynamically allocated on the network to which it is currently attached, while a proxy known as a home agent is responsible for forwarding (tunneling) packets arriving at the home network on to the mobile node’s care-of address. A mobile node makes its whereabouts known to its home agent by sending it a binding update (BU) message, the triplet message, which contains home address, its current care-of address and the lifetime. Every home agent maintains a binding cache recording the binding updates it has received. Any node that communicates with a mobile node is a correspondent node (Cn), and in fact every IPv6 node is a potential correspondent node. A mobile node also sends a binding update (BU) to any correspondent node from which a (tunneled) packet has been received via its home agent. Dislike mobile IP, mobile IPv6 offer route optimization mechanism in which each correspondent node maintains a binding cache which its transmit function uses to redirect packets directly to the mobile node’s care-of address, thus saving at least one network hop relative to the route through the home agent. Home agents and correspondent nodes may refresh a binding cache entry by sending a binding request to a mobile node, requesting the transmission of a fresh binding update. MIPv6 minimizes the state that a correspondent node must maintain by including a home address option field, encoding a mobile node’s home address, in every packet sent by a mobile node while it is away from its home To support route optimization, current Mobile IPv6 facing many security threats, this paper focusing on analyzing all the security threats of route optimization mechanism and explaining why the need for redesign the current mobile ipv6. This paper doesn’t show the MIPv6 protocol after redesign rather it shows the need for redesign it. Keywords Mobile IPv6, Route Optimization, Security Threats 1. BACKGROUND Mobile computing and networking should not be confused with the portable computing and networking we have today. In mobile networking, computing activities are not disrupted when the user changes the computer’s point of attachment to the Internet. Instead, all the needed reconnection occurs automatically [10], a standard proposed by a working group within the Internet Engineering Task Force, was designed to provide this way of communication (mobility) by allowing the mobile node to use two IP address: a fixed home address and a care of address that changes at each new point of attachment. Current mobile IP will change with mobile IPv6, which have many features for mobility support that are missing in current version, including, Stateless Address Auto configuration [11], and Neighbor Discovery [8], which allow the node to configure it’s care-of address. Thus, foreign agents are not required to support mobility in IPv6. and Route Optimization which improve the performance of IPv6 Mobile nodes. network. The receive side of the IP stack on the correspondent node informs higher level software that the packet was sourced not from the care-of address in the packet’s header, but from the address given in the home address option. Because the binding updates sent remotely to the home agent to affect the home agent’s routing table (binding cash), and because the communication become direct between the correspondent node (Cn) and the mobile node (Mn) when route optimization mechanism enabled, the nodes must be certain from the mobile node whether it is the original one or a malicious node and this assurance need for strong authentication and security mechanism. 2. CURRENT PROBLEMS IN THE SECURITY OF MIPV6 Initially the plan was to use only IPSec Authentication Header (AH) for binding message authentication, without defining and developing any new authentication protocol. This approach encountered many problems and that is why several other methods have also been developed. The current specification defines that IPSec ESP should be used for authentication between MN and HA, and Return Routability (RR) should be used for authentication between MN and CN. The specification makes also possible to use some other, more secure methods than RR for authentication between MN and CN. These methods are discussed in the next sections. 2.1 IPSec Doesn’t Applicable for Mipv6 IPSec [5, 6] can be used to authenticate and encrypt packets at IP level. That is why it was naturally the first proposed method for authentication of the binding messages. The biggest problem with the IPSec method is the key distribution. Key distribution of the IPSec, which is called Internet Key Exchange (IKE), uses either preshared secrets or public keys in the key exchange. When authentication is needed between an Mn and an HA, which must have some relationship in advance, because the MN uses services of the HA, the needed secrets might be exchanged beforehand or some private public key distribution can be utilized. After several discussions in IETF, IPSec ESP was chosen for binding message authentication between Mn and HA instead of IPSec AH. When considering authentication of the binding messages between an Mn and some unknown Cn, no preshared secret can be used. There doesn’t either exist global public key infrastructure that could be utilized. Because of that, actually IPSec as a whole is not usable for authentication between the MN and the CN. 2.2 Return Routability In MIPv6 draft, Binding Updates to correspondent nodes supposed to be protected by using a binding management key, Kbm. Kbm establish using data exchanged during the return Routability (RR) procedure. The Return Routability Procedure enables the correspondent node to obtain some reasonable assurance that the mobile node is in fact addressable at its claimed care-of address as well as at its home address. Only with this assurance is the correspondent node able to accept Binding Updates from the mobile node, which would then instruct the correspondent node to direct that mobile node's data traffic to its claimed care-of address. This is done by testing whether packets addressed to the two claimed addresses are routed to the mobile node. The mobile node can pass the test only if it is able to supply proof that it received certain data (the "keygen tokens") that the correspondent node sends to those addresses. These data are combined by the mobile node into a binding management key, The Home and Care-of Test Init messages are sent at the same time. The procedure requires very little processing at the correspondent node, and the Home and Care-of Test messages can be returned quickly, perhaps nearly simultaneously. These four messages form the Return Routability procedure denoted Kbm. The following are the four messages that form the Return Routability procedure. Home Test Init (HoTI): Source Address = home address Destination Address = correspondent Parameters: home init cookie Care-of Test Init (CoTI): Source Address = care-of address Destination Address = correspondent Parameters: care-of init cookie Home Test (HoT): Source Address = correspondent Destination Address = home address Parameters: - home init cookie - home keygen token - home nonce index Care-of Test (CoT): Source Address = correspondent Destination Address = care-of address Parameters: - care-of init cookie - Care-of keygen token - Care-of nonce index Care-of keygen token = First (64, HMAC_SHA1 (Kcn, (care-of address | nonce | 1))) When the mobile node has received both the Home and Care-of Test messages, the Return Routability procedure is complete. As a result of the procedure, the mobile node has the data it needs to send a Binding Update to the correspondent node. The mobile node hashes the tokens together to form a 20 octet binding key Kbm: Kbm = SHA1 (home keygen token | care-of keygen token). One of the design principles of Mobile IPv6 from the security perspective was that it should not introduce any new threats and vulnerabilities for the IPv6. The problem is that an attacker in the route between two communicating nodes can use binding messages, which are authenticated with using the RR method, to break the connection easily. This is possible, because any node between a CN and a HA gets both the keys home keygen and care-of keygen and can use them to convince the CN to believe the impersonated attacker’s binding messages. This happens as follows: the attacker eavesdrops two communicating nodes A and B that are located in their home networks and learns their IP addresses. They can be any type of nodes, i.e. Cn, Mn. After that attacker initiates the RR method by sending messages HoTI and CoTI directly to B with using its own address as CoA and A’s address as HoA. B sends messages HoT and CoT as response to the received messages and attacker gets the keys. After that attacker sends a BU to B where it claims that A has moved to its own address and B accepts the message, because it is authenticated correctly with using the RR method 2.3 Attacks that Exploit MIPv6 Route optimization and Binding Updates create a new opportunity for attackers. By sending false BUs, they can create false entries in the correspondent host's Binding Cache and, thus, reroute IP packets to wrong destinations. If the data in the packets is not protected cryptographically, this can lead to compromise of secrecy and integrity. The attacker may also cause denial-ofservice by keeping data from arriving at the right destination and by bombing a target host or network with unwanted data. Further more the attacker can amplify the number of packets sent to the destination or reflect them. Using Return Routability as default authentication can cause the hosts with bidding down attack, which makes them give up the stronger authentication methods and choose RR. Attacks as known are active and passive In most active attacks, the attacker can initiate the BU protocol execution at any time while more passive attacks would require the attacker to wait for suitable messages to be sent by the targets hosts. In this paper we consider the active attacks only congest the link toward that network by bombing random addresses within its routing prefix or group of prefixes. 2.3.1.2 Basic Denial of Service Attack By sending spoofed BUs, the attacker can redirect all packets sent between two IP hosts to a random or nonexistent address. This way, it may be able to stop or disrupt communication between the hosts. The requirements are that the target host or its correspondent must support Route Optimization and the attacker must know their IP addresses. Figure 1shows the attack. 2.3.1 Spoofing Binding Updates and Reroute IP Packets to Wrong Destination Attacks If Binding Updates are not authenticated, an attacker can send spoofed BUs. All Internet hosts are vulnerable to this attack because they all must support the correspondent functionality [1]. There is also no way of telling which addresses belong to mobile hosts that really could send BUs. Consider an IP host A sending IP packets to another IP host B. The attacker can redirect the packets to an arbitrary address C by sending to A a Binding Update where the home address (HoA) is B and the care-of address (CoA) is C. After receiving this BU, A will send all packets intended for B to the address C. The attacker may select the CoA to be either its own current address (or another address in its local network) or any other IP address. If the attacker selects a local CoA where it can receive packets, it will be able to send further packets to a correspondent, which the correspondent believes to be coming from the mobile. Ingress filtering at the attacker's local network does not prevent the spoofing of Binding Updates but forces the attacker either to choose a CoA from inside its own network or to use the Alternate CoA sub-option. This may make it easier for the attack targets to selectively filter the spurious BUs at a firewall. 2.3.1.1 Bomb any Mobile Node with Unwanted Data Attack By sending spoofed BUs, the attacker can redirect traffic to an arbitrary IP address. This can be used to bomb an arbitrary Internet address with excessive amounts of data. The attacker can also target a network by redirecting data to one or more IP addresses within the network. In the simplest attack, the attacker knows that there is a heavy data stream from host A to B and redirects this to the target address C. A will soon stop sending the data because it is not receiving acknowledgments from B. A more sophisticated attacker acts itself as B. It first subscribes to a data stream (e.g. a video stream from a news web site) and then redirects this to the target address C. The attacker may even be able to spoof the acknowledgements. It does not help if the targets network stops using Route Optimization. The damage is the worst if these techniques are used to amplify the effect of a distributed denial of service (DDoS) attack. Ingress filtering in the attacker's local network prevents the spoofing of source addresses but the attack is still possible by setting the Alternate CoA sub-option to the target address. The attacker needs to find a correspondent that is willing to send data streams to unauthenticated recipients. Many popular web sites provide such streams. If the target is a single host, the attacker needs to know or guess the target's IP address. On the other hand, if the target is an entire network, the attacker can Attacker Data Flow before attack Mn Attacker redirect packets to random host Cn Random host or non - exist Figure 1: Basic Denial of Service Attack 2.3.1.3 Using HoA to Bomb any Host with Unwanted Data Attack The attacker claims to be a mobile with the HoA equal to the target address. It starts downloading a data stream. The attacker then sends a BU cancellation (i.e. a request to delete the binding from the Binding Cache), or allows the cache entry to expire, which redirects the data stream to the HoA. The attacker can keep the stream alive by spoofing acknowledgments. Figure 2 shows the attack The attacker is mobile with HoA equal to target address Attacker First step Cn trust attacker Mn Cn After cash entry expire or cancel BU Target host Figure 2: Using HoA to bomb any host with unwanted data Attack When BUs is not authenticated, the attacker can choose an arbitrary address as the HoA and thus target any Internet node. BU authentication usually limits the attacker's choice of target address but care must be taken when designing the protocol 2.3.1.4 Against Secrecy and Integrity Attack By spoofing Binding Updates, an attacker can redirect packets between two IP hosts to itself. By sending a spoofed BU to Cn, it can capture the data intended to Mn. It can pretend to be Mn and highjack B's connections with Cn, or establish new spoofed connections. The attacker can also send spoofed BUs to both Cn and Mn and insert itself to the middle of all connections between them (man-in-the-middle attack). Consequently, the attacker is able to see and modify the packets sent between Cn and Mn. The attacks are possible if the target host or its correspondent supports Route Optimization and the attacker knows their IP addresses. Figure 3 shows the attack Da Attacker Mn Data Flow before attack by d ifie od er m ck ta atta Attacker redirect packets to itself Cn Figure 3: Against Secrecy and Integrity Attack Attacker redirect packets to mobile node previous location Mn Cn Data Flow before attack Figure 4: Replay Attack In a related attack, the attacker blocks binding updates from the mobile at its new location, e.g. by jamming the radio link or by mounting a flooding attack, and takes over its connections at the old location. The attacker will be able to capture the packets sent to the mobile and to impersonate the mobile until the correspondent's Binding Cache entry expires. Both of the above attacks require the attacker to be on the same local network with the mobile, where it can relatively easily observe packets and block them even if the mobile does not move to a new location. 2.3.3 Amplification or Reflection Attack In this attack, attackers sometimes try to hide the source of a packet by reflecting the traffic from other nodes [2]. Attacker send Cn packet ask him to send many packets to Mn Attacker n Si gl e Strong encryption and integrity protection can prevent all the attacks against data secrecy and integrity. When the data is cryptographically protected, spoofed BUs can result in denial of service but not in disclosure or corruption of sensitive data beyond revealing the existence of the traffic flows. Ingress filtering, on the other hand, does not help because the attacker is using its own address as the CoA and is not spoofing source IP addresses. Attacker Mobile node previous location pa ck Any protocol for authenticating BUs will have to consider replay attacks [2]. That is, an attacker may be able to replay recent authenticated BUs to the correspondent and, that way, direct packets to the mobile host's previous location. Like spoofed BUs, this can be used both for capturing packets and for DoS. The attacker can capture the packets and impersonate the mobile node if it reserves the mobile's previous address after the mobile has moved away and then replays the previous BU to redirect packets back to the previous location. The replays are a concern if a timestamps are used for checking the freshness of BUs and the mobile is moving so frequently that it sends the next BU before the timestamp in the previous BU has expired. Sequence numbers in authenticated BUs usually prevent the attack. The authentication protocol needs to be carefully designed to avoid more complex replay attacks. Figure 4 shows the attack. et 2.3.2 Replaying and Blocking Binding Updates Attack Mn Many packets Cn Figure 5: Amplification or Reflection Attack That is, instead of sending a flood of packets directly to the target, the attacker sends data to other nodes and tricks them into sending the same number, or more, packets to the target. Figure 5 shows the attack. Reflection can hide the attacker's address even when ingress filtering prevents source address spoofing. Reflection is particularly dangerous if the packets can be reflected multiple times, if they can be sent into a looping path, or if the nodes can be tricked into sending many more packets than they receive from the attacker. Such features can be used to amplify the amount of attack traffic by a significant factor. When designing protocols, one should avoid creating services that can be used for reflection and amplification attacks. 2.3.4 Bidding Down Attack This attack is different from other above attacks [7], whereby the above attacks can be applied when the BU is not authenticated or using RR, while this one can be applied when strong authentication required and Return Routability (RR) exist as default mechanism for authentication, the attacker force the two hosts or bidding them down from using strong security to use weak security like RR. Figure 6 shows the attack. Attacker bidding down from strong security to weak security Attacker Strong security Mn Cn Weak security (RR as default) Figure 6: Bidding Down Attack 3. ROPOSED AUTHENTICATION METHODS In order to prevent the above attacks, the route optimization must be secure and the Binding Updates signals must be authenticated. As mentioned in section 2, IPSec and RR proposed to be used for this purpose but as also mentioned, IPSec need Internet Key Exchange (IKE), or public Key Infrastructure (PKI) to cover the entire Internet, which is clearly a formidable goal when even local infrastructures have failed to emerge at the expected rate. Therefore, it is necessary to look for alternative solutions that do not rely on such global infrastructures. In other hand RR do not need any infrastructure solutions but it still weak authentication method which the attacker can easily break the communication as explained in section 2.2. And this is why we have another proposed solutions: 3.1 Cryptographically Generated Addresses This technique provides an intermediate level of security below strong public-key authentication (IPSec) and above Return Routability (RR) [3]. The idea of this technique is to form the last 64 bits of the IP address (the interface identifier) by hashing the host's public signature key. Binding Updates can then be signed with this key. A secure one-way hash function makes it difficult for the attacker to come up with a key that matches a given address and to forge signed BUs. The attraction of this technique is that it provides public-key authentication independent of any trusted third parties, PKI, or other global infrastructure. The main weakness of the scheme is that only 62-64 bits of the IP address can be used for the hash. Thus, an attacker may be able to mount a brute force attack and find a matching signature key by trial and error. Another limitation of the cryptographically generated addresses (CGA) is that although they prevent the theft of another host's address, they do not stop the attacker from inventing new false addresses with an arbitrary routing prefix. The attacker can generate a public key and a matching IP address in any network and use it to mount bombing. While the public-key protocols (both PKI-based and CGA-based ones) provide a reasonable protection against unauthentic BUs, they are computationally intensive and therefore expose the participants to denial-of-service attacks. 3.2 Assuming a Safe Route Some proposed BU authentication protocols make the assumption that the communication between two specific hosts is safe from attackers, even though it is not cryptographically protected. For example, the Return Routability test can replace public-key authentication of the mobile if one is prepared to assume that the route from the correspondent to the mobile's Home Agent is secure. 3.3 Two Independent Routes Some BU authentication schemes have been proposed [9], where the security essentially depends on sending two pieces of the authentication data between the correspondent and the mobile or its Home Agent through two independent routes and hoping that most attackers are unable to capture both of them. This may not help as much as has perhaps been hoped. In all these protocols, a single attacker on the route between the correspondent and Home Agent can spoof BUs by pretending to be both the mobile and its Home Agent. If the attacker uses its own address as the false CoA, it can spoof packets from both the mobile and the Home Agent to the correspondent, and it can receive messages sent by the correspondent to both HoA and CoA. 3.4 Leap of Faith Another idea that has been proposed is that if the mobile sends a session key insecurely to the correspondent at the beginning of a connection, the key can be used to authenticate subsequent BUs (so called leap-of-faith authentication). This is a flawed proposition. It fails even if we assume that attacker is unlikely to capture the keys sent by authentic mobiles. First, the attacker can send its false key before the authentic mobile sends the authentic key. Second, there must be a recovery mechanism for situations where the mobile or the correspondent loses its state, and the attacker can exploit this mechanism. The leap-of-faith authentication is suitable for situations where a human user, or some other factor outside the attacker's control, at random times initiates the protocol. The party making the leap must always be the one that initiates the protocol. In such situations, it may be reasonable to argue that an attacker is unlikely to be present at the time of the unauthenticated key exchange. In BU authentication, the protocol is usually initiated by the mobile but the leap in faith should be made by the correspondent. Also, the attacker can trigger the BU protocol at any time by sending a spoofed packet from the correspondent to the mobile's HoA. 3.5 The Role of Ingress Filtering Ingress filtering is another way of limiting the number of potential attackers and their targets. Thereby preventing spoofed source IP addresses. This can help but, Firsts, ingress filtering must be applied on the attacker's local network; on the target network it makes no difference. Second, the Home Address Option and the Alternate Care-of Address sub-option can be used for similar source spoofing. While it is advisable to apply ingress filtering in as many networks as possible, one cannot rely on this to stop all attackers. 4. CURRENT RESEARCH Writing this paper convey the analysis done which was the first step in this research. The current research exploring several issues for securing Mobile IPv6 including, neighbor discovery security, and security of IPv6 routing header and home address options. Beside that we study the possibility of adding more cash tables in Cn and Mn and logical comparisons between these cash tables for the purpose of security. The security of Mipv6 will not base on Infrastructure solution. The work in progress. 5. CONCLUSIONS Mobile IPv6 specification is still unfinished and it needs some research work to get it working and to get it widely accepted. The basic functionality has been there for some time already, but the problems have been in the security of the protocol. The security has been identified to be the most crucial part of the protocol, because without a proper security solution, the protocol has no possibility to be accepted and usable at all. This paper analyzed almost the attacks that exploit the route optimization mechanism and BU signals in the current Mobile IPv6 draft and highlighted the main points that orient the current research. 6. LIMITATIONS Writing of this paper has been a challenging task because the Mobile IPv6 specification is under development at the moment and a lot of changes and new propositions are introduced all the time. Finding the most important ones of them required a lot of reading of different research papers, Internet drafts and mailing list messages, which is made available by IETF. 7. REFERENCES [1] Aura, T., Arkko, J. MIPv6 BU attacks and Defenses, draft-aura-mipv6-bu-attacks-01.txt, IETF, February 2002. [2] Greg, O., Mobile Ipv6 for Windows XP (.NET Server) and Windows CE4.0, MSRC Joint with Lancaster University And Ericsson Research. Microsoft Research @ Lancaster UK [3] Greg, O. and Michael, R. Childproof Authentication for MIPv6 (CAM). ACM Computer Communication Review, 31 (2), April 2001. [4] Johnson, D., Perkins, C. Arkko, J. Mobility Support in IPv6, draft-ietf- mobileip-ipv6-18, IETF, June 2002. [5] Kent, S. and Atiknson, R. IP Encapsulation Security Payload (ESP), IETF, RFC 2406 November 1998. [6] Kent, S. and Atiknson, R. IP Authentication Header (AH), IETF, RFC 2402 November 1998. [7] Montenegro, G. and Nikander, P. Protecting against Bidding Down Attacks. Draft-montenegro-mipv6secbit-method-00.txt, IETF, April 2002. [8] Narten, T., Nordmark, E., and Simpon, W. Neighbor Discovery for IP Version 6 (IPv6), IETF, RFC 1970, August 1996. [9] Nikandar, P. and Perkins, C. Binding authentication key establishment protocol for Mobile Ipv6, draftperkins-bake-01.txt, IETF Mobile IP Working Group, July 2001. [10] Perkins, C., ed. IP Mobility Support. IETF, RFC 2002, October 1996. [11] Thomson, S. and Narten, T. IPv6 Stateless Address Autoconfiguration. IETF, RFC 1971, August 1996.