Re: [tcpm] Handling of malformed options

Joe Touch <touch@ISI.EDU> Wed, 01 July 2009 18:02 UTC

Return-Path: <touch@ISI.EDU>
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 6C9383A6967 for <tcpm@core3.amsl.com>; Wed, 1 Jul 2009 11:02:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id c+R0SYXOroya for <tcpm@core3.amsl.com>; Wed, 1 Jul 2009 11:02:05 -0700 (PDT)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by core3.amsl.com (Postfix) with ESMTP id CA25228C580 for <tcpm@ietf.org>; Wed, 1 Jul 2009 10:59:29 -0700 (PDT)
Received: from [70.213.187.202] (202.sub-70-213-187.myvzw.com [70.213.187.202]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id n61HwQs8024652; Wed, 1 Jul 2009 10:58:29 -0700 (PDT)
Message-ID: <4A4BA3BF.2020402@isi.edu>
Date: Wed, 01 Jul 2009 10:58:23 -0700
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.22 (Windows/20090605)
MIME-Version: 1.0
To: Fernando Gont <fernando@gont.com.ar>
References: <C304DB494AC0C04C87C6A6E2FF5603DB2217B28763@NDJSSCC01.ndc.nasa.gov> <fc0ff13d0906241711k44de4f77u8ec825e1ea151a1e@mail.gmail.com> <4A4317ED.1040905@gont.com.ar> <4A48F60A.7020602@gmail.com> <4A49CA1A.6060702@gont.com.ar> <4A4A2A73.0@isi.edu> <4A4A5019.1080004@gont.com.ar> <4A4A5D02.2000402@isi.edu> <4A4B90F5.5060300@gont.com.ar>
In-Reply-To: <4A4B90F5.5060300@gont.com.ar>
X-Enigmail-Version: 0.95.7
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: Matt Mathis <mathis@psc.edu>, "tcpm-chairs@tools.ietf.org" <tcpm-chairs@tools.ietf.org>, tcpm Extensions WG <tcpm@ietf.org>, Matt Mathis <matt.mathis@gmail.com>
Subject: Re: [tcpm] Handling of malformed options
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 01 Jul 2009 18:02:06 -0000

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



Fernando Gont wrote:
> Hello, Joe,
> 
>>>>> This suggests that extending SACK while still using the same option type
>>>>> is not a good idea, or at least not a backwards-compatible one.
>>>> ...
>>>>
>>>> It may also suggest a bug.
>>> Where's the bug? The spec says the length field is e.g. 2. If you
>>> implement the standard, and receive an option with a length field that
>>> is different than 2, how are you supposed to process the option? If you
>>> don't know how to process it, it seems sensible to ignore the option.
>> OK, since this is supposed to be a security doc, can you explain why you
>> take a segment with a mis-formed option and ignore it, even when the
>> length - the field that tells you where the next option starts - is
>> nonsensical?
>>
>> Why don't you drop the segment or send a RST?
> 
> draft-gont-tcp-security recommends to silently drop the segment, *NOT*
> to silently ignore the option.

OK, but why not make a more general recommendation for all options in
this regard? And why does the doc not indicate that this does differ
from what is widely deployed, and discuss that issue?

Let's look at one other:

3.6.7 present Ramaiah's suggestions on RST handling, but lacks the
advice on which components were already standard (silently dropping RSTs
out of window) and the conditions under which Ramaiah's extensions are
recommended.

I continue to believe the doc needs a scrub on this point. It should be
much more clear about the difference between:

	- recommendations already required by standards

	- recommendations currently deployed but not standard,
	and the WG's position on each (recommended, recommended
	in some deployments, not recommended, or no position)

	- additional recommendations, and whether they are
	consistent with or diverge from standards, and
	whether they have been deployed or differ from
	deployments

If we are going to work with this doc as a starting point, having a
dozen people replicating that effort isn't useful.

Joe

Joe
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkpLo74ACgkQE5f5cImnZruiJACgqPImxN2+k7iSFVvwoVHPDdux
mFMAoOO9vJLrlwQVmnIdy9O5Pq/RwpRc
=YetP
-----END PGP SIGNATURE-----