Re: [tcpm] Last Call: draft-ietf-tcpm-tcpsecure (Improving TCP's Robustness to Blind In-Window Attacks) to Proposed Standard

"Anantha Ramaiah (ananth)" <ananth@cisco.com> Mon, 01 June 2009 06:30 UTC

Return-Path: <ananth@cisco.com>
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 B14EF3A6971; Sun, 31 May 2009 23:30:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.999
X-Spam-Level:
X-Spam-Status: No, score=-4.999 tagged_above=-999 required=5 tests=[AWL=1.600, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 QaBy5K4PfsPw; Sun, 31 May 2009 23:30:05 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id 31FF23A68AD; Sun, 31 May 2009 23:30:05 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.41,283,1241395200"; d="scan'208";a="192621668"
Received: from sj-dkim-3.cisco.com ([171.71.179.195]) by sj-iport-1.cisco.com with ESMTP; 01 Jun 2009 06:30:05 +0000
Received: from sj-core-1.cisco.com (sj-core-1.cisco.com [171.71.177.237]) by sj-dkim-3.cisco.com (8.12.11/8.12.11) with ESMTP id n516U5Nu030082; Sun, 31 May 2009 23:30:05 -0700
Received: from xbh-sjc-231.amer.cisco.com (xbh-sjc-231.cisco.com [128.107.191.100]) by sj-core-1.cisco.com (8.13.8/8.13.8) with ESMTP id n516U52a008941; Mon, 1 Jun 2009 06:30:05 GMT
Received: from xmb-sjc-21c.amer.cisco.com ([171.70.151.176]) by xbh-sjc-231.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Sun, 31 May 2009 23:30:05 -0700
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Sun, 31 May 2009 23:30:04 -0700
Message-ID: <0C53DCFB700D144284A584F54711EC58075644AF@xmb-sjc-21c.amer.cisco.com>
In-Reply-To: <be6497400904162214lbc16cf1oda737cb91ae88bf7@mail.gmail.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [tcpm] Last Call: draft-ietf-tcpm-tcpsecure (Improving TCP's Robustness to Blind In-Window Attacks) to Proposed Standard
thread-index: Acm/G2g/G5uE5R9NR0iDL9KmjNDIAQjYO0rQ
References: <20090402150706.EC83D28C222@core3.amsl.com> <49E3ADA4.1090402@gont.com.ar> <0C53DCFB700D144284A584F54711EC58070763E3@xmb-sjc-21c.amer.cisco.com> <be6497400904162214lbc16cf1oda737cb91ae88bf7@mail.gmail.com>
From: "Anantha Ramaiah (ananth)" <ananth@cisco.com>
To: Fernando Gont <fernando@gont.com.ar>
X-OriginalArrivalTime: 01 Jun 2009 06:30:05.0107 (UTC) FILETIME=[668F6830:01C9E282]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=8333; t=1243837805; x=1244701805; c=relaxed/simple; s=sjdkim3002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=ananth@cisco.com; z=From:=20=22Anantha=20Ramaiah=20(ananth)=22=20<ananth@cisco .com> |Subject:=20RE=3A=20[tcpm]=20Last=20Call=3A=20draft-ietf-tc pm-tcpsecure=20(Improving=20TCP's=20Robustness=20to=20Blind= 20In-Window=20Attacks)=20to=20Proposed=20Standard |Sender:=20; bh=vA8jgp44hyslHg1Sv1U60p4jZbcihGH16Fe65L/KQ4I=; b=fO6Rc+HNLbRqea853Hwir/5mfZ5Ue92QuK7QKNVCAfj/1+1jKdDb1MtLNJ gAxt2UO8bQQtVLYwO8Af6ugQ79BxSqguSxZLhKNqCxxA+kqdWyQfhsdUJU++ B82/tpz8A6;
Authentication-Results: sj-dkim-3; header.From=ananth@cisco.com; dkim=pass ( sig from cisco.com/sjdkim3002 verified; );
Cc: tcpm@ietf.org, ietf@ietf.org
Subject: Re: [tcpm] Last Call: draft-ietf-tcpm-tcpsecure (Improving TCP's Robustness to Blind In-Window Attacks) to Proposed Standard
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: Mon, 01 Jun 2009 06:30:06 -0000

Fernando,
    I was modifying the document to update the last call comments and I
would want to make sure if we are on same page w.r.t to your comments.
Pl see inline. 

> -----Original Message-----
> From: fernando.gont.netbook.win@gmail.com 
> [mailto:fernando.gont.netbook.win@gmail.com] On Behalf Of 
> Fernando Gont
> Sent: Thursday, April 16, 2009 10:15 PM
> To: Anantha Ramaiah (ananth)
> Cc: ietf@ietf.org; tcpm@ietf.org
> Subject: Re: [tcpm] Last Call: draft-ietf-tcpm-tcpsecure 
> (Improving TCP's Robustness to Blind In-Window Attacks) to 
> Proposed Standard
> 
> On Mon, Apr 13, 2009 at 10:23 PM, Anantha Ramaiah (ananth) 
> <ananth@cisco.com> wrote:
> 
> > > * The document never mentions the fact that this document is 
> > > IPR-encumbered. As far as I recall, much of the dicussion within 
> > > tcpm with respect to the level of requirements of this document 
> > > (MAY/SHOULD/MUST, etc.) had to do with this fact. I believe the 
> > > document should include a warning mentioning that there's 
> an IPR on 
> > > the document, so that implementers can consider this 
> point in their 
> > > decision of whether to implement the described mechanisms or not.
> >
> > I am confused what to do since this is being brought up 
> very late in 
> > the game. That said, there are *many* drafts/RFC's that have IPR on 
> > them in the whole of ietf. Do all them explicitly state the 
> IPR link ? 
> > I'll leave it to the collective wisdom of the group and the 
> chairs to 
> > offer guidance on this matter.
> 
> I personally believe this should be noted in all RFCs on 
> which there's a known IPR. However, Joel Halpern mentioned 
> this is not current practice. If that's the case, I'd have no 
> problem with leaving it "as is". (FWIW, if you look at our 
> tcp-security document, we do recommend the implementation of 
> the counter-measures you propose, but just note that there's 
> an IPR, and that implementers should research how this would 
> affect them).

I think we seem to have concluded this. As per Brian Carpenter's
suggestion I have done an iprnotified = yes in my xml2rfc. I hope that
should take care of this.

<snip>

> 
> > Now the scope of this document is to improve robustness to 
> TCP esp. in 
> > cases where the TCP connection is not protected by other means like 
> > TCP MD5 or TCP AO etc., Now this point is very clear in the 
> document. 
> > That said I have no issues putting a reference to the port 
> > randomization in the document.
> 
> What I mean is that anybody that cares about this stuff 
> (FWIW, I do) would also implement port randmization, ISN 
> randomization, etc. One might argue that there's no use in

It depends on how you view this document. To me, this document is about
improving TCP's robustness on some type of scenarios. It is not intended
to be a plethora of all possible TCP attacks and mitigations.  
> 
> > > and other quite a few times in the tcpm wg list, pre and 
> post wglc, 
> > > but this comment was never addressed. It's particularly 
> curious that 
> > > port randomization is not mentioned when tsvwg is working on it 
> > > (draft-ietf-tsvwg-port-randomization).
> >
> > Yes, you did raise this issue last time, but I did defer it 
> to the WG 
> > and did not receive any response, so I simply left it at that.
> 
> IIRC, both Joe and me had agreed on this one (yeah, we did :-) ).

Like I said earlier, I have no issues putting a reference to port
randomization document. Can you suggest a right place for this?
> 
> 
> 
> > > * Among the factors that determine how easy these attacks be 
> > > exploited is the window size. This document should 
> provide, at the 
> > > very least, pointers with advice on what to do with the 
> tcp window. 
> > > While quickly skimming through RFC 4953, it
> >
> > It does mentions about the window size relationship, For example in 
> > the beginning sections of the document we briefly mention 
> the window 
> > size and the # of packets that is required to generate a 
> successful attack.
> 
> What I mean is: you should not use windows that are larger 
> than necessary. Using larger windows than necessary doesn't 
> come for free (e.g., it increases the chances of an attacker 
> of successfully performing these attacks).

Provide advice on window sizes is deemed beyond the scope of this
document, IMO.

> 
> 
> > > * Yet another factor is TCP ISN randomization. At the very least, 
> > > this document could/should a pointer to RFC 1948. We do offer a 
> > > lengthy discussion of this and other issues in 
> > > draft-gont-tcp-security and 
> > > http://www.cpni.gov.uk/Docs/tn-03-09-security-assessment-TCP.pdf
> >
> > Why should it talk about ISN randomization since ISN 
> randomization, is 
> > somewhat orthogonal to the type of attack here, it is not 
> even one of 
> > the attack vector.
> 
> If I can predict the ISN, I don't have to guess it. 
> Therefore, it's easier to successfully perform the attack.

Well, predicting ISN helps, but it really depends on how much volume of
data that got exchanged and the current sliding window snapshot (snduna
-- sndnxt) which really determines the acceptability of a segment.

> 
> 
> 
> > > * The counter-measure of for the SYN-based reset attack may have 
> > > missed a common heuristics for the handling of SYN segments. See 
> > > pages 86 and
> > > 87 of the UK CPNI paper on TCP security. FWIW, we argue that the 
> > > processing of SYN segments proposed in [Ramaiah et al, 
> 2008] should 
> > > apply only for connections in any of the synchronized 
> states other 
> > > than the TIME-WAIT state.
> >
> > We just followed RFC 793 as the base and the changes are made w.r.t 
> > that. TIME-WAIT may be an exception but doesn't RFC 793 already has 
> > that language correct?
> 
> Well, the timestamps was published *after* RFC 793. So RFC 
> imsply doesn't address this, because timestamps didn't exist 
> at the time.

Why are you bringing in timestamps, the huerisitic suggested by RFC 1122
applies *without* timestamps in place.

Just to be clear : The current mitigation *does* not preclude any host
to have the TIME-WAIT hueristic suggested as a MAY condition in RFC
1122. The scope of the document is to only change the language w.r.t
793.

That said, I'll leave it to the collective wisdom of the WG to comment
on this, if there is a strong consensus I don't issues to add some text.

> 
> 
> 
> > > * When it comes to TCP-based blind-connection reset 
> attacks, there's 
> > > a much more trivial -- yet not discussed before? -- 
> alternative. See 
> > > Section 11.1.3 and Section 11.1.4 in 
> draft-gont-tcp-security and the 
> > > CPNI paper 
> > > 
> (http://www.cpni.gov.uk/Docs/tn-03-09-security-assessment-TCP.pdf).
> > > These variants should, at the very least, be mentioned 
> and a pointer 
> > > provided to them as, at least in theory, are much easier 
> to exploit.
> >
> > Those sounds like some new proposals (security and precedence) 
> > different stacks would have taken different measures to 
> address this issue.
> > Anyways this is something new and hence needs more discussion and 
> > evaluation. Has these ideas been submitted in a draft to 
> TCPM? (your 
> > recent BCP document tcp-security, covers it ?)
> 
> Yes, the tcp-security I-D covers it. This stuff came as a 
> surprise while assessing RFC 793. One would expect that these 
> attacks don't work in practice--- but you never know. 
> However, IETF-wise they do...
> therefore I think it should be mentioned as another potential 
> connection-reset attack vector (*much* easier, as you don't 
> even have to guess the sequence number)

Like I said this document has been only taking about the 3 attacks from
the beginning when this document was out (5 years), I see no point in
delaying this document any further by adding new attacks without the
consensus of the WG.

Thanks,
-Anantha