Skip to main content

Zephyr RTOS EUVDEUVD-2026-35348

| CVE-2026-5067 CRITICAL
Improper Null Termination (CWE-170)
2026-06-09 vulnerabilities@zephyrproject.org
9.8
CVSS 3.1 · Vendor: zephyrproject
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Identify reachable Zephyr HTTP server
  2. Delivery
    Craft oversized Sec-WebSocket-Key header
  3. Exploit
    Send HTTP WebSocket upgrade request
  4. Install
    Trigger non-NUL-terminated header copy
  5. C2
    strlen overruns stack buffer
  6. Execute
    Out-of-bounds write during magic-string concatenation
  7. Impact
    Crash device or execute arbitrary code

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Null terminator handling
Exploitation Conditions

Exploitation requires that the target Zephyr image was built with CONFIG_HTTP_SERVER_WEBSOCKET enabled and that the HTTP server is bound to a network interface reachable by the attacker. No authentication, no user interaction, and no prior foothold are required, matching CVSS PR:N/UI:N. The attacker must be able to send a single TCP/HTTP request to the listening port and must craft the Sec-WebSocket-Key header to be exactly the size of the parser's fixed-size buffer so that the bounded copy omits the trailing NUL - sending a short, RFC-compliant key will not trigger the bug. Reliable code execution (as opposed to just crash/DoS) additionally depends on the target board lacking stack canaries and having a predictable stack layout, which is common but not universal on Zephyr targets.

Impact

All signals converge toward high priority: CVSS 9.8 with AV:N/AC:L/PR:N/UI:N indicates trivially reachable network exploitation without authentication or user interaction, and full C/I/A impact. CWE-170 leading to stack-based OOB write is a classic memory corruption primitive with realistic code execution potential on embedded targets that typically lack stack canaries, ASLR, or W^X protections, raising the practical RCE likelihood above what it would be on a hardened OS. EPSS and CISA KEV data were not provided in the input, so no public exploit identified at time of analysis and no confirmation of active exploitation; however, given the simplicity of the trigger (a single oversized Sec-WebSocket-Key header) public PoCs are likely to appear quickly. The mitigating factor is exposure scope: only devices that both enable CONFIG_HTTP_SERVER_WEBSOCKET and expose the HTTP server on a reachable network are at risk, which on IoT/OT fleets can still be substantial.

Exploit ScenarioDerived

An attacker on the same network as an exposed Zephyr-based IoT device (for example, a smart sensor, industrial gateway, or medical device) sends a single HTTP GET request to the device's HTTP server with an Upgrade: websocket header and an oversized Sec-WebSocket-Key value that exactly fills the parser's fixed buffer with no embedded NUL. The malformed header triggers an out-of-bounds read followed by an out-of-bounds write during the magic-string concatenation, immediately crashing the device or, with careful payload crafting on a target without stack protections, redirecting execution to attacker-controlled shellcode. No public exploit identified at time of analysis, but the trigger is simple enough to develop with curl and a known firmware image.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 09, 2026

Remote code execution and denial of service in Zephyr RTOS HTTP server (versions 3.7.0 through 4.3.0) allow unauthenticated network attackers to corrupt stack memory by sending a crafted Sec-WebSocket-Key header during WebSocket upgrade. The flaw is a CWE-170 improper NUL-termination issue where a bounded copy fails to terminate the header buffer, causing strlen() and subsequent concatenation to read and write past stack bounds. No public exploit identified at time of analysis, but the CVSS 9.8 rating and trivially reachable attack surface make this a high-priority issue for any Zephyr deployment with CONFIG_HTTP_SERVER_WEBSOCKET enabled.

RemediationAI

Upgrade Zephyr to a release containing the fix referenced in advisory GHSA-wgr4-9pwq-94vj (https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-wgr4-9pwq-94vj); the input data does not name an exact fix version, so consult the advisory for the patched tag and rebuild and reflash device firmware accordingly - patch available per vendor advisory. As a compensating control until firmware can be updated, disable CONFIG_HTTP_SERVER_WEBSOCKET in the build configuration and rebuild, which removes the vulnerable code path entirely at the cost of losing WebSocket support for any application features that depend on it. If disabling WebSocket support is not feasible, restrict network reachability of the HTTP server by binding it to a management VLAN or placing the device behind a reverse proxy that enforces a strict maximum length on the Sec-WebSocket-Key header (RFC 6455 specifies a base64-encoded 16-byte nonce, so 24 characters plus CRLF is the legitimate maximum) - note that this only mitigates external exploitation and does not protect against attackers on the same network segment.

Affected VersionsENISA

Zephyr 3.7.0 ≤4.3.0

Affected Packages

