Re: [Acme] ACME vulnerabilities in SimpleHTTP due to common webservers' default virtual host semantics

Niklas Keller <me@kelunik.com> Fri, 08 January 2016 19:43 UTC

Return-Path: <me@kelunik.com>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A174B1B2B2E for <acme@ietfa.amsl.com>; Fri, 8 Jan 2016 11:43:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.027
X-Spam-Level:
X-Spam-Status: No, score=-1.027 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, HELO_EQ_DE=0.35, HTML_MESSAGE=0.001] autolearn=no
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 lYK8CNpksgEE for <acme@ietfa.amsl.com>; Fri, 8 Jan 2016 11:43:02 -0800 (PST)
Received: from mo6-p00-ob.smtp.rzone.de (mo6-p00-ob.smtp.rzone.de [IPv6:2a01:238:20a:202:5300::11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0CCEE1AC39D for <acme@ietf.org>; Fri, 8 Jan 2016 11:43:01 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1452282178; l=5462; s=domk; d=kelunik.com; h=Content-Type:Cc:To:From:Subject:Date:References:In-Reply-To: MIME-Version; bh=PxprQVwGqTzN3Q4EwByCq2r4XHodJSETiDJ+E+gvFoA=; b=thzKqDV9+tXyrU28vU0LqqGUrBV0AR0XKsC8O7TUA5/hyksrzjDN8ZJ/+Oyu3C5KZVW naK53/9qlimvjQfxGlAbWAF61wuDfPaSJ4PrdkYHPvNp0AmK+DTLJghDLWvVygSuRtgec GiKETikkeMFKfXHolUghC2ARtG58Gpglz7Y=
X-RZG-AUTH: :IWkkfkWkbvHsXQGmRYmUo9mls2vWuiu+7SLGvomb4bl9EfHtOnA6
X-RZG-CLASS-ID: mo00
Received: from mail-wm0-f53.google.com ([74.125.82.53]) by smtp.strato.de (RZmta 37.15 AUTH) with ESMTPSA id 50534cs08JgvRyq (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (curve secp384r1 with 384 ECDH bits, eq. 7680 bits RSA)) (Client did not present a certificate) for <acme@ietf.org>; Fri, 8 Jan 2016 20:42:57 +0100 (CET)
Received: by mail-wm0-f53.google.com with SMTP id l65so146977956wmf.1 for <acme@ietf.org>; Fri, 08 Jan 2016 11:42:57 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.28.101.131 with SMTP id z125mr600799wmb.60.1452282177815; Fri, 08 Jan 2016 11:42:57 -0800 (PST)
Received: by 10.194.78.133 with HTTP; Fri, 8 Jan 2016 11:42:57 -0800 (PST)
In-Reply-To: <20160108182325.GM18430@eff.org>
References: <CANUQDCjc2pyD19pC+8F4dhommuaOtf=JpJWOYAh6He3RNK8+Xg@mail.gmail.com> <20160108172709.GA29864@al> <20160108182325.GM18430@eff.org>
Date: Fri, 08 Jan 2016 20:42:57 +0100
X-Gmail-Original-Message-ID: <CANUQDChqJeCJKY0o9DUTS9SrhwpnkUcf9VUqBGy4nt+N8YJVbA@mail.gmail.com>
Message-ID: <CANUQDChqJeCJKY0o9DUTS9SrhwpnkUcf9VUqBGy4nt+N8YJVbA@mail.gmail.com>
From: Niklas Keller <me@kelunik.com>
To: Peter Eckersley <pde@eff.org>
Content-Type: multipart/alternative; boundary="001a114af70652a27c0528d7cbd9"
Archived-At: <http://mailarchive.ietf.org/arch/msg/acme/MviFlHtpc3_D2ZolreJFlCoXOxg>
Cc: IETF ACME <acme@ietf.org>, Peter Wu <peter@lekensteyn.nl>
Subject: Re: [Acme] ACME vulnerabilities in SimpleHTTP due to common webservers' default virtual host semantics
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Automated Certificate Management Environment <acme.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/acme>, <mailto:acme-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme/>
List-Post: <mailto:acme@ietf.org>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/acme>, <mailto:acme-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Jan 2016 19:43:06 -0000

2016-01-08 19:23 GMT+01:00 Peter Eckersley <pde@eff.org>:

> On Fri, Jan 08, 2016 at 06:27:09PM +0100, Peter Wu wrote:
>
> > Peter (Eckersley), you reported this concern with the premise that it is
> > a common configuration mistake that impacts many hosting providers. Do
> > you have scans backing up that concern? Websites that are managed by a
> > single entity (i.e. not shared hosting providers) with this
> > configuration "mistake' are not a problem.
>
> I haven't spent the time to conduct a thorough scan to get numbers, but
> this type of configuration is very easy and natural to create, and manually
> examining the https:// responses of a handful of Alexa top 100K domains
> (starting in the middle of the list, not the top) showed a tremendous
> diversity of strange behaviours for domains where https:// has not been
> officially deployed.
>
> If someone wants to do a scan to try to characterise all of those
> behaviours, go for it!
>
> >
> >
> > The restriction in the specification has an unfortunate consequence:
> > sites which are only accessible over port 443/HTTPS (because other ports
> > are blocked / not forwarded in a NAT network) can no longer be
> > validated.
>
> That's not the case.  You can use the TLS-SNI-01 challenge type on those
> systems.
>
> The current language describing it in the spec is terrible and needs to
> be rewritten, but it's quite simple: add an extra :443 vhost entry to
> your server config, serving a self-signed cert created to pass the
> challenge.


Unfortunately, this requires a server configuration reload. http-01 is
still a lot easier, it doesn't require any configuration change. I think
it's best to allow http-01 over HTTPS on port 443 if port 80 is not
reachable. This should eliminate the vulnerability, but allow verifying
HTTPS-only sites with http-01.

Best Regards,
Niklas


> --
> Peter Eckersley                            pde@eff.org
> Chief Computer Scientist          Tel  +1 415 436 9333 x131
> Electronic Frontier Foundation    Fax  +1 415 436 9993
>