RE: issue 34 proposal

"Stephane Beaulieu (stephane)" <[email protected]>
Newsgroups gmane.ietf.mobike
Message-ID <13E3DA8B48E17D4C96D261A36A23FCD68E3F5D@xmb-rtp-208.amer.cisco.com>
 

> 
> Stephane Beaulieu (stephane) writes:
> > > For ESP packets you could do that, but for IKE packets you need 
> > > separate path test exchange if you do that, as then you 
> cannot probe 
> > > if the path is working with IKE packet, as the probe can 
> break the 
> > > link (it would cause traffic to move to that address pair and if 
> > > that address pair was unidirectional the connection would be lost 
> > > because of that).
> > 
> > Not sure I follow your second point.
> > 
> > You're saying that the original NAT mapping was bi-directional, but 
> > after the reboot, a new NAT mapping was given but this one is 
> > uniderctional?  I admit my experience with NAT is limited, 
> but I have 
> > never seen this happen.
> > 
> 
> When the NAT mapping is lost most commonly it can only be 
> recreated from the behind of NAT. This will create 
> bi-directional mapping.
> 
> The problem with the automatic updating of the address pair 
> when receiving valid packet from the remote end is that if 
> you have working address pair A1, B1 (with NAT), and you are 
> using it. You also have another address pair A2, B1 (with or 
> without NAT) and you do not know if it works yet. So now if 
> you send IKEv2 probe packet with A2, B1 to the remote host, 
> the remote host will notice that this is valid packet for the 
> IKEv2 SA, thus it will move the traffic immediately to that 
> A2, B1 pair when receiving that packet.

OK.  So you're assuming that when we dectect a port change at the ESP
layer, then we'll send probes to all possible paths.  I was not making
this assumption.

> 
> Now if that A2, B1 path happened to be uni-directional for 
> some reason, so the reply packets B1, A2 will not get through 
> then we managed to cause connection problem while we still 
> had completely valid and working address pair A1, B1. Even 
> when we later retransmit that packet to A1, B1 address pair, 
> the other peer now notices as this retransmission, and 
> replays its old answer back. It might not update the mapping 
> at that point (it is not clear from the ikev2 draft wheather 
> replays should be consider "valid authenticated packet").
> 
> If we disable the IKEv2 automatic updating of the remote 
> peers address, then we can send that probe packet, and it 
> will not cause any connection problems. After a while when we 
> notice that we are not getting reply back, we retransmit that 
> using other addresses, i.e. A1, B1, and other end would then 
> reply to us to B1, A1 address and the exchange is finished.
> 
> I would actually say that replay is not "valid authenticated packet"
> as it would be too easy for the attacker to grab one "valid 
> authenticated packet" from the link, modify the IP headers 
> and the replay that every second, to make sure the traffic is 
> all the time redirected to the host he wants to attack. 

This is a good point.  An attacker could fool us into changing our
database just by modifying our outer headers.  I hadn't thought of this.
I think what you're saying is that the only way to prevent this, is to
do a probe to 'confirm' the peer's new address, but that doing so might
cause you to choose a bad path.

Could you not do a probe (or some other exchange) JUST to the new
address to verify that the peer is indeed reacheable on this new
IP/port?.  Of course you'd have to rate-limit this to avoid someone
forcing you to build/send endless probes.

> 
> > I have however seen NAT mappings get lost many, many times.
> 
> Was the problem there NAT rebootting, or too long keepalives 
> or something else? 

I've seen it all :)  

> 
> > BTW, have you seen the number of home/SOHO router/NAT boxes you can 
> > buy today for about $5.  Reliability is not the first word 
> that comes 
> > to mind.
> 
> True, but in that case I would assume they know who to 
> blame... :-) Still most of those small NAT boxes have enough 
> memory and so small amount of traffic that they do not have 
> really reason to remove NAT mappings very fast. And I do not 
> think they crash that often. Again if they crash that will 
> cause long delay anyways.

Who are you going to call though?  The guy who sold you a $10,000 box
with a support contract, or some 1-800- support number which is now
disconnected. ;)

> 
> > I'm willing to implement it both ways because the 
> cost/complexity is 
> > fairly low, and I can see how doing it via ESP detection 
> only might be 
> > more difficult for some vendors.
> 
> So perhaps we should say you MUST NOT do automatic update 
> with IKEv2 packets (breaks the probing), but you MAY do it 
> for ESP packets? It will add the another module causing 
> address updates, and you need to make sure the policy for the 
> MOBIKE and that automatic update module are same.
> 
> I really like the explicit address update because it will put 
> the all policy decision about address changes in exactly one 
> place, i.e in the MOBIKE module.

It would be ideal, but I would also like to be able to recover from
badly-behaving NAT boxes, if we can with a relatively low cost.

> --
> [email protected]
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.