Skip to main content

CoreDNS EUVDEUVD-2026-80987

| CVE-2026-82399 HIGH
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-09-16 GitHub_M GHSA-mrg3-qvqr-jw29
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach CoreDNS DoH/DoQ/gRPC listener
  2. Delivery
    Craft DNS message with compression + huge section counts
  3. Exploit
    Server Unpacks before header validation
  4. Execution
    Amplified allocation bypasses plugin rate-limit
  5. Persist
    Concurrent requests exhaust memory
  6. Impact
    CoreDNS process terminates (DNS outage)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitable only when CoreDNS (prior to 1.14.7) is configured to serve DNS over one of the alternative transports: DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, or DNS-over-gRPC. Deployments using only the default UDP and TCP listeners are NOT affected because those paths validate the fixed DNS header before unpacking. No authentication or user interaction is required against a reachable vulnerable listener (PR:N/UI:N), and plugin-level rate limiting does not mitigate it because the amplified allocation occurs before the plugin chain. The primary limiting factor is therefore the non-default transport configuration and network reachability of that listener.

Impact

This is a genuine, well-substantiated availability issue rather than an inflated high-CVSS number. The vendor CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5) is internally consistent with CWE-770 (uncontrolled resource allocation) and the description: an unauthenticated remote client triggers unbounded memory allocation because dns.Msg.Unpack runs on attacker-controlled section counts BEFORE dns.DefaultMsgAcceptFunc validates the fixed header, and this happens before the plugin chain so plugin-level rate limiting cannot mitigate it. No EPSS score, no CISA KEV listing, and no public POC were provided in the input, so exploitation probability signals are absent - no active exploitation or public exploit can be asserted. The most important nuance the raw 7.5 hides is a configuration gate: only the DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, and DNS-over-gRPC listeners are vulnerable, while the default UDP and TCP listeners validate the header first and are explicitly unaffected. Impact is limited to availability (C:N/I:N) - a memory-exhaustion crash of the CoreDNS process, not code execution or data disclosure. Net: a real, patch-worthy DoS for operators who have enabled encrypted/alternative DNS transports, but lower real-world exposure than the network-unauthenticated 7.5 suggests because those transports are not CoreDNS's default configuration.

Exploit ScenarioDerived

An unauthenticated attacker sends crafted DoH/DoH3/DoQ/gRPC requests to a CoreDNS instance that exposes one of those encrypted transports, using DNS name compression and inflated section counts so each message forces large allocations before header validation. Firing many such requests concurrently exhausts process memory and terminates CoreDNS, denying DNS resolution to all downstream clients. No public POC is referenced in the provided data, though the fix commit and advisory make the mechanism reproducible.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
1 PoC candidate (unverified) Patch available 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 16, 2026

Memory-exhaustion denial of service in CoreDNS prior to 1.14.7 lets a remote unauthenticated attacker terminate the server by sending crafted queries over the DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, or DNS-over-gRPC transports. Those request paths call dns.Msg.Unpack on attacker-controlled DNS section counts before dns.DefaultMsgAcceptFunc validates the fixed header, so name compression and excessive section counts amplify allocation ahead of the plugin chain, meaning plugin-level rate limiting cannot stop concurrent requests from exhausting memory. There is no public exploit identified at time of analysis, but the flaw is rated CVSS 3.1 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) and is only reachable when one of those non-default transports is enabled - deployments using only the ordinary UDP and TCP listeners are not affected.

RemediationAI

Vendor-released patch: 1.14.7 - upgrade CoreDNS to v1.14.7 or later, available at https://github.com/coredns/coredns/releases/tag/v1.14.7; the underlying change is commit 530b0a5ff2ad68cc0421f10dd93568945cc671c9 and the security advisory is https://github.com/coredns/coredns/security/advisories/GHSA-mrg3-qvqr-jw29. If immediate upgrade is not possible, the most effective compensating control is to disable the alternative transports entirely and serve only UDP/TCP - remove or comment out the tls://, https:// (DoH/DoH3), quic:// and grpc:// server blocks in the Corefile - with the trade-off that clients lose encrypted or multiplexed DNS transport and any DoH/DoQ-only resolvers must fall back to plain DNS. Alternatively, isolate the exposed DoH/DoQ/gRPC listener behind a reverse proxy or load balancer that enforces strict request-body size limits and per-connection concurrency caps, and cap QUIC stream counts, with the trade-off of added infrastructure complexity and the need to tune limits so legitimate large DNS responses are not truncated. Note that CoreDNS plugin-level rate limiting (for example the ratelimit or loadbalance plugins) does not mitigate this issue because the memory amplification happens before the plugin chain executes, and that the DoH path in the fixed version additionally bounds bodies with http.MaxBytesReader using maxDNSQuerySize - so any custom patch should replicate both the header-policy gate and the size cap, not just one of them.

