Home

Description

A remote, unauthenticated attacker can trigger memory corruption in Zephyr's HTTP server WebSocket upgrade path by sending a crafted Sec-WebSocket-Key header. The HTTP/1 header parser copies the header into a fixed-size buffer using a bounded copy that does not guarantee NUL termination when the input length reaches the buffer size. During upgrade handling the buffer is copied to a local stack buffer and passed to strlen(); if no NUL exists in-bounds, strlen() reads beyond the stack buffer and subsequent concatenation with the WebSocket magic string can write out of bounds. This leads to out-of-bounds read and write on stack memory, resulting in crash (denial of service) and potentially code execution. The path is reachable when CONFIG_HTTP_SERVER_WEBSOCKET is enabled.

PUBLISHED Reserved 2026-03-27 | Published 2026-06-09 | Updated 2026-06-09 | Assigner zephyr




CRITICAL: 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Problem types

Improper Null Termination

Out-of-bounds Write

Product status

Default status
unaffected

3.7.0 (git)
affected

References

github.com/...zephyr/security/advisories/GHSA-wgr4-9pwq-94vj exploit

github.com/...zephyr/security/advisories/GHSA-wgr4-9pwq-94vj

cve.org (CVE-2026-5067)

nvd.nist.gov (CVE-2026-5067)

Download JSON