Re: Comments on draft-ietf-httpbis-http2-secondary-certs-04

Ryan Sleevi <ryan-ietf@sleevi.com> Thu, 08 August 2019 22:56 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3260C12003E for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 8 Aug 2019 15:56:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.698
X-Spam-Level:
X-Spam-Status: No, score=-2.698 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.201, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, SPF_PASS=-0.001, URIBL_BLOCKED=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 329n102nAoK0 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 8 Aug 2019 15:56:24 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [IPv6:2603:400a:ffff:804:801e:34:0:38]) (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 BBC1A12002F for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 8 Aug 2019 15:56:24 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.89) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1hvrIl-0001kf-Io for ietf-http-wg-dist@listhub.w3.org; Thu, 08 Aug 2019 22:54:31 +0000
Resent-Date: Thu, 08 Aug 2019 22:54:31 +0000
Resent-Message-Id: <E1hvrIl-0001kf-Io@frink.w3.org>
Received: from mimas.w3.org ([2603:400a:ffff:804:801e:34:0:4f]) by frink.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from <ryan.sleevi@gmail.com>) id 1hvrIi-0001jq-NT for ietf-http-wg@listhub.w3.org; Thu, 08 Aug 2019 22:54:28 +0000
Received: from mail-ed1-f65.google.com ([209.85.208.65]) by mimas.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.89) (envelope-from <ryan.sleevi@gmail.com>) id 1hvrIg-0000kk-TV for ietf-http-wg@w3.org; Thu, 08 Aug 2019 22:54:28 +0000
Received: by mail-ed1-f65.google.com with SMTP id i11so29283291edq.0 for <ietf-http-wg@w3.org>; Thu, 08 Aug 2019 15:54:06 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=MxWSnm2MMRi9+6XPHc3hHNFdgzlziUYnKg+10bObzRM=; b=UH2OsM0AtNsp5bYNoONZV6ypvRH9Fp4HSOhePOhwM6FWvBCMlm3pUThz/QLdfb1QdD Q58BfQ4uvOM0McXapGe6YUdEaN2WNnoko8nM1hA5aru0EpamSglETqhGwh33YhGBIkc2 zrWZqiPOq0vHCjF3jHqiTOsDVON7WWbE1m1CMr1UmlHQa/KDrudCIE7mlXTwx+NCUktL h0urRLhl6IMfaMvkceSsNpVpxMXLd9SRULcDb5aOT0AByNA0MwjMI5ODKCn153pNuyrq uASrNaDzy9Quk2xlbvd+jml0o4nT9POq/DFu0tdrc9we60vXmOT5DOK7YRFZuPYQ3ywt OBwA==
X-Gm-Message-State: APjAAAXKqiFB4Q6zK5Nez2ePjb8SxZlvxnxv5zx+LFTbNxgGupairvdS rpoaZbokO6uIbvw/84DCj/AdGmzD
X-Google-Smtp-Source: APXvYqwuHV3Vz7dsaoDwJmoLfdM6NNyikC+WepHMfdoKA1z40OvxOq4PZTsrzSRoFte79l6cmmzzEg==
X-Received: by 2002:a17:906:304d:: with SMTP id d13mr15143049ejd.99.1565304844944; Thu, 08 Aug 2019 15:54:04 -0700 (PDT)
Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com. [209.85.128.44]) by smtp.gmail.com with ESMTPSA id u24sm15769568ejr.20.2019.08.08.15.54.04 for <ietf-http-wg@w3.org> (version=TLS1_3 cipher=AEAD-AES128-GCM-SHA256 bits=128/128); Thu, 08 Aug 2019 15:54:04 -0700 (PDT)
Received: by mail-wm1-f44.google.com with SMTP id e8so4668642wme.1 for <ietf-http-wg@w3.org>; Thu, 08 Aug 2019 15:54:04 -0700 (PDT)
X-Received: by 2002:a05:600c:2292:: with SMTP id 18mr1319558wmf.156.1565304844307; Thu, 08 Aug 2019 15:54:04 -0700 (PDT)
MIME-Version: 1.0
References: <CAN2QdAED_6C7GmyTSXqTaZHFUYm7GVRWa753WbqrJ7Uf8fwp9w@mail.gmail.com> <CAErg=HEKVcbCuP=5ROP_mh9-EFuBzXCRTChX6RHOmNim1YD-LQ@mail.gmail.com> <CAN2QdAEt2AD1QUQ=EYkN696hbMCa9dpOKJd+dxDUFxNoHTrtZQ@mail.gmail.com>
In-Reply-To: <CAN2QdAEt2AD1QUQ=EYkN696hbMCa9dpOKJd+dxDUFxNoHTrtZQ@mail.gmail.com>
From: Ryan Sleevi <ryan-ietf@sleevi.com>
Date: Thu, 8 Aug 2019 18:53:53 -0400
X-Gmail-Original-Message-ID: <CAErg=HGrbsKgrH_Xwk0PXXe1OeaVgOxBz2-F3CC4niEnbwT0Eg@mail.gmail.com>
Message-ID: <CAErg=HGrbsKgrH_Xwk0PXXe1OeaVgOxBz2-F3CC4niEnbwT0Eg@mail.gmail.com>
To: Watson Ladd <watson@cloudflare.com>
Cc: Ryan Sleevi <ryan-ietf@sleevi.com>, "ietf-http-wg@w3.org Group" <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="00000000000035d475058fa2ef28"
Received-SPF: pass client-ip=209.85.208.65; envelope-from=ryan.sleevi@gmail.com; helo=mail-ed1-f65.google.com
X-W3C-Hub-Spam-Status: No, score=-3.5
X-W3C-Hub-Spam-Report: AWL=-0.126, BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1hvrIg-0000kk-TV 8a3e7031796f7c78acb6647c24fc34be
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Comments on draft-ietf-httpbis-http2-secondary-certs-04
Archived-At: <https://www.w3.org/mid/CAErg=HGrbsKgrH_Xwk0PXXe1OeaVgOxBz2-F3CC4niEnbwT0Eg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/36955
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Thu, Aug 8, 2019 at 6:26 PM Watson Ladd <watson@cloudflare.com>; wrote:

