Description (CNA)
CoreDNS is a DNS server that chains plugins. In versions prior to 1.14.3, the DNS-over-QUIC (DoQ) server can be driven into unbounded goroutine and memory growth by a remote client that opens many QUIC streams and sends only 1 byte per stream. When the worker pool is full, CoreDNS still spawns a goroutine per accepted stream to wait for a worker token. Additionally, active workers block indefinitely in io.ReadFull() with no per-stream read deadline, allowing an attacker to pin all workers by sending a single byte so the read blocks waiting for the second byte of the DoQ length prefix. This enables an unauthenticated remote attacker to cause memory exhaustion and OOM-kill. This issue has been fixed in version 1.14.3. No known workarounds exist.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| coredns / coredns | affected < 1.14.3 |
CWE
CWE-770
References
- https://github.com/coredns/coredns/security/advisories/GHSA-2wpx-qpw2-g5h5
- https://github.com/coredns/coredns/releases/tag/v1.14.3
ADP enrichment
No English description supplied.