Re: [dane] Behavior in the face of no answer?

Paul Wouters <paul@cypherpunks.ca> Tue, 15 May 2012 02:45 UTC

Return-Path: <paul@cypherpunks.ca>
X-Original-To: dane@ietfa.amsl.com
Delivered-To: dane@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A0B1B21F8897 for <dane@ietfa.amsl.com>; Mon, 14 May 2012 19:45:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.578
X-Spam-Level:
X-Spam-Status: No, score=-2.578 tagged_above=-999 required=5 tests=[AWL=0.021, BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KZaZUzk-n+n6 for <dane@ietfa.amsl.com>; Mon, 14 May 2012 19:45:05 -0700 (PDT)
Received: from letoams.cypherpunks.ca (bofh.nohats.ca [76.10.157.69]) by ietfa.amsl.com (Postfix) with ESMTP id 25A9421F8864 for <dane@ietf.org>; Mon, 14 May 2012 19:45:05 -0700 (PDT)
Received: by letoams.cypherpunks.ca (Postfix, from userid 500) id 7E17B853FE; Mon, 14 May 2012 22:45:02 -0400 (EDT)
Received: from localhost (localhost [127.0.0.1]) by letoams.cypherpunks.ca (Postfix) with ESMTP id 72625853FD; Mon, 14 May 2012 22:45:02 -0400 (EDT)
Date: Mon, 14 May 2012 22:45:02 -0400 (EDT)
From: Paul Wouters <paul@cypherpunks.ca>
X-X-Sender: paul@bofh.nohats.ca
To: Paul Hoffman <paul.hoffman@vpnc.org>
In-Reply-To: <643D87CD-D01E-47B8-82E5-D3F57D50C80B@vpnc.org>
Message-ID: <alpine.LFD.2.02.1205142229552.10990@bofh.nohats.ca>
References: <CABcZeBMY26xrfvAx=UsYN2XnuONZ2vPy9tNwHQALudd=yQDvgA@mail.gmail.com> <643D87CD-D01E-47B8-82E5-D3F57D50C80B@vpnc.org>
User-Agent: Alpine 2.02 (LFD 1266 2009-07-14)
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII
Cc: dane@ietf.org
Subject: Re: [dane] Behavior in the face of no answer?
X-BeenThere: dane@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: DNS-based Authentication of Named Entities <dane.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dane>, <mailto:dane-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dane>
List-Post: <mailto:dane@ietf.org>
List-Help: <mailto:dane-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dane>, <mailto:dane-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 May 2012 02:45:05 -0000

On Mon, 14 May 2012, Paul Hoffman wrote:

> An attacker who is able to divert a user to a server under his control is also
> likely to be able to block DNS requests from the user or DNS responses being
> sent to the user. Thus, in order to achieve any security benefit from
> certificate usage 0 or 1, an application that sends a request for TLSA records
> needs to get either a valid signed response containing TLSA records or
> verification that the domain is insecure or indeterminate. If a request for a
> TLSA record does not meet one of those two criteria but the application
> continues with the TLS handshake anyway, the application has gotten no benefit
> from TLSA and should not make any internal or external indication that TLSA
> was applied. If an application has any indication that TLSA is in use (such as
> through a configuration setting), that application MUST not start a TLS
> connection or abort a TLS handshake if either of the two criteria above are
> not met.
>
> Livable? Better specific suggestions?

Livable. I am a little confused about "signed TLSA", "insecure" or
"indeterminate" together with "the two criteria". Did you mean
"signed TLSA" and "insecure" as one criteria ("dnssec worked") or did
you mean "indicator" and "indeterminate" as the two criteria? How about:

    an application that sends a request for TLSA records will get
    either a valid signed response (containing TLSA records or not)
    or reaches an indeterminate state (for instance by lack of DNS
    replies)

    [...]

    that application MUST not start a TLS connection or abort a TLS handshake
    if TLSA processing is configured and the result was indeterminate.


I'm also not sure why the statement is limited to certficate usage 0 and
1. Is that because you assume no PKIX alternatives are available and
thus it always has to abort for insecure/indeterminate?

Paul