> On Thu, Aug 8, 2019 at 8:00 AM Ryan Sleevi <ryan-ietf@sleevi.com>; wrote:
> >
> >
> >
> > On Thu, Aug 8, 2019 at 8:27 AM Watson Ladd <watson@cloudflare.com>;
> wrote:
> >>
> >> Section 6.4 seems a little strong to me: it's unlikely that $CDN will
> claim control of all origins it could claim authority over on a connection,
> but more likely that it does so for ones in subrequests, link headers etc..
> >
> >
> > From a security considerations point of view, isn't it more useful to
> describe how it potentially could be abused or misused, rather than assume
> how it's likely to be used?
> >
> > That is, is the argument that the Security Considerations should be
> guidelines for servers deploying it, rather than clients implementing it?
> The lack of in-step synchronization with DNS seems incredibly important to
> implementor's security assumptions, and thus important to call out, so I'm
> curious which bit is seen as a little strong?
>
>
> For benefit of those who  haven't read the draft, permit me to quote
> from the document:
>
> > After the owner of the domain has redirected traffic elsewhere by
> >  changing the CNAME, new connections will not arrive for that origin,
> > but connections which are properly directed to this provider for
> > other origins would continue to claim control of this origin (via
> >  ORIGIN frame and Secondary Certificates).  This is proper behavior
> >  based on the third-party provider's configuration, but would likely
>  > not be what is intended by the owner of the origin.
>
> This is not inevitable, as 'would' seems to indicate, but rather
> possible, as 'could' would indicate, and depends on what the third
> party prover (third party to whom?) has configured, which in some
> cases will depend on the customer (entirely possible it is opt-in? Who
> knows what will happen). This doesn't seem to be clearly relevant to
> HTTP clients as written, vs. 6.1 which discusses the lack of DNS
> hijacking need to exploit a stolen certificate.


Do you know of many cloud providers/CDNs that start rejecting
configurations the moment their customers point their DNS records elsewhere?

I’m unaware of a single one; certainly, unless they did so, this situation
does seem an inevitability. For example, I’m similarly unaware of cloud
providers today that both provision certificates for their customers and
actively revoke certificates when their customers point their DNS
elsewhere, which is currently required of all Subscriber Agreements with
any publicly trusted CA. Last year, research was shared to that effect,
under the name BygoneSSL, showing that it is rarely practiced.

I see the distinction with 6.1 as being the difference between malice and
ignorance, but both share security consequences that implementors - on both
sides - should be aware of. Simply highlighting the malicious case seems to
do a disservice for the far more likely case resulting in ignorance (of DNS
changes by the DNS holder) that would lead a CDN/Cloud Provider to
inappropriately advertise, on the basis that it has not yet revoked its
certificate.