Re: [TLS] Last Call: draft-ietf-tls-rfc4366-bis (Transport Layer

Martin Rex <> Mon, 28 September 2009 21:20 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 2134D3A6850; Mon, 28 Sep 2009 14:20:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -5.875
X-Spam-Status: No, score=-5.875 tagged_above=-999 required=5 tests=[AWL=0.374, BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-4]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id UEm54Ib1xfWn; Mon, 28 Sep 2009 14:20:21 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 144C73A682C; Mon, 28 Sep 2009 14:20:20 -0700 (PDT)
Received: from by (26) with ESMTP id n8SLLchS023415 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 28 Sep 2009 23:21:38 +0200 (MEST)
From: Martin Rex <>
Message-Id: <>
To: (Simon Josefsson)
Date: Mon, 28 Sep 2009 23:21:37 +0200 (MEST)
In-Reply-To: <> from "Simon Josefsson" at Sep 23, 9 06:13:32 pm
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Scanner: Virus Scanner virwal05
X-SAP: out
Subject: Re: [TLS] Last Call: draft-ietf-tls-rfc4366-bis (Transport Layer
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: Mon, 28 Sep 2009 21:20:22 -0000

Simon Josefsson wrote:
> One attack could works like this:
> 1) Client establish an client-authenticated HTTPS session with a TLS SNI
> for and sends a HTTP GET with a Host: header for
> 2) The server TLS code authenticate and authorize the client (using the
> certificate) for use with the domain.  The server HTTP
> code serves the web page to the client.
> This system would be insecure but still compliant with RFC 4366bis as
> far as I can tell, which seems suboptimal.  Adding a requirement for
> servers to check for this attack would solve the problem.

I do not see why you consider this a vulnerability in the _server_!

This is exactly how virtual hosting works.  Virtual hosting
does NOT seperate content.  And neither will the use of TLS
provide any such content seperation.  The use or non-use of
server name indication does not make a difference.

Server Name Indication is a feature for the _client_ side, and was
invented to accomodate virtual hosting when HTTP over TLS is used
and the client performs weak server endpoint identification
that is suggested by rfc-2818, section 3.1.

If you can coerce a Browser into sending a Host: header field
different to the host that is used for server endpoint identification,
then this might possibly be considered a problem in the *client*.

When using Reverse Proxies with re-encryption, there may be
a by-design difference in the SNI as supplied by the client
(matching the hostname of the reverse proxy) and the
host header field that the backend server is going to see/use.