ZeroHour

CVE-2026-33630

mass

Use-after-free/double-free in c-ares resolver library, fixed in 1.34.7

CVSS 3.1
7.5 high
EPSS
<1%p38
Published
()
Modified
AI analysis

c-ares, a widely used asynchronous DNS resolver library, contains a use-after-free/double-free (CWE-415/CWE-416) in versions 1.32.3 through before 1.34.7, where a query's callback is invoked while the query is still linked in the channel's internal lookup structures. The flaw is reachable at multiple points in the resend/finish path — timeout handling, response handling, and query dispatch — and if the callback frees the query (or, for ares_getaddrinfo(), the owning host_query), the freed object is then accessed and/or freed a second time. An attacker who can influence DNS query completion, for example via spoofed, delayed, or malformed DNS responses on a network path the application resolves against, can crash the process, resulting in denial of service (CVSS 3.1: 7.5, AV:N/AC:L/PR:N/UI:N with high availability impact). Any application, runtime, or distribution package that bundles or links the affected c-ares versions is affected, including consumers such as Node.js, gRPC, and curl builds that use the c-ares resolver. There is no known public proof-of-concept, the flaw is not in CISA KEV, and EPSS estimates only a 0.5% probability of exploitation within 30 days.

What to do: Upgrade c-ares to 1.34.7 or later, and verify the c-ares version embedded or linked by downstream applications and runtimes (Node.js, gRPC, curl) as well as distribution packages, since patching the standalone library alone does not fix statically linked consumers. If upgrading is not immediately possible, prioritize hosts where untrusted DNS responses can reach the process and apply vendor/package updates as they become available. Monitor advisories from applications that bundle c-ares for rebuilt releases containing the fixed version.

Affected
c-ares project c-ares (asynchronous DNS resolver library)>= 1.32.3 and < 1.34.7 (fixed in 1.34.7)
Estimated exposure
masstens of millions of installations ship the affected library (bundled in runtimes like Node.js and gRPC and distributed by major Linux distributions) — c-ares is a ubiquitous resolver library bundled by widely deployed consumers such as Node.js, gRPC, and curl and packaged by mainstream Linux distributions, so the installed base is in the millions, though actual remotely reachable attack…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

c-ares is an asynchronous resolver library. From ver 1.32.3 until 1.34.7, a use-after-free / double-free in c-ares' query-completion handling. The same flaw — a query's callback being invoked while the query is still linked in the channel's internal lookup structures — is present at multiple points in the resend/finish path (timeout handling, response handling, and query dispatch). If the query, or for ares_getaddrinfo() the owning host_query, is freed as a side effect of that callback, it is then accessed and/or freed a second time. This vulnerability is fixed in ver 1.34.7.

Weakness
CWE-415, CWE-416
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

In the news

No ingested article mentions this CVE yet.