Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 695950 - DNSSEC Chain Issue for some subdomains
Summary: DNSSEC Chain Issue for some subdomains
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Infrastructure
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All All
: Normal blocker with 2 votes (vote)
Assignee: Gentoo Infrastructure
URL: http://dnsviz.net/d/rsync.gentoo.org/...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-01 07:20 UTC by Michael Scholl
Modified: 2020-03-24 04:32 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Scholl 2019-10-01 07:20:53 UTC
There is a DNSSEC Chain issue for some subdomains:

rsync.gentoo.org
http://dnsviz.net/d/rsync.gentoo.org/dnssec/

dev.gentoo.org
http://dnsviz.net/d/dev.gentoo.org/dnssec/

distfiles.gentoo.org
http://dnsviz.net/d/distfiles.gentoo.org/dnssec/

Maybe other subdomains have the same issue.


Reproducible: Always

Steps to Reproduce:
1. Resolve one of the Subdomains behind a DNSSEC validating resolver.
Actual Results:  
** server can't find rsync.gentoo.org: SERVFAIL

Expected Results:  
Name:	rsync.gentoo.org
Address: 81.91.253.252
...
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-10-01 07:32:24 UTC
Also anongit.
Comment 2 Enzo Laroche 2019-10-01 12:23:12 UTC
Can confirm this behavior.

> Maybe other subdomains have the same issue.

Also impacted keys.gentoo.org which, if you weren't already deadlocked by the DNS resolution failure on distfiles.gentoo.org/rsync.gentoo.org, cause webrsync to fail while trying to refresh the keys.

> There is a DNSSEC Chain issue for some subdomains:
> 
> rsync.gentoo.org
> http://dnsviz.net/d/rsync.gentoo.org/dnssec/

Currently, Google and Cloudflare public DNSes fail to resolve because of a signature mismatch. A key rollout gone wrong ?

The valid DNSKEY (37372) with the corresponding Delegation Signature record (DS) is not used to sign child records like SOA, A, AAAA ..etc The key used to sign actual records has the ID 50775 wich has no corresponding DS in the gentoo.org zone.

Workaround for webrsync:
Had to manually set sync-uri in my repos with an IP address (obtained via querying ns1.gentoo.org without DNSSEC) and nullify sync-openpgp-keyserver to synchronize my tree on my local mirror.

Regards,
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-10-01 12:34:08 UTC
Sometimes I really do wonder why do we even bother trying to improve security if users at the first signs of failure don't even bother waiting a few hours and immediately workaround all the security measures.

So we have security measure in place to prevent ::gentoo from being compromised.  However, it's sufficient to attack DNS and people go out of their way to disable all security measures.
Comment 4 Enzo Laroche 2019-10-01 12:47:21 UTC
(In reply to Michał Górny from comment #3)
> Sometimes I really do wonder why do we even bother trying to improve
> security if users at the first signs of failure don't even bother waiting a
> few hours and immediately workaround all the security measures.
> 
> So we have security measure in place to prevent ::gentoo from being
> compromised.  However, it's sufficient to attack DNS and people go out of
> their way to disable all security measures.

While this is a valid point, I fail to grasp the security implications of my workaround. Nullifying sync-openpgp-keyserver only suspend the PGP keys synchronization, the validation still take place using the "last known" public key. I could also use another -slow and potentially vulnerable- key server to get them. WKD is also working as intended.

As for the sync-uri workaround, I suggested querying the DNS server directly to obtain a valid but DNSSEC-free response. If the DNS Server is sending forged queries, we have a much more serious problem at hand.

Rgds,
Comment 5 David Flogeras 2019-10-01 14:16:37 UTC
gitweb.g.o also seems affected for me
Comment 6 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-10-01 16:19:44 UTC
The problem should be fixed now.
Comment 7 Christian Stoitner 2020-03-21 20:44:20 UTC
Not sure if this belongs here or in a new bug report. dnssec validation isn't working for me for attachments on this bug tracker. Example: https://713530.bugs.gentoo.org/attachment.cgi?id=623928 does not resolve for me with dnssec enabled.

> resolvectl query 713530.bugs.gentoo.org
713530.bugs.gentoo.org: resolve call failed: DNSSEC validation failed: invalid

The standard domains, like bugs.gentoo.org or rsync.gentoo.org, seem all to work fine for me.

I am using cloudflares dns server(1.1.1.1) through systemd-resolved if that makes any difference.
Comment 8 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2020-03-24 04:32:00 UTC
(In reply to Christian Stoitner from comment #7)
> Not sure if this belongs here or in a new bug report. dnssec validation
> isn't working for me for attachments on this bug tracker. Example:
> https://713530.bugs.gentoo.org/attachment.cgi?id=623928 does not resolve for
> me with dnssec enabled.
> 
> > resolvectl query 713530.bugs.gentoo.org
> 713530.bugs.gentoo.org: resolve call failed: DNSSEC validation failed:
> invalid
> 
> The standard domains, like bugs.gentoo.org or rsync.gentoo.org, seem all to
> work fine for me.
> 
> I am using cloudflares dns server(1.1.1.1) through systemd-resolved if that
> makes any difference.

This bug is definitely not related to your issue. Please file a new bug, after testing with non-systemd and non-CloudFlare resolver.

https://dnssec-analyzer.verisignlabs.com/713530.bugs.gentoo.org
Claims that the DNSSEC on Gentoo's records are good.