Impact
Zephyr’s IP socket recvmsg() implementation validates the ancillary control buffer only against the payload length, omitting the c‑msg header size. A caller can craft a control buffer that passes this check but is too small for the full aligned header plus payload. The resulting out‑of‑bounds write occurs in kernel‑space heap memory when CONFIG_USERSPACE is enabled, or corrupts the caller’s buffer in supervisor mode, potentially allowing an attacker to overwrite critical kernel data and achieve remote code execution or denial of service.
Affected Systems
Zephyr Project Zephyr OS is affected for all releases from v3.6.0 through v4.4.0. These versions contain the buggy insert_pktinfo() implementation that performs the undersized buffer validation.
Risk and Exploitability
The CVSS score of 8.7 classifies this as a high‑severity vulnerability. The EPSS score is not available, and the issue is not listed in the CISA KEV catalog, but the attack vector is reachable via any UDP or IPv6 socket that has IP_PKTINFO/IPV6_RECVPKTINFO enabled. An unprivileged userspace thread can trigger the overflow by performing a recvmsg() call with an undersized control buffer while a datagram is received, leading to kernel heap corruption that could be leveraged for privilege escalation or arbitrary code execution.
OpenCVE Enrichment