Skip to content
OpenAdvisories
Low · 3.7 CVE-2026-62994 EUVD-2026-45018GHSA-74w3-63xv-x9mvGO-2026-6805

CoreDNS `k8s_external` headless AXFR can emit an empty transfer batch that panics the `transfer` plugin

Published Jul 16, 2026 · Updated Jul 17, 2026 · Assigned by GitHub_M

Description

CoreDNS is a DNS server written in Go. From 1.9.4 until 1.14.5, a network DNS client allowed to request AXFR for a CoreDNS zone can trigger a panic when CoreDNS is configured with k8s_external headless-service zone transfers and Kubernetes contains a headless service endpoint with no declared ports; plugin/kubernetes/object/endpoint.go creates Port: -1, plugin/k8s_external/msg_to_dns.go skips that service, plugin/k8s_external/transfer.go sends an empty []dns.RR batch, and plugin/transfer/transfer.go indexes records[0] without checking the batch is non-empty. This issue is fixed in version 1.14.5.

Affected products

VendorProductAffectedFixed
coredns coredns >= 1.9.4, < 1.14.5 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 coredns 1.11.4-20 —

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/coredns/coredns >= 1.9.4, < 1.14.5 1.14.5 GHSA-74w3-63xv-x9mv

Advisories 1

References