Re: [websec] Forwarded review of draft-williams-websec-session-continue-prob-00

Nico Williams <> Thu, 17 January 2013 16:18 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 9058721F8686 for <>; Thu, 17 Jan 2013 08:18:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -3.823
X-Spam-Status: No, score=-3.823 tagged_above=-999 required=5 tests=[AWL=-1.846, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Mn+Bs42AIiaH for <>; Thu, 17 Jan 2013 08:18:18 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id CC5E821F8667 for <>; Thu, 17 Jan 2013 08:18:18 -0800 (PST)
Received: from (localhost []) by (Postfix) with ESMTP id 14EE367C072 for <>; Thu, 17 Jan 2013 08:18:18 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed;; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:content-type;; bh=W9YOD6EhDF22i8jbmGT9Wp6 MOZ0=; b=mH7yrAHa1f7PQILc8yBu/opsTbjTM9QfpWeLbKRpw7cE8pSH6/GJst/ h1BmcgLIgSM1trm0gBpmNRvMIoZx0b6dP6mtbRGxcJqiL015oKNCyr8PGXaiU4lc JKS7FpJ3gcpwOnx16JEgJR/WipUF7owqMc2yQ9DtWUYlzAwciZ2o=
Received: from ( []) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: by (Postfix) with ESMTPSA id BBC6867C06B for <>; Thu, 17 Jan 2013 08:18:17 -0800 (PST)
Received: by with SMTP id dr13so1676323wgb.25 for <>; Thu, 17 Jan 2013 08:18:16 -0800 (PST)
MIME-Version: 1.0
X-Received: by with SMTP id et3mr9209586wib.6.1358439496562; Thu, 17 Jan 2013 08:18:16 -0800 (PST)
Received: by with HTTP; Thu, 17 Jan 2013 08:18:16 -0800 (PST)
In-Reply-To: <>
References: <> <>
Date: Thu, 17 Jan 2013 10:18:16 -0600
Message-ID: <>
From: Nico Williams <>
Content-Type: text/plain; charset=UTF-8
Subject: Re: [websec] Forwarded review of draft-williams-websec-session-continue-prob-00
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Web Application Security Minus Authentication and Transport <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 17 Jan 2013 16:18:19 -0000

On Mon, Jan 14, 2013 at 17:05, Yoav Nir <> wrote:
> I've shown this draft to a co-worker of mine (not on this list), and asked for a review. Here's some comments:
> - Overall, this is an interesting problem.

There's been quite a few proposals now to solve it all before we
identified this as worth treating as a problem separate from others:

 - draft-hammer-oauth-v2-mac-token
 - draft-hallambaker-httpintegrity
 - draft-williams-http-rest-auth
 - and several others

There's also been a number of recent mentions of this in the context
of CRIME in the HTTPbis WG list.

> - The document is missing a list of deficiencies with using Cookies

Well, for me CRIME is enough :)  But sure, I'll flesh that out a bit.
FWIW, I was under a hard deadline when i submitted the -00.

> - Section 2.1 says that TLS protects against replay. Really?  How? It doesn't have a protected counter like IPsec.

If you try to replay a handshake it won't work: the server will almost
certainly pick different nonces and, if relevant, DH keys, so the
Finished message exchange will fail.

If you try to replay a TLS record layer message... TLS will detect
that too because of its use of sequence numbers.  See RFC5246, search
for "sequence"; see section 6.2.3 in particular.  Search also for
"replay".  This is also true of DTLS.

If you can neither replay handshakes, entire connections, nor
individual records then it's got replay protection :)

> - Will the resulting protocol support a transition from authenticated session to authenticated session for purposes such as re-authenticating after a specified time, or moving from weak authentication to strong authentication for high-value transactions.

If we can make that work securely, then yes.

> Nit: HTTP is HyperText **Transfer** Protocol, not **Transport*.  This one is already fixed in Nico's repository.

There were some instances of one and some of the other.  It was just
me being sloppy as I hurried to meet a hard deadline.