Subject: Re: NATs *ARE* evil!

From: "Steven M. Bellovin" <[email-masked]>
Date: Tue, 19 Dec 2000 09:02:21 -0500

In message <[email-masked]>, "Theodore Y. Ts'o" writes
:
>   Date: Mon, 18 Dec 2000 14:45:08 -0800 (PST)
>   From: Mike Fisk <[email-masked]>
>
>   Gateways that surreptitiously modify packets can break ANY end-to-end
>   protocol no matter what layer it's at.  Assume that we sacrifice IP
>   addresses as not necessarily end-to-end.  Fine, there are gateways that
>   need to modify your TCP ports too.  Okay, sacrifice make it so ports
>   aren't covered by e2e assumptions like IPsec.  Fine, there are gateways
>   that do ACK spoofing.  Okay, sacrifice all header data and assume that
>   only payload is e2e.  Whoops, even the payload has to be modified by some
>   gateways.  The hypothesis that you can have these gateways and have
>   any part of the packet be guaranteed to be e2e is false.
>
>   Given our inability to rule out the need for gateways that change IP
>   addresses (or other routing headers), this leads to the conclusion that
>   applications shouldn't use any header field (IP address, port, etc.) for
>   authentication.
>
>OK, in that case, we've completely thrown out the end-to-end principle,
>and completely wiped out any possibility of IPSEC.  If that's the world
>we live in, where any part of the IP header can be subject to attack by
>an intermediate attacker.... err, "service provider", then you shouldn't
>be using IPSEC.  You should be using TLS instead.
>
>It of course also means that no part of the IP header can be
>authenticated in anyway, since it's of course all subject to change by
>such gateways.

While I wouldn't go quite that far, I've been saying for years that the 
IP header doesn't need any authentication if we have IPsec.  To me, a 
host's identity is represented by its certificate (I'm speaking a bit 
loosely here); its IP address is merely the way that packets reach it.  
I could post my analysis of this again (it was originally written 
during the Stockholm IETF, in a note explaining why I thought AH was 
useless), but I don't think that this is the place for it.

		--Steve Bellovin

---

From: Francis Dupont <[email-masked]>
Date: Tue, 19 Dec 2000 16:43:32 +0100

In your previous mail you wrote:

   While I wouldn't go quite that far, I've been saying for years that the 
   IP header doesn't need any authentication if we have IPsec.

=> this is not true for IPv6 extension headers or IPv4 options.

   ... in a note explaining why I thought AH was useless

=> you can argue this for IPv4, not for IPv6 where extension headers
are really used. Many times some of us tried to remove AH, many times
we vote to keep it: this topics should be in the "oh not this again" list
of IETF and IPsec mailing lists.

Regards

[email-masked]

PS: "NATs are evil" should be in too (:-)!