euvd zephyr no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Zephyr is a widely adopted real-time operating system (RTOS) used in resource-constrained embedded and IoT devices, maintained by the Linux Foundation's Zephyr Project. The vulnerable component is the built-in HTTP/1 server's WebSocket upgrade handler, gated by the CONFIG_HTTP_SERVER_WEBSOCKET Kconfig option. The root cause maps to CWE-170 (Improper Null Termination): the header parser uses a bounded copy primitive (likely strncpy-style) that, when the input fully fills the fixed-size destination buffer, omits the trailing NUL. Downstream code then copies that non-terminated buffer to a stack-local buffer and calls strlen() on it, walking past the buffer until it finds a stray zero byte. The subsequent concatenation with the RFC 6455 WebSocket magic GUID ('258EAFA5-E914-47DA-95CA-C5AB0DC85B11') then writes out-of-bounds on the stack, creating both an OOB read and OOB write primitive against return addresses and saved frame data.

Know when Zephyr gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (zephyrproject) PRIMARY 9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from Vendor (zephyrproject) · only source for this CVE.

CVSS VectorVendor: zephyrproject

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

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.

Executive ViewAI

Why It Matters

Zephyr RTOS HTTP server (versions 3.7.0-4.3.0) contains a critical remote code execution vulnerability accessible to unauthenticated attackers via malformed WebSocket upgrade requests, with no vendor patch currently available. Organizations using Zephyr for embedded IoT or edge systems with WebSocket functionality face immediate risk of system compromise or service disruption. The trivially reachable attack surface and absence of a fix make this a priority for rapid vulnerability management.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Disable CONFIG_HTTP_SERVER_WEBSOCKET in build configuration if WebSocket functionality is not required; (2) Restrict network access to Zephyr HTTP servers using firewalls or network segmentation; (3) Deploy reverse proxy or WAF with rules to reject HTTP upgrade requests with malformed or oversized Sec-WebSocket-Key headers; (4) Monitor for suspicious WebSocket upgrade attempts in application logs. Monitor vendor advisory channels and upgrade immediately upon patch release.

Threat Intelligence Overview

EPSS Score
0.2%
Top 64% exploitable
Social Media
2
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Total

Priority Score

49
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +49
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Related Vulnerabilities in Zephyr RTOS Memory Corruption Vulnerabilities

View all 2

More in Zephyr

View all
CVE-2023-4260 CRITICAL POC
10.0 Sep 27

Potential off-by-one buffer overflow vulnerability in the Zephyr fuse file system. Rated critical severity (CVSS 10.0),

CVE-2026-1678 CRITICAL POC
9.8 Mar 05

An out-of-bounds write in the Zephyr RTOS DNS resolver (dns_unpack_name()) lets a crafted DNS response corrupt memory on

CVE-2023-5055 CRITICAL POC
9.8 Nov 21

Possible variant of CVE-2021-3434 in function le_ecred_reconf_req. Rated critical severity (CVSS 9.8), this vulnerabilit

CVE-2023-4257 CRITICAL POC
9.8 Oct 13

Unchecked user input length in /subsys/net/l2/wifi/wifi_shell.c can cause buffer overflows. Rated critical severity (CVS

CVE-2023-3725 CRITICAL POC
9.8 Oct 06

Potential buffer overflow vulnerability in the Zephyr CAN bus subsystem. Rated critical severity (CVSS 9.8), this vulner

CVE-2021-3323 CRITICAL POC
9.8 Oct 12

Integer Underflow in 6LoWPAN IPHC Header Uncompression in Zephyr. Rated critical severity (CVSS 9.8), this vulnerability

CVE-2021-3625 CRITICAL POC
9.8 Oct 05

Buffer overflow in Zephyr USB DFU DNLOAD. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable

CVE-2021-3319 CRITICAL POC
9.8 Oct 05

DOS: Incorrect 802154 Frame Validation for Omitted Source / Dest Addresses. Rated critical severity (CVSS 9.8), this vul

CVE-2018-1000800 CRITICAL POC
9.8 Sep 06

zephyr-rtos version 1.12.0 contains a NULL base pointer reference vulnerability in sys_ring_buf_put(), sys_ring_buf_get(

CVE-2023-4264 CRITICAL POC
9.6 Sep 27

Potential buffer overflow vulnerabilities n the Zephyr Bluetooth subsystem. Rated critical severity (CVSS 9.6), this vul

CVE-2024-1638 CRITICAL POC
9.1 Feb 19

The documentation specifies that the BT_GATT_PERM_READ_LESC and BT_GATT_PERM_WRITE_LESC defines for a Bluetooth characte

CVE-2023-5753 HIGH POC
8.8 Oct 25

Potential buffer overflows in the Bluetooth subsystem due to asserts being disabled in /subsys/bluetooth/host/hci_core.c

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy