Re: [DNSOP] pushing updates to the parent

Mark Andrews <marka@isc.org> Mon, 10 March 2014 04:43 UTC

Return-Path: <marka@isc.org>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B794B1A03CA for <dnsop@ietfa.amsl.com>; Sun, 9 Mar 2014 21:43:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.108
X-Spam-Level:
X-Spam-Status: No, score=-1.108 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DATE_IN_PAST_24_48=1.34, RP_MATCHES_RCVD=-0.547, SPF_PASS=-0.001] autolearn=ham
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 6fMmTOP2EeaN for <dnsop@ietfa.amsl.com>; Sun, 9 Mar 2014 21:43:42 -0700 (PDT)
Received: from mx.ams1.isc.org (mx.ams1.isc.org [IPv6:2001:500:60::65]) by ietfa.amsl.com (Postfix) with ESMTP id 399DD1A03C6 for <dnsop@ietf.org>; Sun, 9 Mar 2014 21:43:42 -0700 (PDT)
Received: from zmx1.isc.org (zmx1.isc.org [149.20.0.20]) by mx.ams1.isc.org (Postfix) with ESMTP id 7F7762383A8; Mon, 10 Mar 2014 04:43:25 +0000 (UTC) (envelope-from marka@isc.org)
Received: from zmx1.isc.org (localhost [127.0.0.1]) by zmx1.isc.org (Postfix) with ESMTP id 42013160057; Mon, 10 Mar 2014 04:44:24 +0000 (UTC)
Received: from rock.dv.isc.org (c211-30-183-50.carlnfd1.nsw.optusnet.com.au [211.30.183.50]) by zmx1.isc.org (Postfix) with ESMTPSA id DB4D5160056; Mon, 10 Mar 2014 04:44:23 +0000 (UTC)
Received: from rock.dv.isc.org (localhost [IPv6:::1]) by rock.dv.isc.org (Postfix) with ESMTP id 9786C10D23E7; Sat, 8 Mar 2014 22:52:46 +1100 (EST)
To: Paul Wouters <paul@nohats.ca>
From: Mark Andrews <marka@isc.org>
References: <20140307100524.2F42810CD58F@rock.dv.isc.org> <3E0DC692-7BA0-4672-BB10-82B854BB69CE@hopcount.ca> <alpine.LSU.2.00.1403071025270.19416@hermes-1.csi.cam.ac.uk> <8C184518-2A56-42B6-BD63-3E50F8126664@hopcount.ca> <20140308055348.7E50010CFAA9@rock.dv.isc.org> <alpine.LFD.2.10.1403080550530.24909@bofh.nohats.ca>
In-reply-to: Your message of "Sat, 08 Mar 2014 06:14:17 -0500." <alpine.LFD.2.10.1403080550530.24909@bofh.nohats.ca>
Date: Sat, 08 Mar 2014 22:52:46 +1100
Message-Id: <20140308115246.9786C10D23E7@rock.dv.isc.org>
Archived-At: http://mailarchive.ietf.org/arch/msg/dnsop/vzrO3V_uoenebbA9p7e6S21Pw9I
Cc: dnsop <dnsop@ietf.org>
Subject: Re: [DNSOP] pushing updates to the parent
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Mon, 10 Mar 2014 04:43:45 -0000

In message <alpine.LFD.2.10.1403080550530.24909@bofh.nohats.ca>ca>, Paul Wouters w
rites:
> On Sat, 8 Mar 2014, Mark Andrews wrote:
> 
> > Our audience should be the CPE developer with the one "turn on
> > DNSSEC" button which generates the keys, signs the zone, pushes
> > keys upstream at the right time.  It has a username/password field
> > for zones where it is not automatically installing KEY records as
> > part of the automatic delegation process.
> 
> Buy router. Configure DNS. CPE uploads DS record.
> 
> I forget my password, factory default the firmware, configure DNS,
> attempt to upload a new DS record.
> 
> Either:
> 
> a) authentication fails and my domain remains broken
> b) it works, meaning any CPE compromise will lead to massive DNSSEC
>     circumvention.

