Re: [tcpinc] TCP Stealth - possible interest to the WG

"Scheffenegger, Richard" <rs@netapp.com> Mon, 18 August 2014 22:08 UTC

Return-Path: <rs@netapp.com>
X-Original-To: tcpinc@ietfa.amsl.com
Delivered-To: tcpinc@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 829C51A86E4; Mon, 18 Aug 2014 15:08:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.57
X-Spam-Level:
X-Spam-Status: No, score=-7.57 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.668, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fxFNv7pjxWMI; Mon, 18 Aug 2014 15:08:37 -0700 (PDT)
Received: from mx12.netapp.com (mx12.netapp.com [216.240.18.77]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CB6D31A86DD; Mon, 18 Aug 2014 15:08:37 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="5.01,888,1400050800"; d="scan'208";a="182697367"
Received: from vmwexceht02-prd.hq.netapp.com ([10.106.76.240]) by mx12-out.netapp.com with ESMTP; 18 Aug 2014 15:08:27 -0700
Received: from HIOEXCMBX08-PRD.hq.netapp.com (10.122.105.41) by vmwexceht02-prd.hq.netapp.com (10.106.76.240) with Microsoft SMTP Server (TLS) id 14.3.123.3; Mon, 18 Aug 2014 15:07:32 -0700
Received: from HIOEXCMBX05-PRD.hq.netapp.com (10.122.105.38) by hioexcmbx08-prd.hq.netapp.com (10.122.105.41) with Microsoft SMTP Server (TLS) id 15.0.913.22; Mon, 18 Aug 2014 15:07:31 -0700
Received: from HIOEXCMBX05-PRD.hq.netapp.com ([fe80::f0a5:80a1:86de:fa66]) by hioexcmbx05-prd.hq.netapp.com ([fe80::f0a5:80a1:86de:fa66%21]) with mapi id 15.00.0913.011; Mon, 18 Aug 2014 15:07:31 -0700
From: "Scheffenegger, Richard" <rs@netapp.com>
To: "alfiej@fastmail.fm" <alfiej@fastmail.fm>, Jacob Appelbaum <jacob@appelbaum.net>
Thread-Topic: [tcpinc] TCP Stealth - possible interest to the WG
Thread-Index: Ac+448Fsl9mI8tJfQO6l37mQPpygtgCOd38AABJQWoAADckrIA==
Date: Mon, 18 Aug 2014 22:07:31 +0000
Message-ID: <8c5f6a1e9f2340e48e25dd151406b7d3@hioexcmbx05-prd.hq.netapp.com>
References: <ecdbe694b6964c159f64b1d3311c8cc6@hioexcmbx02-prd.hq.netapp.com> <CAFggDF2jhQPz0Eez=AU9M-k862wD_=VSyVpXtRAjT4zC6H4tgA@mail.gmail.com> <1408397675.299896.154112109.6F69043F@webmail.messagingengine.com>
In-Reply-To: <1408397675.299896.154112109.6F69043F@webmail.messagingengine.com>
Accept-Language: de-AT, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.120.60.35]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpinc/F7FCtxx9XGX_kOzRIGkG81VIAPM
Cc: Wesley Eddy <wes@mti-systems.com>, Christian Grothoff <christian@grothoff.org>, "tcpinc@ietf.org" <tcpinc@ietf.org>, "tcpm (tcpm@ietf.org)" <tcpm@ietf.org>, Joe Touch <touch@isi.edu>
Subject: Re: [tcpinc] TCP Stealth - possible interest to the WG
X-BeenThere: tcpinc@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discussion list for adding encryption to TCP." <tcpinc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpinc>, <mailto:tcpinc-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpinc/>
List-Post: <mailto:tcpinc@ietf.org>
List-Help: <mailto:tcpinc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpinc>, <mailto:tcpinc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Aug 2014 22:08:41 -0000

Hi Alfie,

my concern is with the use of a static ISN for each 4-tuple; this significantly increases the chance of a  collision between sessions (ie. when the sender terminates a sluggish earlier session, some segments of that last session will very likely be in-window for a session that was started a short time later).

(I understand that an application could use some crude time-based salt, to address this concern. But that would mean application/socket level modifications; and additional failure modes - like Kerberos has with the 5 min time window).

Of course, the ephemeral source ports (the remaining 3 fields of the 4 tuple will again be static for a given service) will provide some protection, as each different source port will have a different ISN.


OTOH, detection of this knocking scheme will be rather easy by passive means - currently the probability to two identical ISNs between two different sessions for the same 4-tuple (IP + ports) will be around 2^-32; with this, it is 1; and the number of ephemeral ports is limited so observing a protected web server will be rather straight forwards.

Which probably will flag such a service as a primary target for those adversaries this scheme is supposed to protect against.

Or am I missing something?



Richard Scheffenegger


> -----Original Message-----
> From: Alfie John [mailto:alfiej@fastmail.fm]
> Sent: Montag, 18. August 2014 23:35
> To: Jacob Appelbaum; Scheffenegger, Richard
> Cc: Wesley Eddy; Christian Grothoff; tcpinc@ietf.org; tcpm
> (tcpm@ietf.org); Joe Touch
> Subject: Re: [tcpinc] TCP Stealth - possible interest to the WG
> 
> On Mon, Aug 18, 2014, at 02:50 PM, Jacob Appelbaum wrote:
> > On 8/15/14, Scheffenegger, Richard <rs@netapp.com> wrote:
> > > I just learned about an individual submission, which is probably of
> > > interest not only to the members of these two WGs;
> > >
> > > http://tools.ietf.org/html/draft-kirsch-ietf-tcp-stealth-00
> >
> > > There seem to be at least two or three major issues that compromise
> > > either the working and stability of TCP, or work against the
> > > intended "stealthieness" of this modification (making it easy for an
> > > attacker to identify such sessions, provided he is able to actively
> > > interfere with segments in transit (ie. cause certain segments to be
> > > dropped).
> >
> > Could you expand on these thoughts a bit?
> >
> > > Nevertheless, it might be beneficial to discuss the generic idea in
> > > a wider forum, among brighter minds than me.
> 
> Let's look at Richard's concerns:
> 
> > compromise either the working and stability of TCP
> 
> This RFC only modifies the calculation of the SQN number in order to get
> port-knockable services. Every other host between just continues to see
> the SQN as a random number as it did before. Unless between hops were to
> modify the packet's timestamps, this will be completely backwards
> compatible.
> 
> > work against the intended "stealthieness" of this modification (making
> > it easy for an attacker to identify such sessions, provided he is able
> > to actively interfere with segments in transit
> 
> This is not about hiding from big brother who is listening on the wire.
> This is about minimising your visible footprint to the wider internet.
> It's on par to your server's firewall dropping all incoming connections
> unless you have the shared secret. But with this RFC, you don't need to
> know the source IP address before hand.
> 
> I think it's a great idea. Nice work.
> 
> Alfie
> 
> --
>   Alfie John
>   alfiej@fastmail.fm