Re: [Acme] Well Known CA->client poll on port 80/443 in http-acme

Dirk-Willem van Gulik <dirkx@webweaving.org> Sun, 15 January 2017 14:41 UTC

Return-Path: <dirkx@webweaving.org>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5591012959D for <acme@ietfa.amsl.com>; Sun, 15 Jan 2017 06:41:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.1
X-Spam-Level:
X-Spam-Status: No, score=-5.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-3.199, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 fsFzgK_IOQZw for <acme@ietfa.amsl.com>; Sun, 15 Jan 2017 06:41:03 -0800 (PST)
Received: from weser.webweaving.org (weser.webweaving.org [148.251.234.232]) (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 21BFB129547 for <acme@ietf.org>; Sun, 15 Jan 2017 06:41:02 -0800 (PST)
Received: from beeb.leiden.webweaving.org (5ED29A06.cm-7-3c.dynamic.ziggo.nl [94.210.154.6]) (authenticated bits=0) by weser.webweaving.org (8.15.2/8.15.2) with ESMTPSA id v0FEditq045445 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Sun, 15 Jan 2017 15:39:44 +0100 (CET) (envelope-from dirkx@webweaving.org)
X-Authentication-Warning: weser.webweaving.org: Host 5ED29A06.cm-7-3c.dynamic.ziggo.nl [94.210.154.6] claimed to be beeb.leiden.webweaving.org
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
From: Dirk-Willem van Gulik <dirkx@webweaving.org>
In-Reply-To: <20170115142931.GB26429@LK-Perkele-V2.elisa-laajakaista.fi>
Date: Sun, 15 Jan 2017 15:39:43 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <65DAC165-2700-4DA5-A492-28B1F2E60541@webweaving.org>
References: <9099A621-D460-47B6-9172-0984CF3A0DC8@webweaving.org> <20170115140330.GA26429@LK-Perkele-V2.elisa-laajakaista.fi> <6AEBC4C9-FA1B-4672-AE58-15C165722B30@webweaving.org> <20170115142931.GB26429@LK-Perkele-V2.elisa-laajakaista.fi>
To: Ilari Liusvaara <ilariliusvaara@welho.com>
X-Mailer: Apple Mail (2.3259)
X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (weser.webweaving.org [148.251.234.232]); Sun, 15 Jan 2017 15:39:44 +0100 (CET)
Archived-At: <https://mailarchive.ietf.org/arch/msg/acme/SuXuKTh_u-avkxy3Vv2rC9POaKE>
Cc: acme@ietf.org
Subject: Re: [Acme] Well Known CA->client poll on port 80/443 in http-acme
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.17
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: Sun, 15 Jan 2017 14:41:05 -0000

> On 15 Jan 2017, at 15:29, Ilari Liusvaara <ilariliusvaara@welho.com> wrote:
> 
> On Sun, Jan 15, 2017 at 03:11:32PM +0100, Dirk-Willem van Gulik wrote:
>> 
>>> On 15 Jan 2017, at 15:03, Ilari Liusvaara <ilariliusvaara@welho.com> wrote:
>>> 
>>> On Sun, Jan 15, 2017 at 02:50:37PM +0100, Dirk-Willem van Gulik wrote:
>>>> ….
>>> 
>>> That's not a new version. It is pre-WG version, published about 1.5
>>> years ago.
>> 
>> Ok - so I’ll ignore git - and will take the IETF latest as leading.
> 
> There actually is another git repo (ietf-wg-acme/acme) that contains the
> WG draft work. That one is a bit newer than ietf-04 (but shouldn't have
> significant changes).
> 
>>> Currently in acme spec, the only ways to do verification without port
>>> 80 are TLS-SNI-02 (uses port 443) and DNS-01 (no connections at all,
>>> relies on DNS exclusively).
>> 
>> Ok - and is there any reason why allowing one to specify the port
>> would not be an option/bad idea ?
> 
> The list of ports public CAs can use is pretty short (5 ports in fact).
> 
>> I am looking at the typical old school unix case - i.e. apache — where
>> one starts up as root and quickly chroots/setuid()s - and where the
>> servers are commonly deployed on port > 1024 by end users.
> 
> There actually are restrictions on what ports public CAs can use for
> authentication. These are:
> 
> - 80 (HTTP)
> - 443 (HTTPS)
> - 115 (SFTP; no, not _that_ SFTP [1])
> - 25 (SMTP)
> - 22 (SSH)
> 
> These limits are exactly so that unprivileged users don't bind
> daemons to the ports and use those to obtain certificates (the
> certificates are valid for all ports).

Just to make sure I understand the reasoning:

	CA Policy prohibits an ACME CA Server from fetching the token (authenticating) from a subscriber port > 1024 (or a port not an element of [80,443,115,25,22)) because an (on common  flavours of unix) an un(der)privileged) user may run a daemon on such a port.

Correct ? Just so I understand the tradeoffs made correctly when implementing/mitigating the root-risk on the webserver side.

You would not happen to know where these are documented (I’ve scanned CPS, SA and policy but no cookie yet).

Dw