[Note that I am not replying out of a desire to engage in advocacy; you should read this more as editorial summaries of discussions that have already happened here when the questions you raised were asked before.]

On 6-Jul-2007, at 10:46, Christopher Morrow wrote:

I recognize that a host could still be used as a bounce-point, if the
router ignores the header though ... no real amp effect arises, unless
you can bounce between hosts across a router link in a meaningful
manner.

No, that's not the case. If you bounce traffic between two RH0- supporting hosts, then all the routers between them need to do is process the destination address in order for the remote congestion effect to be possible.

This still is fixable with a simple filter (just like smurf or
other sorts of amplification attacks).

Right, to stop the traffic routers would need to examine the whole chain of extension headers in each packet in order to see whether there's a type-0 routing header in there, and apply suitable policy in the event that one is found.

I think we heard from people that this is a lot of work to be done (e.g. in an ASIC), and is contrary to the high-level design goal of letting routers do their thing with minimal amounts of per-packet work.

So, to summarise: your proposal is that RH0 should not be deprecated,
but that it should be made optional? I'm not convinced that I
understand how that's going to prevent the "amplification over remote
paths" problem.

I'm not convinced that the problem is dire enough to warrant
completely removing the capability that we don't even have any idea
about usage of :(

I think the inference is that we are early enough in the IPv6 deployment cycle that if someone really is relying on RH0 support in protocol stacks, there's sufficient time for a new (RH, something) to be defined and implemented to provide whatever functionality is required without posing a wider hazard.

I think the only use cases we have heard of here are (a) the experimentation documented by Biondi/Ebalard in their CanSecWest presentation, and (b) the ability to perform traceroutes from a remote source. We did not hear from anybody with the perspective that RH0 support was a critical aspect of IPv6 for them. I do not mean to imply that the lack of such an opinion means that there's nobody who holds that opinion, of course.

The pertinent questions are, I suppose, (a) whether there's a use- case which would be profoundly crippled by the deprecation of RH0 in the protocol specification, and (b) whether such a crippling would pose a greater danger to the Internet at large than the risks of RH0 which have been documented.

The current best-known answers (wrt "remote traceroute") are (a) yes, but it's functionality that the IPv4 Internet happily does without, and hence (b) no.

Note too that several widely-deployed IPv6 stacks have already taken
the approach of effectively deprecating RH0. So there's a practical
consideration that if we decide to do something different, we are
diverging from deployed practice.

which? fbsd? obsd?

The WIDE-derived stacks have done this, which in practical terms means *BSD plus Apple. Itojun may be able to clarify if you want a more exact list of implementations and the changes they have decided to make.

they took the large hammer approach for some
specious set of reasons? What about XP/MacOSX/Vista/Solaris/HP-UX ?

According to the CanSecWest slides, "Windows" (not sure which versions) "implements a conservative default behaviour (drops en- route packets)". I don't know what Solaris or HP/UX do. I see committed patches for Linux which deprecate RH0, but I'm not sufficiently in-tune with the Linux development process to know whether any of those have been formally adopted in a mainstream kernel.

Whether or not their reasons were specious seems entirely subjective. However, in the interests of avoiding that rat-hole, I think I will constrain myself to technical considerations :-)

I still go back to the 'do we want to use the really big hammer here?'
question. I don't see this as being any worse than other amplification
vectors and we haven't talked seriously about deprecating any of
those, so why this one?

Which other amplification vectors did you have in mind?


Joe


--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to