Impact
The DNS resolver in Zephyr checks for mDNS suffixes by comparing the final portion of a hostname with ".local" using a fixed seven‑byte memcmp. When the suffix is shorter, the comparison reads past the string terminator, producing an out‑of‑bounds read. The over‑read bytes are never returned, so no data leaks, but the fault can crash the process and cause a denial of service. This flaw is only present when CONFIG_MDNS_RESOLVER is enabled.
Affected Systems
Zephyr RTOS builds compiled with the CONFIG_MDNS_RESOLVER option enabled are affected. The vulnerability has existed since release v1.10.0 and was fixed by replacing the fixed‑length memcmp with a NUL‑safe strcmp in commit 448a21da12c9ea28f7fd12c6894e03a987b17a27.
Risk and Exploitability
The CVSS score of 3.7 reflects a low‑to‑moderate severity, and the EPSS score of < 1% indicates a very low likelihood of exploitation. The vulnerability is not listed in CISA’s KEV catalog. An attacker can trigger the fault by supplying a crafted hostname to getaddrinfo, dns_get_addr_info, or dns_resolve_name, especially when the query is copied into a tightly sized buffer with no slack. If the over‑read crosses a guard page or memory‑domain boundary, the process will fault, resulting in a denial of service. Because exploitation requires specific build configuration and control over the query string, the probability of widespread attacks is limited but not zero.
OpenCVE Enrichment