Dear Björn,

On Sun, Jun 9, 2024 at 12:39 AM Björn Persson <Bjorn@rombobjörn.se> wrote:

> > == Summary ==
> > OpenSSL will no longer trust cryptographic signatures using SHA-1 by
> > default, starting from Fedora 41.
>
> Validating DNS resolvers are still required to be able to validate
> signatures made with SHA-1. RFC 8624 is still current as far as I can
> tell:
>
> https://www.rfc-editor.org/rfc/rfc8624#section-3.1
> https://www.rfc-editor.org/rfc/rfc8624#section-3.3
>
> There have been reports of SHA-1 disablement causing name resolution
> problems. Here's one example:
>
> https://lists.isc.org/pipermail/bind-users/2023-December/108182.html
>
> Here's a crappy program that can show some statistics but won't let me
> link directly to the relevant table:
>
> https://stats.dnssec-tools.org/
>
> It shows about 140000 SHA-1-signed domains. That's only 6‰ of the signed
> domains, but still a rather large absolute number.
>

I don't think that 140000 of something world-wide (22 mln of DNSSec signed
domains) should be considered a large amount.


> Before voting on this proposal, Fesco should be informed of what will
> happen in Bind, Unbound and SystemD-ResolveD when users try to look up a
> domain that is signed with SHA-1.
>

I agree that the maintainers of the DNSSec software have to consider the
behavior of their software.
But it doesn't mean that SHA1 for crypto purposes is of any security.


> Will DNSsec validation be skipped whenever an algorithm number for SHA-1
> is encountered? That will make the resolver vulnerable to downgrade
> attacks. An attacker can then disable DNSsec by sending manipulated
> responses indicating for example RSA/SHA-1 for records that are actually
> signed with RSA/SHA-256.
>

If an attacker can manipulate DNSSec so easily, it means it's completely
broken.

It seems to me that the following would be the best way to distrust
> SHA-1 in DNSsec:
>
> 1: If a valid chain of trust can be established where strong algorithms
> are used throughout, then return the records to the client with the AD
> bit set, per the standard, indicating that the data are authentic.
>
> 2: If there should be signatures, but no valid chain of trust can be
> established because records are missing or signatures fail to verify,
> then assume it's an attack and return SERVFAIL per the standard.
>
> 3: If one or more valid chains of trust are found, but they all involve
> SHA-1 somewhere, then return the records to the client with the AD bit
> zeroed, indicating that no attack was detected but the data should not
> be trusted any more than an unsigned domain.
>
> To be able to distinguish between cases 2 and 3, the resolver must
> remain able to verify SHA-1 signatures.
>

Looks reasonable to me.

-- 
Dmitry Belyavskiy
--
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to