Subject: [Mip6] RR Security and DNS HA Discovery

From: "James Kempf" <[email-masked]>
Date: Mon, 14 Mar 2005 16:05:55 -0800

At IETF 62, I spoke with a couple people about whether DNS HA discovery
would impact the security of Return Routability. I'd like to start a thread
so we can discuss the issue now.

The two threats I heard were:

1) That an attacker, by being able to freely discover the HA, could thereby
launch an offpath attack on RR, even though such offpath attacks are not
possible given the RR protocol as defined in 3775.

2) That an attacker, by being able to freely discover the HA, could thereby
more easily launch an on-path attack. As is well known, RR is subject to a
"residual  attack" whereby an eavesdropper on both the MN/CN and
(unencrypted) CN/HA link can derive the Kbm and thereby forge a Binding
Update. Since, in general, launching an on-path attack within the routing
fabric is very hard (after all, conscientious ISPs do pay people to maintain
security on their routers), the most likely place for such an attack is on
the last hop link between the CN and its access router (the last hop link
between the MN and its access router is not subject to such an attack, since
the HOTI/HOT signaling is encrypted).

For 1), I don't really see how this is possible, since in order to
compromise RR, the attacker would need to obtain both parts of the Kbm. The
only way that can occur is through an on-path attack. Just knowing the HA's
address isn't going to provide any additional means to intercept
communication, or to trick the HA into sending something.

For 2), I believe the logic behind this seems to be that if the HA address
is known, the attacker can more easily determine where to look for
interceding between the CN/HA and MN/CN. But, again, I believe this is
missing the point. Just because the attacker knows the HA's address doesn't
give it any leverage on being able to insert itself into the path of
communications. The HA can be addressed from anywhere on the Internet.

Finally, note that as in the case of DoS attack (which we discussed at the
meeting), a rouge MN can easily give out the HA address to an attacker (or
act as one itself), so any threat to RR from DNS discovery would,
necessarily, translate into a general threat from any node that knows the HA
address. In other words, if we find a threat to RR from DNS discovery, we
may be in a lot deeper trouble.

Would anybody care to comment on this? Am I missing something?

            jak

_______________________________________________
Mip6 mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mip6

---

From: Wing Cheong Lau <[email-masked]>
Date: Mon, 14 Mar 2005 17:36:57 -0800

Dear James,

Thank you for initiating the thread for discussion. Please see my inlined 
responses:

>the HOTI/HOT signaling is encrypted).

My concern is not that the attacker can "freely discover the HA" but the
attacker can, by spoofing a DNS response to the MH, dictate which legitimate
HA the MN will be using. Under such situation, the attacker can pick the 
"weakest"
legitimate HA, i.e. the one for which the attacker has on-path access to 
the HA's neighborhood
(between the HA and the CN).  So, in order to pull off an MITM attack 
against the MIP6 RR process,
the attacker need to
(1) Find at least one legitimate HA amongst all the legitimate HA's that 
the attacker can gain on-path access to
the traffic between the chosen HA and the CN to intercept the unencrypted 
HOTI/HOT messages between HA and CN; AND
(2)  Also put a sniffer near the MH to intercept  the COTI/COT messages

One may argue that (1) already violates the original assumption of RR. My 
point, however, is that,
by allowing the attacker to assign any legitimate HA of its choice to the 
MN, all it need is to gain
on-path access to ONE legitimate HA's neighborhood. For instance, if ONE of 
a global service provider's HA is sitting
in a rogue country with limited and monitored Internet connectivity, all 
MN's served by this provider worldwide
can be subjected to the above attack if they do MIP6 bootstrap using 
insecure DNS.

In this sense,  dynamic HA assignment via insecure DNS
makes security more challenging because any single insecure HA neighborhood 
would jeopardize all MN's served
by the same provider. The security of MNs serving by different HA's is no 
longer compartmentalized.

