[quicwg/base-drafts] Stateless Reset processing must be path-bound (#1264)

Mike Bishop <notifications@github.com> Wed, 04 April 2018 21:17 UTC

Return-Path: <bounces+848413-a050-quic-issues=ietf.org@sgmail.github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 35E0212D967 for <quic-issues@ietfa.amsl.com>; Wed, 4 Apr 2018 14:17:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.01
X-Spam-Level:
X-Spam-Status: No, score=-2.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_IMAGE_ONLY_32=0.001, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
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 S4U1LR1blUi5 for <quic-issues@ietfa.amsl.com>; Wed, 4 Apr 2018 14:17:15 -0700 (PDT)
Received: from o4.sgmail.github.com (o4.sgmail.github.com [192.254.112.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6148412D871 for <quic-issues@ietf.org>; Wed, 4 Apr 2018 14:17:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com; h=from:reply-to:to:cc:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe; s=s20150108; bh=7R68oQZ5iUDAR0JMqF4rCy9uDv4=; b=fMbweRg0lF4zHK1T zeisJJafLpiBtzLD22upFwyBfUA98s6nKETivijKk8kVzC5VyZTsORJS+DGonhAX P1hYWDJ3na7J0FWQAcRpTMhuMZB7HDBx6bQ/7LH/psFLyUbvPiKUQP/5oGxASbQ4 Z+KBVpepWo16cNUATvQFozKvowE=
Received: by filter1110p1mdw1.sendgrid.net with SMTP id filter1110p1mdw1-32705-5AC540D9-3 2018-04-04 21:17:13.302161284 +0000 UTC
Received: from smtp.github.com (out-5.smtp.github.com [192.30.252.196]) by ismtpd0023p1iad2.sendgrid.net (SG) with ESMTP id rjNo8NrBRCWaiOKReV3HMQ for <quic-issues@ietf.org>; Wed, 04 Apr 2018 21:17:13.262 +0000 (UTC)
Date: Wed, 04 Apr 2018 21:17:14 +0000
From: Mike Bishop <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab6ad7b4d0600a1e5866054c23d251e757ecbaa6b792cf0000000116dd02d992a169ce128f80a4@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1264@github.com>
Subject: [quicwg/base-drafts] Stateless Reset processing must be path-bound (#1264)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5ac540d939767_51883f9fe90ecf2c19546f"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: MikeBishop
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
X-SG-EID: l64QuQ2uJCcEyUykJbxN122A6QRmEpucztpreh3Pak2T6AJMKT3kOqE1nrMhhk18ujECPOD8h2hjZ2 MmZOtADL2GlKR40bGlkLzRnCv6gW3GMzHOZV3p35C/QTGxkuny9UjMgHPLz+kVAvYRS8qwDDtiOPlP lsSJsi7xPGVFmz0f9XzZ5hE9U7TrP6VObL3YU4lsNKneq1LUwG+lwUhEwkUbeWDThBKYtnV1RqCC44 Y=
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/bHBEvpoZy9mXox7E3ODDimZdiiM>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.22
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 04 Apr 2018 21:17:17 -0000

#1259 might introduce a new potential vulnerability while closing a different one.  SR tokens are single-use -- once they're disclosed to the network, the CID is burned because now anyone on-path has the token.  But that's generally okay, because the connection will be closing anyway.

Now consider:
- Client has connection to server using CID1 on Path A
- Client probes server using CID2 on Path B
- Probe is misdirected (different server endpoint), which generates and responds with a Stateless Reset for CID2, leaking the SR token
- Attacker guesses that CID1 on Path A might be the same connection as CID2 on Path B and injects a Stateless Reset on Path B with the same token

Depending how the client processes this, the connection might be terminated by the attacker.  If the client checks the SR token against the set of CIDs which have been associated with this connection, it will find it and close this connection.  To guard against this, an implementation needs to use a CID on only one path and consider only stateless reset tokens for CIDs which have been used on the path where the SR was received within a reasonably recent time period.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/1264