CVE-2023-28452

7.5 HIGH

📋 TL;DR

CVE-2023-28452 is a DNS resolver vulnerability in CoreDNS that allows attackers to cause denial of service by sending forged DNS responses that cause the resolver to ignore legitimate responses. This affects all CoreDNS deployments using the default configuration for DNS resolution. The vulnerability allows attackers to disrupt DNS resolution without needing to guess transaction IDs.

💻 Affected Systems

Products:
  • CoreDNS
Versions: All versions through 1.10.1
Operating Systems: All platforms running CoreDNS
Default Config Vulnerable: ⚠️ Yes
Notes: Affects CoreDNS deployments using the default DNS resolver configuration. Any CoreDNS instance performing recursive DNS resolution is vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete DNS resolution failure for affected CoreDNS instances, disrupting all dependent services that rely on DNS lookups through the vulnerable resolver.

🟠

Likely Case

Intermittent DNS resolution failures causing service disruptions, timeouts, and degraded application performance for systems relying on the vulnerable CoreDNS instance.

🟢

If Mitigated

Minimal impact if patched or workarounds implemented; some performance degradation possible under attack but DNS resolution continues.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploit requires network access to the CoreDNS resolver and ability to send forged DNS responses. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: CoreDNS 1.10.2 and later

Vendor Advisory: https://coredns.io/

Restart Required: Yes

Instructions:

1. Download CoreDNS 1.10.2 or later from https://coredns.io/ 2. Replace existing CoreDNS binary with patched version 3. Restart CoreDNS service 4. Verify version with 'coredns -version'

🔧 Temporary Workarounds

Disable Recursive Resolution

all

Configure CoreDNS to forward all queries to upstream resolvers instead of performing recursive resolution

Modify Corefile to use forward plugin instead of default resolver

Network Segmentation

linux

Restrict network access to CoreDNS resolver ports (typically UDP/TCP 53) to trusted sources only

iptables -A INPUT -p udp --dport 53 -s trusted_network -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j DROP

🧯 If You Can't Patch

  • Implement network ACLs to restrict DNS traffic to trusted sources only
  • Deploy redundant DNS resolvers and load balance between them to mitigate single point of failure

🔍 How to Verify

Check if Vulnerable:

Check CoreDNS version with 'coredns -version' or examine running process. If version is 1.10.1 or earlier, system is vulnerable.

Check Version:

coredns -version

Verify Fix Applied:

Verify CoreDNS version is 1.10.2 or later with 'coredns -version'. Test DNS resolution functionality after patch.

📡 Detection & Monitoring

Log Indicators:

  • Increased DNS query timeouts
  • Spike in DNS resolution failures
  • Unusual source IPs sending DNS responses

Network Indicators:

  • Unusual DNS response patterns
  • DNS queries from legitimate clients receiving no response
  • DNS traffic from unexpected sources

SIEM Query:

source="coredns" AND ("timeout" OR "failed" OR "no response")

🔗 References

📤 Share & Export