Re: [secdir] Secdir review of draft-ietf-tcpm-tcp-lcd-02

Lars Eggert <> Thu, 26 August 2010 17:16 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id F0F9A3A68DA; Thu, 26 Aug 2010 10:16:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -102.884
X-Spam-Status: No, score=-102.884 tagged_above=-999 required=5 tests=[AWL=-2.144, BAYES_20=-0.74, USER_IN_WHITELIST=-100]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id tWzNQhln7FSo; Thu, 26 Aug 2010 10:16:56 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 5256A3A6ACE; Thu, 26 Aug 2010 10:16:56 -0700 (PDT)
Received: from ( []) by (Switch-3.4.3/Switch-3.4.3) with ESMTP id o7QHDEnf021025 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 26 Aug 2010 20:13:14 +0300
X-Virus-Status: Clean
X-Virus-Scanned: clamav-milter 0.96.2 at
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: multipart/signed; boundary=Apple-Mail-38--406847850; protocol="application/pkcs7-signature"; micalg=sha1
From: Lars Eggert <>
In-Reply-To: <>
Date: Thu, 26 Aug 2010 20:17:09 +0300
Message-Id: <>
References: <>
To: Catherine Meadows <>
X-Mailer: Apple Mail (2.1081)
X-Nokia-AV: Clean
Cc: "" <>, "" <>, "" <>
Subject: Re: [secdir] Secdir review of draft-ietf-tcpm-tcp-lcd-02
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Security Area Directorate <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 26 Aug 2010 17:16:59 -0000

Hi, authors,

please respond to the point Catherine raises.

(Catherine, a few comments from my side are included below.)

On 2010-8-24, at 1:28, Catherine Meadows wrote:
> I have reviewed this document as part of the security directorate's
> ongoing effort to review all IETF documents being processed by the
> IESG.  These comments were written primarily for the benefit of the
> security area directors.  Document editors and WG chairs should treat
> these comments just like any other last call comments.
> This document proposes an algorithm to make TCP more robust to long connectivity
> disruptions.  Currently TCP has no way of distinguishing disruptions due to connectivity
> loss from disruptions due to congestion.   Thus, TCP will back off when faced with connectivity
> loss, which will lead to further delays.  The proposed algorithm uses the ICMP destination unreachable
> messages as indications of a connectivity disruption, and alters the behavior of TCP accordingly.
> My impression from reading this draft is that the behavior and utility of this algorithm will depend on
> further research and experimentation.  There are a number of situations in which it will still be possible
> to confuse congestion and long connectivity disruptions that may need further exploration.  The authors of the document do a good job of pointing
> these out, but I would have liked to have seen more evidence that the solutions recommended are the optimal
> ones, and under what situations.

The goal of this mechanism is not to be optimal (TCP as a whole is not trying to be optimal). The goal is to improve things in many cases and not cause harm in realistic all cases.

>  This is especially the case for the security issues, although it is not
> limited to those.  For example, in the discussion of probing frequency in Section 5.4 the authors make a claim
> that in their belief the approach of their algorithm is preferable to others that would give higher probing
> frequency, but they need to provide more evidence to back this up.

I think it is fine for an Experimental document to state a belief and ask people to verify it with experiments. For a standards-track document, yes, we'd absolutely like to see which one is the one to pick.

> The security considerations section itself is rather sketchy, and doesn't support that authors' assertions
> that the algorithm is "considered to be secure."  The greatest security threat posed by this
> algorithm is that an attacker could exploit it to persuade a TCP sender that communication problems
> due to congestion are actually due to a connectivity problem, leading the sender to further contribute to the
> congestion.

Remember that this mechanism only makes a difference during timeout-based loss recovery, i.e., when TCP at most sends a packet or two over often many seconds. And even when it fires, it doesn't result in a flood of packets, all it results in is that a slow-start restart will be attempted earlier than without this mechanism. So the potential for harm is really low.

>  However, the authors mention only one possible attack: forging ICMP destination unreachable
> messages, which they present only as an "example" of an attack.

It's presented of an example where even if the attacked could pull it off, the mechanism is still unaffected. 

>   I would recommend a more complete
> discussion, considering each of the potential ambiguity cases discussed in the document, and discussing
> how an attacker could exploit them and how such exploitation could be prevented or mitigated.  You might
> also want to discuss the opposite problem: how an attacker could convince a sender that a connectivity
> problem is a congestion problem.  This is less serious, at least for the moment, since in the current
> situation that is exactly what happens, but it could be more of a threat further down the line if people come
> to rely more on this ability to disambiguate.

If the authors can think of any other attacks, they should absolutely include them, but since ICMPs are the only signal the mechanism reacts to, generating fake ones or suppressing real ones are pretty much the only attack angles I can think of.


> Catherine Meadows
> Naval Research Laboratory
> Code 5543
> 4555 Overlook Ave., S.W.
> Washington DC, 20375
> phone: 202-767-3490
> fax: 202-404-7942
> email:<>