Another observation is that, in the non route-optimized case, traffic is 
routed between MN and HA and between HA and CN.  By controlling/selecting 
which legitimate HA to be used by the MN, an attacker can have indirect but 
partial control on the traffic routes between the MN and the CN. This is an 
additional power given to the attacker
which is not available in a static (or secure) HA assignment case. How an 
attacker can leverage such additional
power remains to be seen...

Any thoughts ?

Regards,

Wing

---

From: Jari Arkko <[email-masked]>
Date: Tue, 15 Mar 2005 08:00:36 +0200

Its true that in DNS-based HA discovery, the attacker can act as
a MitM in the DNS transaction to force the use of the "best" HA
for its purposes, i.e., the one that it has access to.

In practise, I'm not sure this is a real concern. Or it depends on
how free you intend the HA discovery to be. If HA discovery means
selecting one of the 100 home agents that your operator has
distributed around the world, I'd trust that as much as running
with just one home agent. But if it means selecting any random
entity from the Internet... that would be bad.

A good question is if this implies something for the local,
opportunistic home agent allocation process. I'm not sure
it implies anything even there, because if this local discovery
(e.g. via insecure DHCP) can be attacked, then all your
communications within this network can be attacked with or
without Mobile IPv6. If you continue to use the home agent
when you move elsewhere, you'd still be vulnerable, though.

--Jari

---

From: "James Kempf" <[email-masked]>
Date: Tue, 15 Mar 2005 09:56:05 -0800

Wing,

> can be subjected to the above attack if they do MIP6 bootstrap using

How? In order for that to be true, the attacker would also need to be
sitting on the CN/HA and CN/MN link as well, right? That means that only MNs
in the rogue country would be subject to that attack, and, quite frankly, if
the government is bound and determined to intercept Internet traffic, there
are a lot more effective ways to do it, and these ways are, in fact, in use
today in certain countries.

> longer compartmentalized.

So in order to pull off this attack, the attacker must:

1) Be on both links between the CN/MN and CN/HA,
2) Know which link to attack prior to 3) and 4) below, so it can redirect
the MN to a particular HA,
3) Be on the link between the MN and the DNS server,
4) Be on the MN/DNS server link precisely when the MN is bootstrapping so it
can spoof the MN into picking exactly the HA it wants to attack.

This is a pretty tall order, and, IMHO, pretty unlikely statistically. Of
course, for a high value target and an attacker with lots of resources (like
co-operation from ISPs and governments) it is certainly possible. But, in
that case, bootstrapping via an encrypted TLS connection over EAP is
unlikely to be secure either, because the ISP's AAA server can be forced to
give up the TLS session key, thereby allowing the government to decrypt the
traffic and spoof the MN into whatever it wants.

And, as Jari pointed out, this same attack could be launched on DHCP
discovery, which is being used by 3GPP2.

> power remains to be seen...

Again, the attacker needs to be on multiple links, and time the attack just
right. So, again, the attack seems to be statistically unlikely IMHO,
without sufficient resources.

If the MN is really concerned about monitoring of its traffic with the CN
(that is, the traffic is high enough value), then end to end security
(IPsec, TLS) is the only real solution. And, if the MIP6 WG is really
concerned about removing all possibility of residual attack against route
optimization, we ought to be looking for solutions to route optimization
security other than return routability.

            jak

---

From: Wing Cheong Lau <[email-masked]>
Date: Tue, 15 Mar 2005 22:58:18 -0800

Dear James,

>1) Be on both links between the CN/MN and CN/HA,

(a) The CN/HA part is taken care of by the rogue country continuous 
control/monitoring
the neighborhood of the selected HA ;

(b) For the CN/MN part, I was thinking about having an attacker 
representative sitting next
to the MN user ; but on 2nd thought, if the control in (a) is available to 
the attacker, then,
there is no need to attack the RR mechanism. To the contrary, the attacker 
will be better off
by making sure RO between the MN and CN cannot occur so that  all the MN/CN 
communications
  will  be routed thru the selected HA in the rogue country, and thus 
