Cloudanix VulnDB

CVE-2025-58063

High · 7.1

CVSS

7.1

EPSS

0.5%

Published

Sep 9, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A coding error in CoreDNS can let an attacker make DNS answers for some services stay in memory far too long, breaking name resolution and taking those services offline.

Exploitation
Remote Authenticated
Attacker needs
Low Privilege
Complexity
Low
Impact
Denial Of Service
Component
Application
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The TTL() function in plugin/etcd/etcd.go casts etcd lease IDs (64-bit integers) to uint32 and treats the resulting values as DNS TTLs; large lease IDs produce extremely large TTLs that pin cache entries and prevent refresh or replacement of affected DNS records.

Why it matters to the business

Organizations running CoreDNS with the etcd plugin risk prolonged DNS resolution failures for services that rely on dynamic etcd-backed records, causing application outages and operational disruption until the affected instances are upgraded.

How an attack unfolds

An attacker with the ability to influence etcd lease creation supplies leases whose IDs exceed 32 bits; CoreDNS incorrectly interprets those IDs as TTL values, resulting in cache entries that remain valid for an impractically long time and block legitimate record updates or failover.

How to fix it

Upgrade coredns/coredns to the fixed commit f32329577fd5e3fe19908f8a9ba5c76aafb45bf6 (version 1.12.4) or later; rebuild and redeploy all affected CoreDNS instances; verify that the etcd plugin no longer casts lease IDs to uint32 for TTL calculations.

How to confirm the fix worked

Confirm the running binary reports version 1.12.4 or newer; inspect plugin/etcd/etcd.go for the corrected TTL handling; perform controlled lease creation followed by DNS queries and verify that returned TTL values remain within expected bounds.

Typical attack path

  1. Obtain write access to the etcd cluster used by CoreDNS
  2. Create or renew leases that generate large 64-bit lease IDs
  3. Trigger DNS queries against CoreDNS instances using the etcd plugin
  4. Observe that the resulting cache entries receive excessively large TTLs and cannot be refreshed

How to detect it

Search CoreDNS request and cache logs for TTL values exceeding normal service lifetimes; correlate with etcd lease events that produce unusually large lease IDs; review audit logs for unexpected lease creation activity around the time of observed resolution failures.

What your security team should do

  • Immediately schedule upgrade of all CoreDNS deployments using the etcd plugin to version 1.12.4
  • Add CoreDNS version checks to continuous compliance scanning
  • Review etcd access controls to limit lease creation privileges to trusted components only
  • Monitor DNS cache hit rates and TTL distributions for anomalies until all instances are updated

The record

CoreDNS is a DNS server that chains plugins. Starting in version 1.2.0 and prior to version 1.12.4, the CoreDNS etcd plugin contains a TTL confusion vulnerability where lease IDs are incorrectly used as TTL values, enabling DNS cache pinning attacks. This effectively creates a DoS condition for DNS resolution of affected services. The `TTL()` function in `plugin/etcd/etcd.go` incorrectly casts etcd lease IDs (64-bit integers) to uint32 and uses them as TTL values. Large lease IDs become very large TTLs when cast to uint32. This enables cache pinning attacks. Version 1.12.4 contains a fix for the issue.

Affected packages