Affected VersionsENISA

coredns < 1.14.7

Affected Packages

go github.com/coredns/coredns fix: 1.14.7
euvd coredns fix: 1.14.7

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

CoreDNS is a Go-based DNS server that uses the github.com/miekg/dns library; the flaw is classified CWE-770 (Allocation of Resources Without Limits or Throttling). Normal DNS message parsing in miekg/dns relies on the fixed 12-byte header, and the library's policy function dns.DefaultMsgAcceptFunc inspects that header (opcode, question count, etc.) to reject malformed or abusive requests before the body is decoded. In the affected DoH/DoH3/DoQ/DoG paths, however, the code performed new(dns.Msg) followed by msg.Unpack on the raw wire bytes directly, so the ANCount/NSCount/ARCount fields and compression pointers in the attacker-supplied payload drive slice and name decompression allocations before any policy check runs. The official fix introduces plugin/pkg/dnsutil/message.go with UnpackRequest(), which first decodes only dns.Header via binary.Decode and applies dns.DefaultMsgAcceptFunc, returning errRequestRejected for anything the default policy refuses (the accompanying test confirms multi-question messages are now rejected), and only then calls Unpack. The same commit changes core/dnsserver/server_grpc.go to msg, err := dnsutil.UnpackRequest(in.GetMsg()) and core/dnsserver/server_quic.go to req, err := dnsutil.UnpackRequest(buf), while plugin/pkg/doh/doh.go now reads the body through http.MaxBytesReader bounded by maxDNSQuerySize before unpacking, adding a size cap in addition to the header-policy gate.

Know when Coredns gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Unauthenticated remote requests to an exposed encrypted-DNS listener trigger memory exhaustion; availability-only impact, and the config prerequisite is a deployment gate not an attacker privilege, so PR:N/A:H stands.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE HIGH
Red Hat 7.5 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Sep 16, 2026 - 20:18 EUVD
CVE Published
Sep 16, 2026 - 18:37 cve.org
HIGH 7.5

DescriptionCVE.org

CoreDNS is a DNS server written in Go. Prior to 1.14.7, the DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, and DNS-over-gRPC request paths in plugin/pkg/doh/doh.go, core/dnsserver/server_quic.go, and core/dnsserver/server_grpc.go call dns.Msg.Unpack on attacker-controlled DNS section counts before dns.DefaultMsgAcceptFunc validates the fixed header. An unauthenticated client can use DNS name compression and excessive section counts to amplify allocation before the plugin chain, so plugin-level rate limiting cannot prevent concurrent requests from exhausting memory and terminating CoreDNS. The ordinary UDP and TCP listeners are not affected because they validate the header first. This issue is fixed in version 1.14.7.

Technical POC Analysis

CWE-770 (Allocation of Resources Without Limits or Throttling).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

A memory-exhaustion flaw in CoreDNS (CVE-2026-82399) lets an unauthenticated remote attacker crash DNS server instances, causing name-resolution outages for every application, cluster, and user that depends on them. Exposure is limited to environments that have enabled CoreDNS's optional DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, or DNS-over-gRPC listeners; organizations running only the standard UDP and TCP DNS listeners are not affected. Because CoreDNS commonly underpins Kubernetes service discovery and internal DNS, a successful attack could disrupt a broad set of dependent services, and no vendor-released patch is identified at time of analysis.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: disable the DNS-over-HTTPS, DNS-over-HTTP/3, DNS-over-QUIC, and DNS-over-gRPC listeners and operate CoreDNS over UDP/TCP only, which removes the vulnerable code path entirely; where those transports must remain enabled, front them with an L7 proxy or load balancer that validates DNS header and section counts, cap concurrent connections and per-process memory via cgroups with restart watchdogs, restrict the listeners to trusted source networks, and monitor process memory for exhaustion patterns.

Threat Intelligence Overview

EPSS Score
0.6%
Top 52% exploitable
Prevalence
High
CoreDNS is the default cluster DNS in Kubernetes and CNCF deployments
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.6%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

59
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +38
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Vendor StatusVendor

SUSE

Severity: Important

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy