Re: [TLS] SCSV vs RI when both specified. Was: Updated draft

Steve Dispensa <> Tue, 12 January 2010 15:42 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id D36473A67B7 for <>; Tue, 12 Jan 2010 07:42:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -5.359
X-Spam-Status: No, score=-5.359 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, SARE_LWSHORTT=1.24]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 3RzU1NaYAX+O for <>; Tue, 12 Jan 2010 07:42:37 -0800 (PST)
Received: from ( []) by (Postfix) with SMTP id EB27F3A680F for <>; Tue, 12 Jan 2010 07:42:36 -0800 (PST)
Received: from source ([]) by ([]) with SMTP ID DSNKS0yYatRO2OcdqVpGxeoRP/; Tue, 12 Jan 2010 07:42:35 PST
Received: from sevil-2k3-r2-1.sbs2.local ([] RDNS failed) by with Microsoft SMTPSVC(6.0.3790.3959); Tue, 12 Jan 2010 09:39:48 -0600
References: <> <>
In-Reply-To: <>
Mime-Version: 1.0 (Apple Message framework v1076)
Content-Type: text/plain; charset="us-ascii"; format="flowed"; delsp="yes"
Message-Id: <>
Content-Transfer-Encoding: 7bit
From: Steve Dispensa <>
Date: Tue, 12 Jan 2010 09:42:31 -0600
To: Marsh Ray <>
X-Mailer: Apple Mail (2.1076)
X-OriginalArrivalTime: 12 Jan 2010 15:39:48.0438 (UTC) FILETIME=[791A0F60:01CA939D]
Cc: "Kemp David P." <>,
Subject: Re: [TLS] SCSV vs RI when both specified. Was: Updated draft
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 12 Jan 2010 15:42:38 -0000

On Jan 12, 2010, at 9:17 AM, Marsh Ray wrote:

> Martin Rex wrote:
>> There is absolutely _NO_ known security problem and no  
>> vulnerability for
>> a server to accept an initial handshake with the existing SSLv3,  
>> TLSv1.0,
>> TLSv1.1 or TLSv1.2 protocol, even when the ClientHello handshake
>> message does neither contain SCSV nor an empty extension RI.
> Baloney!
>> The possibility for an "attack" where an old client's renegotiation
>> handshake is proxied into the initial handshake of a server is of
>> no concern to the server.
> TLS is a network data security protocol. Both parties have an interest
> in the security of the connection.
> If a client has the attacker's data in his input buffer, then a
> legitimate server's handshake provides a certificate which the client
> interprets as authenticating the previous data, the attacker has  
> stolen
> the servers credentials!

FWIW, I believed as Martin did in the early days while we were trying  
to work out the implications of the attack, but I've come to believe  
that Marsh is right - letting a client get data into his input buffer  
that is subsequently authenticated by a legitimate server is obviously  
a bad thing, and there's enough vagueness in real implementations (and  
complete silence in documentation) that I would be shocked if someone  
weren't vulnerable to this attack.

Now, of course, it's a client attack at that point, not a server  
attack, so one might reasonably wonder whether it's the server's  
responsibility to defend against it. (A patched client that indicates  
support for safe renegotiation to a server that also supports it will  
defeat this attack, without the server doing anything special.)

Still, I think you can make an argument about total Internet security  
that says that servers shouldn't negotiate with unpatched clients.  
That obviously involves a giant trade-off in the short term, but don't  
be caught thinking that there is no security impact to agreeing to  
negotiate (as opposed to re-negotiate) with an unpatched client.