CVE-2019-19794
miekg/dns insecurely generates random numbers
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
5.9
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.
- Record
CVE-2019-19794- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - CVSS 2.0
- 4.3 Medium
AV:N/AC:M/Au:N/C:N/I:P/A:N - Weakness
- CWE-338
- Updated
- 2026-11-02
CVE List No score
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.
- Record
CVE-2019-19794- Updated
- 2026-11-02
EUVDEUVD-2021-0929 No score
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.
- Record
EUVD-2021-0929- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-44r7-7p62-q3fr
5.9
miekg/dns insecurely generates random numbers
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.
- Record
GHSA-44r7-7p62-q3fr- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Weakness
- CWE-330, CWE-338
- Updated
- 2026-11-02
OSV
5.9
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.
- Record
CVE-2019-19794- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2019-19794
5.9
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.
- Record
DEBIAN-CVE-2019-19794- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVGHSA-44r7-7p62-q3fr
5.9
miekg/dns insecurely generates random numbers
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.
- Record
GHSA-44r7-7p62-q3fr- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Weakness
- CWE-330, CWE-338
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2019-19794
5.9
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.
- Record
UBUNTU-CVE-2019-19794- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVGO-2020-0008 No score
Insecure generation of random numbers in github.com/miekg/dns
DNS message transaction IDs are generated using math/rand which makes them relatively predictable. This reduces the complexity of response spoofing attacks against DNS clients.
- Record
GO-2020-0008- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
github.com/miekg/dnsGo |
before 1.1.25 | 1.1.25 |
golang-github-miekg-dnsDebian:12 |
before 1.1.26-1 | 1.1.26-1 |
golang-github-miekg-dnsDebian:13 |
before 1.1.26-1 | 1.1.26-1 |
golang-github-miekg-dnsDebian:14 |
before 1.1.26-1 | 1.1.26-1 |
github.com/miekg/dnsGo |
before 1.1.25-0.20191211073109-8ebf2e419df7 | 1.1.25-0.20191211073109-8ebf2e419df7 |
golang-github-miekg-dnsUbuntu:18.04:LTS |
All versions, plus listed versions 0.0~git20170501.0.f282f80-20.0~git20170501.0.f282f80-3 |
None known |
golang-github-miekg-dnsUbuntu:20.04:LTS |
All versions, plus listed versions 1.0.4+ds-1ubuntu1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2019-19794 is a medium vulnerability (CVSS 5.9) in Miekg-dns Project Miekg-dns, published December 13, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.07%, the 81st percentile. Fixed in github.com/miekg/dns 1.1.25.
References
github.com/miekg/dns/issues/1043
github.com/coredns/coredns/issues/3519
github.com/miekg/dns/pull/1044
github.com/miekg/dns/compare/v1.1.24...v1.1.25
github.com/coredns/coredns/issues/3547
nvd.nist.gov/vuln/detail/CVE-2019-19794