subject to monitoring/  manipulation.
(To disable RO, the attacker can send spoofed ICMP error message when the 
MN try to initiate RO and/or
discard the HOTI/HOT messages  when they entered the selected HA 
neighborhood given (a).

>can spoof the MN into picking exactly the HA it wants to attack.
(2), (3) and (4) is not strictly necessary.
As long as the attacker can prevent, e.g. via DDOS flooding,
the legitimate DNS server from generating its proper response, all the 
attacker need is to
send a spoofed DNS reply when the MN starts to bootstrap ;
So, when does the attacker know the MN will start to bootstrap ? e.g. when 
the attacker sees
the victim gets out of an airplane and power-up his/her cell-phone again.
Or depending on the version of DNS client the victim is running, the 
attacker may get
lucky by sending unsolicited spoofed DNS responses to the client over an 
extended
period of time.

In summary, even without attacking the RR mechanism, if at least one HA of 
a provider
is sitting in an unsafe rogue country, by spoofed DNS response during 
dynamic HA assignment,
the attacker can  force MNs worldwide of the same provider to steer their 
traffic through that HA (i.e. in the harms way).

As for Jari statement:
"If HA discovery means
selecting one of the 100 home agents that your operator has
distributed around the world, I'd trust that as much as running
with just one home agent."
If I am a customer of a global provider, I will not be comfortable knowing
that my MIP6 traffic can be steered by attacker to go thru a rogue country.

I admit that it can be a tall order to pull off such an attack. However, it 
may also be a tall order for a global
provider to secure the neighborhood of ALL of its HA's spreading around the 
world.

All I want to point out is that dynamic HA assignment via insecure DNS 
poses additional risk when compared to the case  of static (or secured) HA 
assignment  during bootstrapping.

Thank you for your time and considerations again.

Regards,

Wing

---

From: "James Kempf" <[email-masked]>
Date: Wed, 16 Mar 2005 10:41:35 -0800

Wing,

> discard the HOTI/HOT messages  when they entered the selected HA

Today, there are some countries (Saudi Arabia and China come to mind) that
deploy firewalls on all incoming and outgoing connections. If something
comes by that the government doesn't like, they just drop the traffic (or
attempt to trace the IP address back to the sender so that they can find out
who is attempting to access content that they would prefer their citizens
not to see). The same technique could be used in this case even if DNS HA
discovery is not used, by dropping the HOTI/HOT to an HA behind the firewall
so that the MN can't achieve route optimization. The difference with MIP6 is
that the traffic doesn't need to originate in the country doing the
blocking, of course. But such a country could today also selectively block
transit traffic, for example from a potential adversary country or
competitor country or even from an individual if they could correlate the IP
address with an individual device, which would be similar.

So I don't see how DNS-based discovery would make the problem any worse.

> that my MIP6 traffic can be steered by attacker to go thru a rogue
country.

Then buy your mobility service from a provider in a country that doesn't
deploy these kinds of measures, if you can. If you can't, then try to get
the government to change its views so that they don't fool around like this
with traffic (note that I'm not saying this faciteously, but with full
knowledge that attempting such political action carries a certain amount of
personal risk that varies according to how repressive the government in
question happens to be).

> assignment  during bootstrapping.

I really don't think that DNS home agent discovery makes this problem any
better or worse than it currently is. Given that the problem seems to be
primarily of concern for governments, and not malicious individuals, there
is really nothing the IETF can do about this, since it is a political
problem that probably won't go away in the near future. The same problems
exist in the Internet today and with circuit switched telephony.

            jak

---

From: Alexandru Petrescu <[email-masked]>
Date: Wed, 16 Mar 2005 20:26:50 +0100

