CVE-2026-69186 c-ares: Memory-amplification denial of service via unvalidated DNS header record counts
A malicious DNS response can trigger excessive memory allocation in c-ares, leading to denial of service for applications using the library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-69186?
CVE-2026-69186 is a medium-severity denial of service vulnerability in c-ares, published on 18 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
c-ares is an asynchronous resolver library. Prior to 1.34.7, ares_dns_parse() trusts the attacker-controlled ANCOUNT, NSCOUNT, and ARCOUNT fields before confirming that the DNS response contains enough bytes for the claimed records. Because process_answer() invokes parsing before transaction ID and question validation, a malicious DNS response can cause ares_dns_record_rr_prealloc() and ares_array_set_size() to reserve disproportionate heap memory for a tiny message. Repeated responses create large allocation and release cycles that can degrade or deny name resolution, without causing memory corruption or information disclosure. This issue is fixed in version 1.34.7.
Weakness: CWE-400
Which versions are affected by CVE-2026-69186?
How do I fix CVE-2026-69186?
Upgrade to a fixed version.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-69186 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-69186 exists.
Sources
Also known as AZL-103304, AZL-103454, BELL-CVE-2026-69186, DEBIAN-CVE-2026-69186, ECHO-9e60-294a-7216, GHSA-jv8r-gqr9-68wj and 2 more.