[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [dnsext] Trust Anchors
On 25 Oct 2009, at 16:30, Paul Vixie wrote:
> if CLOSEST does not match but ANY does, then a system capture in an
> ancestor
> can introduce trustworthy data about my zones without changing my
> zone's NS.
It doesn't have to change your NS RRs, but it does have to change your
DS RRs.
> for example if the operators of COM were to sign (offline) some data
> about
> SPELLING-ERROR.VIX.COM and sell these signatures to OpenDNS, it
> would be seen
> as authentic.
No.
RFC 4035 section 5 specifies that trust anchors are used to validate
keys at the apex of the zone with the anchor's name.
As I understand the standard, COM could not hijack SPELLING-ERROR.VIX.COM
without altering VIX.COM's DS RRs. If COM and VIX.COM were signed,
a trust anchor at COM would say "start resolutions under COM in secure
mode and make sure one of the keys for COM is this one". That would
establish a valid keyset for COM, and resolution would proceed in the
usual way down to VIX.COM. Assuming COM handed out the legitimate DS
and NS RRs for VIX.COM, then anything in VIX.COM would have to be
authenticated by one of the keys at the apex of VIX.COM.
So, to be clear, a compromised parent *can* hijack a child, but it
must do so by altering the DS RRset for the child. (Where "removing
the DS RRset and converting the delegation to an insecure delegation"
is included in "altering the DS RRset".)
Assuming that a validator had anchors for COM and VIX.COM, then here's
a comparison of ANY and CLOSEST in various scenarios.
"Works" means "legitimate data validates and forged data does not
validate".
Scenario ANY CLOSEST
-----------------------------------------------------------------------------------------------------------------------
Both anchors not stale Works Works
COM anchor not stale,
VIX.COM anchor goes stale,
but VIX.COM NS & DS
in COM still good Works Fails
VIX.COM anchor not stale,
COM anchor goes stale Works Works
Both anchors go stale Fails Fails
VIX.COM anchor not stale,
COM compromised,
VIX.COM DS RRs changed
in COM Appropriately Forged data
forged data never validates
validates
True data may True data
or may always validates
not validate
Supporters of ANY worry that during transition to DNSSEC you will set
up your validator with a VIX.COM anchor, because COM is not signed
yet. Later COM will be signed, and you'll add an anchor for it and
forget to remove the VIX.COM anchor. If the VIX.COM anchor goes
stale, under CLOSEST your resolutions will fail, whereas under ANY
they will not.
Supporters of CLOSEST argue that the detection of a compromise or
other problem in the parent is good security.
I'm sympathetic to the problems of staleness that ANY supporters worry
about. By my prior sysadmin experience tells me that if I configure VIX.COM
and COM both as trust anchors on my validator, and use ANY, than one
of them will go stale and I'll not notice, and then when I'm on
vacation the other one will go stale, and resolution will fail, and
I'll get emergency phone calls.
I'd rather we kept CLOSEST for its security benefit in the compromise
case, and tried to tackle anchor staleness directly (via RFC 5011 or
some other means).
/Bob