And if you have forgotten you password and use DNS scrapping you are
also hosed.  The CPE doesn't have the old DNSKEYs to sign the data
and if you have forgotten the password you are hosed.

In reality both methods have the same failure modes.  Both bootstrap
from the web.  Both require going back to the web to recover from
a CPE change.  The only exception in the case where you are getting
delegations from the ISP for PD and homenet forward zone which use
SIG(0) and public keys trasmitted as part of the DHCP process.

> Neither are desirable, and why people wanted the update systems to be
> bootstrapped externally and did not want to allow the update mechanism
> to change the security status of zones.

And that is applying business logic to the update request.  Nothing
in my draft prevents the Registrar rejecting the change.

> > The second audience is the DNSSEC Key management tool developer which
> > has a policy file which says "roll the key for this zone monthly/yearly"
> > and just ensures it happens.
> 
> This works with any of the proposals, once you boostrap via EPP. I don't
> know many people who want to bypass the bootstrap.
> 
> > nsupdate is how one does it today because the other bits of software
> > that will use the method have not yet been written because we (the
> > IETF) haven't provided them with a full standardised solution which
> > works everywhere.
> 
> I think we have. But registrars don't provide a unified method for
> updating that information to _their_ customers. They could easilly
> setup their own EPP channel to talk to their registrants and avoid
> using custom website GUIs. Some, like gkg.net, provide nice and simple
> JSON API's, but the location and format is not standarised (but could
> easilly be if registrars want that). ICANN did well in enforcing the
> location for registrant facing services like WHOIS for the new GTLDs.
> Perhaps it can extend this for other registrant-facing services like
> DS update. Using EPP here would make a lot of sense.

They could do that but they have not.
 
> > nsupdate is the proof of concept tool.  It is the fill the gap tool
> > until the others are written.  It is the fix it tool.
> 
> nsupdate can never fix the bootstrap. The initial authorization that
> allows signed zone content to be trusted by the registrar to make
> domain registry modifications but involve a human.

Which is why the update request is signed.  You sign into a web
page.  You sign the request set via UPDATE.  Both are equally secure.

For web scrapping you have to sign into the web to upload the DS
records.

For this you have to sign the update using credentials shared with
the parent (TSIG or SIG(0)).

Both have bootstrap steps.  One however only works with signed zones
the other works with all types of zones.

> > However in all cases we have RRR and non-RRR managed zone and the tools
> > need to work with all of them.
> 
> The initial bootstrap problem is the same for RRR and non-RRR, unless
> parent and child are under teh same administratiev control, in which
> case it should already be handled. (A previous DNS signer product I
> worked on fully automated rollovers if parent and child were managed
> by it)
> 
> > We also have nameservers that are being renumbered that need to
> > push new glue records for themselves to the parent zones.  This
> > will happen with both signed and unsigned zones and their is no
> > "scraping" solution that works for this senario.
> 
> You still need an authorization step there for the RRR case. I believe,
> and I think the WG concensus was the same, that the best way for that
> authorization step was to use out of band EPP using the KSK. In other
> words, once you get the KSK at the registrar, you can use signed records
> within your zone for signaling without requiring another set of credentials.

Which means it only works for dnssec signed zones.  I would love it if
every zone was signed but when you are defining a update process that
doesn't work for 90+% of current zones you are missing the mark.

This is not just about DS updates.  It is about A, AAAA and NS updates.
It about having those work for signed and unsigned zones.
 
> nsupdate requires a new set of credentials, as well as a new API as to
> where to send the nsupdate to, possibly with new firewall holes. It
> requires dynamic zones or custom software pretending to run dynamic
> zones to take the update. The domain owner would need to keep another
> secret on their "live nsupdate machine" apart from the private KSK key.

Which is a whole load do FUD.
 
> Using zone data for signaling also works for the non-RRR use cases.
> 
> These were all reasons for the WG to agree on signed zone content as
> an authorization method for parent updates.
> 
> Paul

-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: marka@isc.org