Subject: [mobile-ip] closing issue 10 (esp vs ah)

From: Jari Arkko <[email-masked]>
Date: Fri, 28 Jun 2002 00:19:21 +0300

I've been thinking about this issue and I have a proposal
that I hope can close this issue.

There's been a debate whether ESP or AH should be used,
particularly with the knowledge that some folks would like
to deprecate AH or at least make it optional in the IPsec WG.

I'd note first that currently BOTH protocols are mandatory
for all IPv6 nodes. With this, I'd like to propose that we
allow either one to be used. (This will allow IPsec folks to
deprecate AH as they see fit. And due to the existing implementation
requirements for IPv6, this does not add the burden for MIPv6
implementations.)

In order for both AH and ESP to be a real choice, ESP needs to work
as well as AH in this context. There's been another discussion about
the need for a home address field in the BU packet if ESP is used.
This was seen earlier as necessary since the HAO is not covered by
ESP, which would allow it to be modified.

I'd like claim that such field is in fact not necessary. Here's
why:

1. In order for you to be able to use IPsec for multiple MNs,
    you have to set the SPD entries so that one SA can only be
    used with a particular source address. Otherwise, one
    MN could use its SA to transport a BU for another MN.

2. If you have such SPD entries, then the attacker could indeed
    modify the packet in flight, and it would still pass the MAC
    checks. However, no modification would pass the SPD check, so
    the attacker would not get anywhere.

3. If someone else tries to send a BU with my MN's HAO, he can't
    forge the MAC for my SA. Again, the attacker doesn't get anywhere.

In conclusion, I'd like to allow both AH and ESP, and I'd like to
remove the HoA field from the BU.

Jari

---

From: Vijay Devarapalli <[email-masked]>
Date: Thu, 27 Jun 2002 14:55:37 -0700

> remove the HoA field from the BU.

Agree!

Vijay

---

From: Michael Thomas <[email-masked]>
Date: Thu, 27 Jun 2002 15:27:52 -0700 (PDT)

>     MN could use its SA to transport a BU for another MN.

Jari,

I'm not sure that understand/buy this
prerequisite. I should be able to have multiple
addresses covered by a single SA/SPI, right? This
is irrespective of binding updates, and is just a
general feature of IPsec. What we clearly want to
prevent is a mobile node hijacking another node's
legitimate use of an IP address on that subnet.
But we clearly want mobile nodes to be able to use
stateless autoconf and/or rfc 3041 addresses, most
likely at the same time, and we want to allow the
MN to use mobility for those addresses if it so
desires. Thus, it seems to me that you have a way
to protect multiple addresses under a single SPI
for which it should be possible to change their
attachment point (ie, send a BU).

So, if we don't protect the HAO it would seem to
me that an attacker could mount a DoS attack with
one of your legitimate, but undesired home
addresses when you send a BU, right? If we peak
around the forbidden corner of, say, NEMO's a bit,
I think it becomes even worse, right?

Am I way off here?

	 Mike

---

From: Jari Arkko <[email-masked]>
Date: Fri, 28 Jun 2002 14:42:02 +0300

> attachment point (ie, send a BU).

Yes, but how? Or are you suggesting that the MIPv6
code would know through an API that the packet it
got was protected by a given SA or cert?

Even if we did this, how would the HA know when a
BU for an address is legal? When the given address
has never been used by any other node? But wouldn't
that imply that we store all and every addresses
and their associations to SAs in the HA for ever?
Or would the addresses be usable if no one else
has registered them? But if the HA reboots then
I could hijack everyone's address...

> addresses when you send a BU, right?

Yes.

Jari

---

From: Jari Arkko <[email-masked]>
Date: Sun, 30 Jun 2002 20:39:26 +0300

Some more thoughts on this subject...

Mike has a point in the sense that if we allow multiple valid
home addresses, if we use ESP, then the attacker could replace
one such valid address with another valid one, and no policy check
on the HA side could detect this.

On the other hand, I don't think we have any mechanism that would allow
multiple addresses to be protected by the same SA or cert but still keeping
track of which addresses are allowed.

Except perhaps just allocating the whole prefix or some
number of bits from it to the mobile node. However, this does not appear
to be a very practical approach for a number of reasons. One, if the
whole prefix is allocated to the mobile node, the home agent can only
serve one mobile node under this prefix. Two, as far as I know, X.509
does not support putting in a prefix/subnet in the subjectAltName field.

In conclusion I think it would be a useful feature, but at the moment
we don't have protocol support for such things even outside Mobile IP,
so I don't think we should include the field in MIPv6 either.

Jari