Re: [DNSOP] Acceptance processing in draft-ietf-regext-dnsoperator-to-rrr-protocol-04 section 3.4

Matthew Pounsett <matt@conundrum.com> Sat, 14 April 2018 20:26 UTC

Return-Path: <matt@conundrum.com>
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 A401E124BFA for <dnsop@ietfa.amsl.com>; Sat, 14 Apr 2018 13:26:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.608
X-Spam-Level:
X-Spam-Status: No, score=-2.608 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, T_DKIMWL_WL_MED=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=conundrum-com.20150623.gappssmtp.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 H3WPbYZVcosP for <dnsop@ietfa.amsl.com>; Sat, 14 Apr 2018 13:26:21 -0700 (PDT)
Received: from mail-it0-x232.google.com (mail-it0-x232.google.com [IPv6:2607:f8b0:4001:c0b::232]) (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 A024F1250B8 for <dnsop@ietf.org>; Sat, 14 Apr 2018 13:26:21 -0700 (PDT)
Received: by mail-it0-x232.google.com with SMTP id 145-v6so1107574itf.5 for <dnsop@ietf.org>; Sat, 14 Apr 2018 13:26:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=conundrum-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Vv9BxaNkk3k9NMftpI+go/KAcQnXOI5E81eMPyEZ5lI=; b=uqGl8N+7ipQtuN9w0nwXTJdf9OYeK06pGooNCrG5Lv5ZNb3WtKBqKLrTdzRVLEyAk9 Qed9uDIgXoIfYiPab+Od9T4sDC7ZpWGWvGchTyuRP/XiO8QV9dsjrcwXuezWd359kL8C wpYp0WsAHkCJELNfekViXVALCJ6LZJ5r5OO276cAaVDmIEH1m5jekQLtS9YQb4BKNKd2 HsIgAEGAXIWLfyjJCExzSHpoArV7EO2UCPAdaowgePsGZH06XjlDzDtjFfjo6e430n3L xzI9VFMGXk/4aVOLtxR6QbeEt6lOco9mpzHcD/YzOQ2VuINCYMJi2hA+mv+lv91BTaFC YjtA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Vv9BxaNkk3k9NMftpI+go/KAcQnXOI5E81eMPyEZ5lI=; b=GChYz4e7rALPC2L1CbnusPx/6OqpIrcdgst7KF65Q8wlsajHqOJ76HJDpvmEqEVma0 hAlm6sbe6hrCT/xIf0f89VKOV6tQKlPkWwWnJLs9zMaRfoNXv6maaSCbZn2qMa9eUPSm 0VWWJvi7RmJ22ngNYXSsTMpt+V5Y9HjTW+0dMkxXqVBh2y2sPXBE5T5klTS94xHtCgp+ tDYIkQl57LmGiRiwg+k2HGbWmod8kOwKOROMWnosB5PgeasDgGVwxeRh7xkv4YWz8f+f hURxdc37Oyv2tJRvkmZ3haG9+PRUoqXE7uz+3Vcqi6QRKple5nfSSXlkg2MtuN6XpLSd DjvQ==
X-Gm-Message-State: ALQs6tBn1kxlx+LoMBl0ul9rKosMWfEa6k+ng0FzOkl68bp46QieXH+e XtZkvpUZOb4SDTo92MxytDG/6KTe6eBAcVvEpaPTGDVZWy4=
X-Google-Smtp-Source: AIpwx48vjjUoun5vJOzpcMYxWxUcLs2yVTUo3gMBVsZPloG5TG0oVrJU3OPMAb7ugU4DWXw0/59V9yXyqBeTZ7x8ujw=
X-Received: by 2002:a24:6983:: with SMTP id e125-v6mr10648169itc.38.1523737580729; Sat, 14 Apr 2018 13:26:20 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.2.148.46 with HTTP; Sat, 14 Apr 2018 13:26:20 -0700 (PDT)
In-Reply-To: <72D91139-BD51-43A9-8AEA-177753A29F90@dukhovni.org>
References: <72D91139-BD51-43A9-8AEA-177753A29F90@dukhovni.org>
From: Matthew Pounsett <matt@conundrum.com>
Date: Sat, 14 Apr 2018 16:26:20 -0400
Message-ID: <CAAiTEH_iXs33YdWrRmn6_iQYH2ba-WxqbYbp27Q2gpzBL7=q5g@mail.gmail.com>
To: Viktor Dukhovni <ietf-dane@dukhovni.org>
Cc: dnsop <dnsop@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000003b0cab0569d4cd65"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/bDnX_3Njqdo-keyVcrff9vjNrnc>
Subject: Re: [DNSOP] Acceptance processing in draft-ietf-regext-dnsoperator-to-rrr-protocol-04 section 3.4
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.22
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: Sat, 14 Apr 2018 20:26:25 -0000

On 14 April 2018 at 12:54, Viktor Dukhovni <ietf-dane@dukhovni.org> wrote:

>
> A number of checks are listed in:
>
>   https://tools.ietf.org/html/draft-ietf-regext-dnsoperator-
> to-rrr-protocol-04#section-3.4
>
> that are intended to make sure a domain is ready for DNSSEC.
>
> As I've been the DNSSEC and DANE implementations at now ~5.8 million
> domains, I'd like to suggest some additional checks:
>

Thanks for the review Viktor. We haven't had many DNS people respond to the
draft.. I've been considering mentioning it in DNSOP, but was going to wait
until several pending changes are in the doc and -05 is out (hopefully in
the next week or two, time permitting).


>
>      o  ensuring that the SOA record RRset is correctly signed, unlike:
>
>           http://dnsviz.net/d/_25._tcp.mx1.techtrack.gov/dnssec/
>
>         which is always incremented by 1 *after* the zone is signed!
>

I believe this is already covered by the first point: "checks that the
child zone is is properly signed as per the Registration Entity and parent
DNSSEC policies".  Although, we could add some example RRsets that should
be examined for correct signatures.


>      o  ensuring the NS RRset at the zone apex matches the glue RRs
>         at the parent zone


>      o  Verifying that TLSA lookups are NOT blocked and denial of
>         existence works by querying for:
>
>            _25._tcp.<nonce>.example.net. IN TLSA ?
>
>         and verifying the NXDomain, NODATA, or (very rarely) wildcard
>         TLSA records against the implied DNSKEYs.  The nonce can be some
>         random hex string of 8 or more bytes, that is unlikely to be an
>         actual name in the zone.
>
>       o Do the above for all IPv4 and IPv6 addresses of all the
> nameservers,
>         as some misconfigured firewalls block unexpected RR types for just
>         IPv4 or just IPv6.
>
>       o A similar probe for CAA records is likely appropriate, Let's
> Encrypt
>         runs into CAA lookup issues for a non-negligible fraction of
> domains.
>

These are getting into name server quality checks, and not security checks,
which is the point of the acceptance testing.  I don't agree that these
should be part of this document.


>
>       o Check that if the zone uses RSA, the KSK and ZSK are at least 1280
>         bits and at most 2048 bits.  This may be controversial, but for new
>         deployments RSA <= 1024 bits is widely considered too weak, and RSA
>         with more than 2048 bits creates signatures that are often too
> large
>         for reliable UDP transport.
>

While this is probably a reasonable thing to do, a registration mechanism
documented in REGEXT is not the place to do this.  I think if DNSOP wants
such advice in a standard there should be a BCP document out of DNSOP that
defines it.


>
>       o Check that if the zone uses NSEC3 the NSEC3PARAM iteration count is
>         at most 150 (regardless of RSA key size).  Larger iteration counts
>         are both inefficient and fragile in the face of algorithm
> rollovers.
>         The optimal value is 0 (performs one round of SHA1, which is
> enough to
>         deter casual zone walking).  The most popular value is 1, which is
>         very likely because it is slightly unclear whether 0 means no hash
>         or (as is the case) just one initial hash.  So hats off to the
>         operations that chose 1, they understand that the count should be
>         low, and are careful to avoid edge cases.
>

Again, I think this is out of scope of a document standardizing a
registration mechanism.  Besides which, there are operators out there who
deliberately have a low iteration count because they don't care about zone
walking, and are only using NSEC3 for the opt-out capability.