Re: [DNSOP] Working Group Last Call for draft-ietf-dnsop-dnssec-validator-requirements

Vladimír Čunát <vladimir.cunat+ietf@nic.cz> Wed, 16 November 2022 20:51 UTC

Return-Path: <vladimir.cunat+ietf@nic.cz>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 78CE3C1522B0 for <dnsop@ietfa.amsl.com>; Wed, 16 Nov 2022 12:51:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.898
X-Spam-Level:
X-Spam-Status: No, score=-6.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JGZk8QvLaKpG for <dnsop@ietfa.amsl.com>; Wed, 16 Nov 2022 12:51:07 -0800 (PST)
Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 47B87C1522AF for <dnsop@ietf.org>; Wed, 16 Nov 2022 12:51:06 -0800 (PST)
Received: from [IPV6:2a02:768:2d1c:226:d01e:502:ddc6:19cc] (unknown [IPv6:2a02:768:2d1c:226:d01e:502:ddc6:19cc]) by mail.nic.cz (Postfix) with ESMTPSA id 8E6C41C11AF for <dnsop@ietf.org>; Wed, 16 Nov 2022 21:51:03 +0100 (CET)
Authentication-Results: mail.nic.cz; auth=pass smtp.auth=vladimir.cunat@nic.cz smtp.mailfrom=vladimir.cunat+ietf@nic.cz
Content-Type: multipart/alternative; boundary="------------qwNUmkmT00OOGA6XAC6PLRoJ"
Message-ID: <65d26b98-e0d6-e69b-10d4-17632451cab6@nic.cz>
Date: Wed, 16 Nov 2022 21:51:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.1
Content-Language: cs, en-US
To: dnsop@ietf.org
References: <CADyWQ+FwRaSdpSWXBDqCG9ZPNPiG4pGUx37PVtExbqVPr5ZfmA@mail.gmail.com>
From: Vladimír Čunát <vladimir.cunat+ietf@nic.cz>
In-Reply-To: <CADyWQ+FwRaSdpSWXBDqCG9ZPNPiG4pGUx37PVtExbqVPr5ZfmA@mail.gmail.com>
X-Virus-Scanned: clamav-milter 0.103.7 at mail
X-Virus-Status: Clean
X-Rspamd-Server: mail
X-Rspamd-Queue-Id: 8E6C41C11AF
X-Spamd-Result: default: False [-4.10 / 20.00]; BAYES_HAM(-5.00)[100.00%]; R_MIXED_CHARSET(1.00)[subject]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ARC_NA(0.00)[]; ASN(0.00)[asn:44489, ipnet:2a02:768::/32, country:CZ]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ZERO(0.00)[0]; NEURAL_HAM(-0.00)[-1.000]; RCPT_COUNT_ONE(0.00)[1]; FROM_HAS_DN(0.00)[]; TAGGED_FROM(0.00)[ietf]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]
X-Spamd-Bar: ----
X-Rspamd-Action: no action
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/mFEnmxEWzpYvy5RnYsj_XSKZ3Us>
Subject: Re: [DNSOP] Working Group Last Call for draft-ietf-dnsop-dnssec-validator-requirements
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop/>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Nov 2022 20:51:11 -0000

Hello.

I don't know... my opinions often differ from recommendations of this 
draft, but ultimately it's subjective to some degree.  As feedback was 
requested on IETF 115, let me highlight more significant differences in 
this e-mail, though I dislike arguing about (mostly) opinions.



Nit: the following part doesn't make sense to me, as signature validity 
period is normally way over the TTL anyway (and it's really a bug if it 
got shorter):

> Section 8.1 of [RFC4033 
> <https://www.ietf.org/archive/id/draft-ietf-dnsop-dnssec-validator-requirements-01.html#RFC4033>] 
> mention the ability by the resolver to set the upper bound of the TTL 
> to the remaining signature validity period. This would at least reduce 
> inconsistencies during regular KSK roll over.

Perhaps I'm really misunderstanding the other parts of the 
recommendation that follows afterwards.  (Also, operator RFC seems a 
weird place to define new algorithms for TTL handling.)  I thought the 
usual issues from bad rollovers aren't about records using bad (initial) 
TTL values but rather doing some steps too fast (or other mistakes).  
Though yes, reduction of TTLs will reduce duration of transient 
mistakes.  And my understanding is that the referred-to (unfinished) 
revalidation draft won't change anything during key rollovers (e.g. 
clear cached records), even though key rollovers seem to be the focus in 
this section.



> *  A DRO MUST be able to flush the cached data associated to a DNSKEY
 From practical implementation perspective, I'd rather recommend 
flushing a subtree than additionally tracking which sets got validated 
by which keys.  (Or maybe that's considered to also satisfy the 
bullet?)  It's a nit basically, but let me post it, as the rule is with 
MUST in here.  Note that the rogue DNSKEY could sign delegations or 
other DNSKEYs, thereby in both cases populating (parts of) that subtree 
with data signed by *other* DNSKEYs.



Section 11. (Cryptography Deprecation Recommendations) seems to imply 
that *validator operator* would manage the set of supported DNSSEC 
algorithms.  I don't think that would be good advice.

RFC 6975 and the associated bullet serve as a red herring here - it's 
standardized but I haven't heard of anyone using it in practice, as it's 
just more convenient on signer side to use one good algorithm than to 
somehow serve different things to different resolvers (and I'm not even 
starting on multiple layers of DNS servers/caches).  RFC 8624 is the 
(missing) reference there, but I believe it's more for the IETF to 
choose/update and for vendors to implement.  Validator operators should 
just update their SW to get future updates of that, though this can be 
expected not to change for years.  We recently saw that the set of 
supported algorithms often isn't easy to configure and we reiterated 
other down-sides, when Red Hat tried hard to avoid SHA-1.


Nit: I wouldn't recommend RFC 5011, as I think it's more trouble than 
worth in practice.  Similarly with some of (root) TA bootstrapping 
mechanisms, but this draft is vague about recommending those anyway.


--Vladimir | knot-resolver.cz