CVE-2019-19794 miekg/dns insecurely generates random numbers

Medium 5.9 Published Updated

Predictable DNS transaction IDs in the miekg Go DNS library allow attackers to forge DNS responses, impacting applications using this library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2019-19794?

CVE-2019-19794 is a medium-severity vulnerability in n/a, published on 13 Dec 2019. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The miekg Go DNS package before 1.1.25, as used in CoreDNS before 1.6.6 and other products, improperly generates random numbers because math/rand is used. The TXID becomes predictable, leading to response forgeries.

Weakness: CWE-338

Which versions are affected by CVE-2019-19794?

3 open source packages ship an affected version, including github.com/miekg/dns. It affects 1 product.

PackageAffectedFixed in
github.com/miekg/dns GoAll versions1.1.25
github.com/miekg/dns GoAll versions1.1.25
github.com/miekg/dns GoAll versions1.1.25-0.20191211073109-8ebf2e419df7

Products include Miekg-Dns Project Miekg-Dns.

How do I fix CVE-2019-19794?

Upgrade github.com/miekg/dns to a fixed version for your release line: 1.1.25 or 1.1.25-0.20191211073109-8ebf2e419df7.

Is CVE-2019-19794 being exploited?

There is no known exploitation of CVE-2019-19794 in the wild and no public exploit code.

Sources

Also known as DEBIAN-CVE-2019-19794, GHSA-44r7-7p62-q3fr, GO-2020-0008, UBUNTU-CVE-2019-19794.

Is CVE-2019-19794 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free