Re: [dns-privacy] Adam Roach's No Objection on draft-ietf-dprive-bcp-op-08: (with COMMENT)

Adam Roach <adam@nostrum.com> Thu, 06 February 2020 15:08 UTC

Return-Path: <adam@nostrum.com>
X-Original-To: dns-privacy@ietfa.amsl.com
Delivered-To: dns-privacy@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 278B91200B6; Thu, 6 Feb 2020 07:08:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.404
X-Spam-Level:
X-Spam-Status: No, score=-1.404 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, KHOP_HELO_FCRDNS=0.275, T_SPF_HELO_PERMERROR=0.01, T_SPF_PERMERROR=0.01] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (1024-bit key) reason="fail (message has been altered)" header.d=nostrum.com
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 ueHs7MTQDemU; Thu, 6 Feb 2020 07:08:47 -0800 (PST)
Received: from nostrum.com (raven-v6.nostrum.com [IPv6:2001:470:d:1130::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1757D12006D; Thu, 6 Feb 2020 07:08:47 -0800 (PST)
Received: from Zephyrus.local (99-152-146-228.lightspeed.dllstx.sbcglobal.net [99.152.146.228]) (authenticated bits=0) by nostrum.com (8.15.2/8.15.2) with ESMTPSA id 016F8gd3071783 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Thu, 6 Feb 2020 09:08:43 -0600 (CST) (envelope-from adam@nostrum.com)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=nostrum.com; s=default; t=1581001725; bh=H5fuYI+JmGn3hh5FsoWun4QORY+iGPTGMkE5W9a0TUI=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=PG+OEwwAf/JOvnzSW/4r2Qa0egOCaQc+qsHflQJpW7+eMyVevddJM4XQ1IyOs1os1 yghLBwRSIFQdi4+JN6fg5qj2vM4iGLfH1AUDI4dGnkjWLikSh+ClD7Rf6FJ740n9Sn I31bwJH/qiqbw24Z+hhdoxiUa3UrxyLaZVgEQoYk=
X-Authentication-Warning: raven.nostrum.com: Host 99-152-146-228.lightspeed.dllstx.sbcglobal.net [99.152.146.228] claimed to be Zephyrus.local
To: Brian Dickson <brian.peter.dickson@gmail.com>
Cc: The IESG <iesg@ietf.org>, Tim Wicinski <tjw.ietf@gmail.com>, draft-ietf-dprive-bcp-op@ietf.org, dns-privacy@ietf.org, dprive-chairs@ietf.org
References: <158096547226.30514.2103023305468871108.idtracker@ietfa.amsl.com> <CAH1iCiqLwP8UOJe_vWQAr7iu8j7LF2Y4+386XNimM+3wJ-2RzQ@mail.gmail.com>
From: Adam Roach <adam@nostrum.com>
Message-ID: <9fe99917-347b-ab79-7a9c-3e8da67a5246@nostrum.com>
Date: Thu, 06 Feb 2020 09:08:37 -0600
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
In-Reply-To: <CAH1iCiqLwP8UOJe_vWQAr7iu8j7LF2Y4+386XNimM+3wJ-2RzQ@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------02F85A32FA9107D884899915"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/dns-privacy/Wn3NY1Yqbnk3-Xf568n58Y2ALPA>
Subject: Re: [dns-privacy] Adam Roach's No Objection on draft-ietf-dprive-bcp-op-08: (with COMMENT)
X-BeenThere: dns-privacy@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <dns-privacy.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dns-privacy>, <mailto:dns-privacy-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dns-privacy/>
List-Post: <mailto:dns-privacy@ietf.org>
List-Help: <mailto:dns-privacy-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dns-privacy>, <mailto:dns-privacy-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 06 Feb 2020 15:08:48 -0000

On 2/5/20 23:55, Brian Dickson wrote:
> HTTPS certificate validation is based on the assumption that the 
> client connects to the actual IP of the server (aka "the real server").
> The real server presents the certificate, and the TLS handshake proves 
> that the server possesses the private key of the certificate.
>
> Loss of control of the private key is an issue ONLY if an attacker is 
> able to direct a client to an IP under control of the attacker.
>
> The DNS component of WebPKI certificate validation is critical; it 
> goes "FQDN" -> DNS -> IP -> (TLS connection with SNI, get cert, 
> validate cert via handshake).
> You can't connect to some random IP that hands you the cert you ask 
> for, you have to know you are contacting the legitimate web site first 
> (via the DNS to IP bits).
>
> The issue isn't actually WebPKI /mismatches/, so much as it is about 
> the non-possession of the private key for the /real/ certificate (or 
> issuance of another certificate matching the name).
>
> If an attacker is able to obtain the private key, there is no 
> difficulty in obtaining the certificate itself (indeed, the real 
> server serves it up, as required by TLS).


Sure, and I'm certain that whatever material the legitimate zone 
administrator uses to authenticate changes to the DNS zone can also be 
exfiltrated. Security relies on administrative hygiene as much as it 
does technical mechanisms.


>
> The only roadblock to an attacker using a certificate after a private 
> key is obtained, is DNS.
>

Or BGP hijacking, which is on the same order of magnitude of difficulty 
as what you posit.


> Only DNSSEC can protect against cache poisoning attacks, by which an 
> attacker can direct clients to the IP under control of the attacker, 
> and succeed in impersonating the legitimate web site, which could be 
> used to elicit personal information from unwary users.
> (Cache poisoning attacks aren't completely trivial, but they are many 
> orders of magnitude more feasible than brute strength attacks against 
> DNSSEC or WebPKI keys.)
>
> So, the argument fails because it is reduced to the claim that 
> "private keys can't be obtained by attackers" (which cannot be 
> guaranteed, clearly.)
>
> Maybe some language that explains how/why the risk exists would help 
> clarify the threat?


I don't think that's useful. All security systems can be defeated, and 
it's probably not worth going into the details of the various Achilles' 
heels of the name resolution, routing, and application protocols involved.

At a general level, the issue I am highlighting is that the cost/benefit 
analysis changes dramatically when there is already a system in place 
(flawed, as all security systems are) to protect against arbitrary 
impersonation as compared to situations when there is not, and that it 
would be more realistic for the document to accurately represent that.

For the specific example chosen, it's been made pretty clear over the 
years that at least the clients for the specific service you cite have 
no interest in incurring this additional cost. If that's the working 
group consensus, then I have no interest in over-riding it. But ignoring 
operational realities seems kind of ivory tower-ish, which feels like 
the kind of thing that undermines the general credibility of the rest of 
the document.

/a