Skip to main content

Zephyr RTOS CVE-2026-13480

| EUVDEUVD-2026-66556 LOW
Improper Input Validation (CWE-20)
2026-08-26 zephyr
3.1
CVSS 3.1 · Vendor: zephyr

Severity by source

Vendor (zephyr) PRIMARY
3.1 LOW
AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:L
vuln.today AI
3.1 LOW

Session key possession gates all access (PR:H); LoRaWAN radio delivery sets AV:A/AC:H; overread reaches FUOTA buffers not attacker, giving C:L; no integrity impact; A:L reflects potential FUOTA data corruption.

3.1 AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:L
4.0 AV:A/AC:H/AT:N/PR:H/UI:N/VC:L/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (zephyr).

CVSS VectorVendor: zephyr

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

Lifecycle Timeline

2
Source Code Evidence Fetched
Aug 26, 2026 - 14:55 vuln.today
Analysis Generated
Aug 26, 2026 - 14:55 vuln.today

DescriptionCVE.org

The LoRaWAN TS004 Fragmented Data Block Transport handler frag_transport_package_callback() in subsys/lorawan/services/frag_transport.c parses downlink command bytes without validating that enough payload bytes remain before each access. The loop's only bound is rx_pos < len; after consuming the one-byte command id the handler cast rx_buf + rx_pos to a 10-byte struct frag_transport_setup_req, and for a DATA_FRAGMENT command passed &rx_buf[rx_pos] to the fragment decoder, which reads exactly ctx.frag_size bytes - with no remaining-length check in either case.

The fragment size is attacker-chosen in a preceding FRAG_SESSION_SETUP command (ctx.frag_size = req->frag_size, capped at CONFIG_LORAWAN_FRAG_TRANSPORT_MAX_FRAG_SIZE, default 232). rx_buf aliases the 255-byte static MacCtx.RxPayload buffer in the loramac-node MAC layer, while len is the actual decrypted payload length. By padding a downlink with mismatched-index DATA_FRAGMENT filler commands (each advancing rx_pos by three bytes without producing an answer) and appending one matching-index fragment near the end of the payload, an attacker can make the decoder read up to roughly frag_size bytes past the end of RxPayload, copying adjacent static memory into the decoder buffers and the FUOTA flash image.

The handler runs only on downlinks that have already passed the LoRaWAN frame MIC and FRMPayload decryption, so the defect is reachable only by a party holding the device's session keys (the FUOTA server or an attacker who has compromised those keys). The out-of-bounds bytes are never returned to the sender - the only uplink emitted is a status answer carrying fragment counts - so there is no direct disclosure channel, and on typical flat-memory LoRaWAN MCUs the over-read stays within mapped memory, making a crash unlikely. The impact is therefore a bounded out-of-bounds read with limited confidentiality consequence and no write or control-flow primitive. The fix adds remaining-length guards before each access.

AnalysisAI

Out-of-bounds read in Zephyr RTOS's LoRaWAN TS004 Fragmented Data Block Transport handler allows a party holding valid device session keys to trigger a bounded overread of up to 232 bytes beyond the 255-byte MacCtx.RxPayload static buffer, with overread data silently written into decoder buffers and the FUOTA flash image rather than returned to the attacker. The vulnerable function frag_transport_package_callback() in subsys/lorawan/services/frag_transport.c casts rx_buf + rx_pos to fixed-size structs and passes the pointer to the fragment decoder without first verifying that sufficient payload bytes remain. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Persist
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Exploitation requires that the attacker already possess the target device's active LoRaWAN session keys (AppSKey and NwkSKey), because the vulnerable handler is only reached after the MAC layer successfully validates the frame Message Integrity Code (MIC) and decrypts the FRMPayload - both operations depend on those keys. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 3.1 score of 3.1 (Low) correctly characterizes this vulnerability: AV:A restricts attack delivery to the LoRaWAN radio interface, AC:H reflects the multi-step setup required (session establishment plus crafted fragment sequence), and PR:H is the dominant risk-limiting factor - exploitation is gated on possession of the device's LoRaWAN session keys (AppSKey/NwkSKey), meaning the threat actor is either the legitimate FUOTA server or a party who has already fully compromised session key material. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation The Zephyr Project has confirmed a patch in commit 237309ea7c46ce85cedebf33dfea639aa2f5e2ca, which adds explicit `(len - rx_pos)` remaining-length guards before the `frag_transport_setup_req` cast, the `frag_transport_data_header` cast, and the `ctx.frag_size`-byte decoder read in `frag_transport_package_callback()`. … Detailed patch versions, workarounds, and compensating controls in full report.

Threat intelligence, references, and detailed analysis are available after sign-in.

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-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-2026-1678 CRITICAL POC
9.4 Mar 05

Buffer overflow in Zephyr RTOS dns_unpack_name() function causing OOB writes. PoC available.

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

Share

CVE-2026-13480 vulnerability details – vuln.today

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