CVE-2024-8418
High · 7.5CVSS
7.5
EPSS
0.8%
Published
Sep 4, 2024
CISA due date
—
Cloudanix analysis
A bug in a container DNS service lets one person tie it up so nothing else can look up names, knocking applications offline until the service is fixed or restarted.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Network Service
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The server processes TCP DNS queries serially and does not enforce connection timeouts, allowing a single client to hold a TCP connection open indefinitely and starve the listener thread so that subsequent legitimate queries are queued or dropped.
Why it matters to the business
DNS resolution becomes unavailable for containers and dependent services, producing widespread application outages and operational downtime until the affected process is restarted or the connection is terminated.
How an attack unfolds
An attacker opens a TCP connection to the aardvark-dns listener and simply keeps the socket open without sending further data or closing it; because queries are handled one at a time, every other client experiences timeouts and resolution failures.
How to fix it
Upgrade to the next patched release of aardvark-dns once published; until then apply network-level controls that limit concurrent TCP connections per source IP or enforce aggressive idle timeouts on the DNS listener.
How to confirm the fix worked
Confirm the listener no longer accepts new TCP connections while an idle connection is held, or verify that query latency remains within expected bounds under load after the upgrade or mitigation is applied.
Typical attack path
- Discover an exposed aardvark-dns TCP listener (port 53 or custom).
- Establish a single TCP connection and leave it idle.
- Observe that subsequent DNS queries from other clients time out or are dropped.
- Maintain the connection to sustain the denial-of-service condition.
How to detect it
Review logs for sustained TCP connections to the DNS port that show no query activity after the initial handshake; correlate with spikes in connection table entries for the aardvark-dns process and sudden increases in DNS timeout errors reported by clients.
What your security team should do
- Prioritize deployment of the forthcoming fixed aardvark-dns package across all container hosts.
- Add connection-rate and idle-timeout rules at the host firewall or container network layer.
- Monitor DNS query success rates and TCP connection counts for the aardvark-dns process.
The record
A flaw was found in Aardvark-dns, which is vulnerable to a Denial of Service attack due to the serial processing of TCP DNS queries. An attacker can exploit this flaw by keeping a TCP connection open indefinitely, causing the server to become unresponsive and resulting in other DNS queries timing out. This issue prevents legitimate users from accessing DNS services, thereby disrupting normal operations and causing service downtime.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| crates.io | aardvark-dns | 1.12.0 | 1.12.2 |
| AlmaLinux:9 | aardvark-dns | 0 | 2:1.14.0-1.el9 |
| Debian:13 | aardvark-dns | 0 | 1.12.2-1 |
| Ubuntu:24.04:LTS | aardvark-dns | 0 | No fix |
| Ubuntu:24.10 | aardvark-dns | 0 | No fix |
| cargo | aardvark-dns | 1.12.0 | 1.12.2 |
| openSUSE:Tumbleweed | aardvark-dns | 0 | 1.12.2-1.1 |