Wing Cheong Lau wrote:
> My concern is not that the attacker can "freely discover the HA" but 
> the attacker can, by spoofing a DNS response to the MH, dictate which
>  legitimate HA the MN will be using. Under such situation, the 
> attacker can pick the "weakest" legitimate HA, i.e. the one for which
>  the attacker has on-path access to the HA's neighborhood (between
> the HA and the CN).

That sounds like a tricky way for attacker to make MH believe in a
non-legitimate HA ("weakest" legitimate equals "non-legitimate", right?)
by spoofing DNS messaging.  DNSSEC may protect against this, no?

I may be off topic here, I am not familiar with DNS HA discovery, sorry.

Alex

---

From: Wing Cheong Lau <[email-masked]>
Date: Wed, 16 Mar 2005 12:04:15 -0800

>So I don't see how DNS-based discovery would make the problem any worse.

It is worse because, in the attack I mentioned, even my MN is in a "safe" 
country, talking to another CN in the
same "safe" country, the traffic can get routed to the rogue country for 
monitoring/manipulation  because the attacker
assigns my MN to use a legitimate HA within the rogue country by sending a 
spoofed DNS-HA assignment.
In contrast, with  static (or secure dynamic)  HA assignment,
traffic between MN and CN which are both outside the rogue country is 
unlikely to get routed
  thru the rogue country.

Regards,

Wing

---

From: Alexandru Petrescu <[email-masked]>
Date: Wed, 16 Mar 2005 21:01:21 +0100

Wing Cheong Lau wrote:
> However, it may also be a tall order for a global provider to secure 
> the neighborhood of ALL of its HA's spreading around the world.

But there is currently no means to spread any number of HAs around the
world and even if it existed, that would potentially obviate the need
for RO (and implicitely RR) itself?  I mean, if multiple HAs are
possible, such that MH uses the best HA closest to it and to its CN then
no need of RO at all.

> All I want to point out is that dynamic HA assignment via insecure 
> DNS poses additional risk when compared to the case  of static (or 
> secured) HA assignment  during bootstrapping.

HA assignment during bootstrapping relates to HAs on same link, I hope
I'm not wrong on this one.

Alex

---

From: Wing Cheong Lau <[email-masked]>
Date: Wed, 16 Mar 2005 12:15:18 -0800

>traffic between MN and CN which are both outside the rogue country is 

You can say this is an inherent problem of insecure DNS (because even in 
the non MIP case, the attacker can
do the same re-direction by sending a spoofed DNS reply for the IP address 
of your intended destination).
So, the right approach to mitigate such risk is to use DNSsec instead of 
the plain one.

Regards,

Wing

---

From: "James Kempf" <[email-masked]>
Date: Wed, 16 Mar 2005 13:12:31 -0800

> spoofed DNS-HA assignment.

Only if the MN has an account with a mobility service provider in the
"rogue" country. Otherwise, the rogue country can't redirect because the MN
won't use an HA in that country.

In addition, as I mentioned in my original posting, if the rogue service
provider is a country, even with a discovery method such as EAP the country
could force the ISP to give up the TLS session key and also force the ISP to
put whatever HA it wanted into the return. So this isn't exclusive to DNS
discovery.

> traffic between MN and CN which are both outside the rogue country is

That's what I meant by:

     The difference with MIP6 is that the traffic doesn't need to originate
in the country doing the blocking, of course.

And, what I meant by:

     But such a country could today also selectively block transit traffic,
for example from a potential adversary country or competitor country or even
from an individual if they could correlate the IP address with an individual
device, which would be similar.

is that even today, if there are two hosts in two countries that don't block
and the traffic transits a country that does, the transited country can use
their firewalls to disrupt or monitor the transiting traffic.

Arguably, a transited country interfering with traffic between two hosts
neither of which have an ISP account in the interfering country (i.e. what
is possible today) is even worse than cutting off a MN with a mobility
service provider account in the country (i.e. what is possible with MIPv6).

So, again, I think the problem exists today and DNS discovery won't make it
worse.

And, since we seem to be going around in circles on this topic, this will be
my last post on it.

            jak