Ecosystem Package Introduced Fixed
Go github.com/coredns/coredns 1.2.0 1.12.4
Chainguard cloudflared 0 2026.2.0-r0
Chainguard eks-distro-1.29 0 1.29.53-r1
Chainguard eks-distro-1.30 0 1.30.46-r1
Chainguard eks-distro-1.31 0 1.31.35-r1
Chainguard eks-distro-1.32 0 1.32.28-r1
Chainguard eks-distro-1.33 0 1.33.18-r1
Chainguard eks-distro-1.34 0 1.34.9-r1
Chainguard eks-distro-coredns-1.29 0 1.29.53-r1
Chainguard eks-distro-coredns-1.30 0 1.30.46-r1
Chainguard eks-distro-coredns-1.31 0 1.31.35-r1
Chainguard eks-distro-coredns-1.32 0 1.32.28-r1
Chainguard eks-distro-coredns-1.33 0 1.33.18-r1
Chainguard eks-distro-coredns-1.34 0 1.34.9-r1
Chainguard eks-distro-coredns-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-coredns-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-coredns-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-coredns-fips-1.32 0 1.32.28-r1
Chainguard eks-distro-coredns-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-coredns-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-fips-1.32 0 1.32.28-r1
Chainguard eks-distro-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-apiserver-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-apiserver-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-apiserver-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-apiserver-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-apiserver-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-apiserver-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-apiserver-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-apiserver-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-apiserver-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-apiserver-fips-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-apiserver-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-apiserver-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-controller-manager-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-controller-manager-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-controller-manager-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-controller-manager-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-controller-manager-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-controller-manager-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-controller-manager-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-controller-manager-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-controller-manager-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-controller-manager-fips-1.32 0 1.32.28-r0
Chainguard eks-distro-kube-controller-manager-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-controller-manager-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-proxy-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-proxy-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-proxy-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-proxy-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-proxy-1.33 0 1.33.18-r0
Chainguard eks-distro-kube-proxy-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-proxy-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-proxy-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-proxy-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-proxy-fips-1.32 0 1.32.28-r0
Chainguard eks-distro-kube-proxy-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-proxy-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-scheduler-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-scheduler-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-scheduler-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-scheduler-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-scheduler-1.33 0 1.33.18-r0
Chainguard eks-distro-kube-scheduler-1.34 0 1.34.9-r1
Chainguard eks-distro-kube-scheduler-fips-1.29 0 1.29.53-r1
Chainguard eks-distro-kube-scheduler-fips-1.30 0 1.30.46-r1
Chainguard eks-distro-kube-scheduler-fips-1.31 0 1.31.35-r1
Chainguard eks-distro-kube-scheduler-fips-1.32 0 1.32.28-r1
Chainguard eks-distro-kube-scheduler-fips-1.33 0 1.33.18-r1
Chainguard eks-distro-kube-scheduler-fips-1.34 0 1.34.9-r1
Chainguard eks-distro-kubernetes-pause-1.29 0 1.29.53-r1
Chainguard eks-distro-kubernetes-pause-1.30 0 1.30.46-r0
Chainguard eks-distro-kubernetes-pause-1.31 0 1.31.35-r1
Chainguard eks-distro-kubernetes-pause-1.32 0 1.32.28-r1
Chainguard eks-distro-kubernetes-pause-1.33 0 1.33.18-r1
Chainguard eks-distro-kubernetes-pause-1.34 0 1.34.9-r1
Chainguard juicefs-1.2 0 1.2.4-r4
Chainguard juicefs-1.2-compat 0 1.2.4-r4
Chainguard juicefs-1.3 0 1.3.0-r5
Chainguard juicefs-1.3-compat 0 1.3.0-r5
Chainguard k8s_gateway 0 1.6.1-r0
Chainguard k8s_gateway-compat 0 1.6.0-r3
Chainguard k8s_gateway-fips 0 1.6.1-r0
Chainguard k8s_gateway-fips-compat 0 1.6.1-r0
Chainguard kubernetes-dns-node-cache 0 1.26.5-r1
Chainguard kubernetes-dns-node-cache-fips 0 1.26.5-r1
SUSE:Linux Enterprise Module for Package Hub 15 SP6 govulncheck-vulndb 0 0.0.20250918T182144-150000.1.107.1
Wolfi cloudflared 0 2026.2.0-r0
Wolfi juicefs-1.3 0 1.3.0-r5
Wolfi juicefs-1.3-compat 0 1.3.0-r5
Wolfi k8s_gateway 0 1.6.1-r0
Wolfi k8s_gateway-compat 0 1.6.0-r3
Wolfi kubernetes-dns-node-cache 0 1.26.5-r1
go github.com/coredns/coredns 1.2.0 1.12.4
openSUSE:Leap 15.6 govulncheck-vulndb 0 0.0.20250918T182144-150000.1.107.1
openSUSE:Leap 16.0 coredns 0 1.14.0-bp160.1.1
openSUSE:Tumbleweed coredns 0 1.12.4-2.1
openSUSE:Tumbleweed govulncheck-vulndb 0 0.0.20250917T170349-1.1

Related vulnerabilities