VulnSea

Zephyr vulnerabilities

CVEs whose affected-version data names the Zephyr package. Each record lists the affected and patched versions; check a specific version with the dependency checker or POST /api/sbom.

216 CVEsRSS

CVE-2026-12366High· 8.8
2mo ago

Use-after-free freeing an armed dynamically-allocated k_timer in Zephyr userspace object disposal

Zephyr's dynamic kernel-object disposal path unref_check() in kernel/userspace/userspace.c frees an object's storage (k_free(dyn->data)) once its reference count reaches zero, after running a per-object-type cleanup. The cleanup switch h…

▾ Twilightzephyrproject · zephyrEPSS 0.17%via CVEORG
CVE-2026-12364High· 8.4
2mo ago

Missing user-space pointer validation in logging syscall z_log_msg_static_create allows kernel memory disclosure and denial of service

The user-space system-call verifier z_vrfy_z_log_msg_static_create() in subsys/logging/log_msg.c was a pure pass-through: it forwarded the caller-supplied source, desc, package, and data arguments directly to the kernel-mode implementati…

▾ Twilightzephyrproject · zephyrEPSS 0.16%via CVEORG
CVE-2026-12363Medium· 4.2
2mo ago

Out-of-bounds write in LoRaWAN fragmented transport from a fragment index of 0

The LoRaWAN Fragmented Data Block Transport service (subsys/lorawan/services/frag_transport.c) does not validate the fragment counter in a received DATA_FRAGMENT command before forwarding it to the configured decoder. In frag_transport_p…

▾ Sunlitzephyrproject · zephyrEPSS 0.24%via CVEORG
CVE-2026-12236Medium· 6.5
2mo ago

Infinite loop (DoS) in Bluetooth GATT client parsing of Read-By-Type responses with zero data length

The Bluetooth host GATT client function parse_read_std_char_desc() in subsys/bluetooth/host/gatt.c parses an ATT Read By Type Response received from a remote GATT server during BT_GATT_DISCOVER_STD_CHAR_DESC discovery. The per-entry stri…

▾ Sunlitzephyrproject · zephyrEPSS 0.16%via CVEORG
CVE-2026-12233Medium· 5.9
2mo ago

Uninitialized mutex in TLS trusted-credential backend causes kernel NULL-deref DoS under contention

The PSA Protected Storage credential backend (subsys/net/lib/tls_credentials/tls_credentials_trusted.c) declared its credential-store mutex as a plain zero-filled static struct k_mutex credential_lock; and never called k_mutex_init() on …

▾ Sunlitzephyrproject · zephyrEPSS 0.51%via CVEORG
CVE-2026-12232Medium· 6.1
2mo ago

Out-of-bounds read via unvalidated stream_id in Intel ALH DAI get_properties

The Intel ALH digital-audio-interface driver function dai_alh_get_properties() in drivers/dai/intel/alh/alh.c used a caller-supplied int stream_id with no range validation. The value indexes the fixed-size static const uint8_t alh_handsh…

▾ Sunlitzephyrproject · zephyrEPSS 0.15%via CVEORG
CVE-2026-12235Medium· 6.3PoC
2mo ago

Out-of-bounds write in Xtensa llext PLT relocation from malformed ELF (CWE-787)

The Linkable Loadable Extensions (llext) subsystem mis-handles PLT/RELA relocation entries when linking a relocatable (partially-linked) ELF extension. In llext_link_plt() (subsys/llext/llext_link.c), the relocatable branch (tgt != NULL,…

▾ Twilightzephyrproject · zephyrEPSS 0.14%via CVEORG
CVE-2026-12052Medium· 5.2
2mo ago

Out-of-bounds write in USB CDC NCM control handler when host wLength is smaller than the response

The USB device-side CDC NCM class control-to-host handler usbd_cdc_ncm_cth in subsys/usb/device_next/class/usbd_cdc_ncm.c builds a fixed-size response for the GET_NTB_PARAMETERS (28-byte struct ntb_parameters) and GET_NTB_INPUT_SIZE (8-b…

▾ Sunlitzephyrproject · zephyrEPSS 0.27%via CVEORG
CVE-2026-8718High· 8.4PoC
2mo ago

Out-of-bounds write in DTLS peer Connection ID getsockopt (`TLS_DTLS_PEER_CID_VALUE`) in Zephyr net sockets/TLS

tls_opt_dtls_peer_connection_id_value_get() in subsys/net/lib/sockets/sockets_tls.c, which handles getsockopt(SOL_TLS, TLS_DTLS_PEER_CID_VALUE), passed the caller-supplied optval directly to mbedtls_ssl_get_peer_cid() without verifying t…

▾ Midnightzephyrproject · zephyrEPSS 0.17%via CVEORG
CVE-2026-11810High· 7.5
2mo ago

NULL-pointer dereference in UpdateHub OTA agent on empty inner metadata array (remote DoS)

The UpdateHub firmware-update agent's probe handler (z_impl_updatehub_probe() in subsys/mgmt/updatehub/updatehub.c) parses the JSON metadata returned by the update server into a fixed two-level nested-array struct. After parsing it valid…

▾ Twilightzephyrproject · zephyrEPSS 0.47%via CVEORG
CVE-2026-11811Low· 3.7
2mo ago

Socket file-descriptor leak in UpdateHub OTA client start_coap_client() leading to resource-exhaustion DoS

The UpdateHub over-the-air update client's start_coap_client() in subsys/mgmt/updatehub/updatehub.c leaks the CoAP/DTLS socket descriptor on its connection-setup failure paths. The shared error: cleanup gated socket closing on a ret > 0 …

▾ Sunlitzephyrproject · zephyrEPSS 0.40%via CVEORG
CVE-2026-11809Low· 3.7
2mo ago

UpdateHub probe: uninitialized-heap out-of-bounds read of network-supplied metadata

The UpdateHub OTA client in subsys/mgmt/updatehub/updatehub.c contains an out-of-bounds / uninitialized-memory read in z_impl_updatehub_probe(). The probe response from the UpdateHub server is copied into a heap buffer (metadata) that is…

▾ Sunlitzephyrproject · zephyrEPSS 0.35%via CVEORG
CVE-2026-11812Low· 2.5
2mo ago

UpdateHub: race condition on shared context causes out-of-bounds write and DoS

The UpdateHub management subsystem (subsys/mgmt/updatehub/updatehub.c) drives every update operation through a single file-scope ctx structure that holds the CoAP block context, payload buffer, status code, socket, and a one-element poll…

▾ Sunlitzephyrproject · zephyrEPSS 0.10%via CVEORG
CVE-2026-11742Low· 3.6
3mo ago

Use-after-free race in kernel `k_queue_peek_head/tail` due to missing spinlock

The kernel queue helper z_queue_node_peek() in kernel/queue.c dereferences a node taken from a queue's data_q list, reading the node's flag byte and, for items enqueued via k_queue_alloc_append/alloc_prepend, the data pointer of an inter…

▾ Sunlitzephyrproject · zephyrEPSS 0.13%via CVEORG
CVE-2026-11743Medium· 6.6
3mo ago

Missing negative-offset/overflow check in SF32LB MPI QSPI NOR flash driver allows out-of-bounds read and write

The SF32LB MPI QSPI NOR flash driver (drivers/flash/flash_sf32lb_mpi_qspi_nor.c) validated the flash offset and length on its read and write paths with the test (offset + size) > data->size. Because offset is a signed off_t while size is…

▾ Sunlitzephyrproject · zephyrEPSS 0.15%via CVEORG
CVE-2026-11368High· 7.1
3mo ago

The Bluetooth host ATT layer (subsys/bluetooth/host/att.c) associates each in-flight ATT TX buffer with its owning channel via the static tx_meta_data_storage[] array (data->att_chan = chan)

The Bluetooth host ATT layer (subsys/bluetooth/host/att.c) associates each in-flight ATT TX buffer with its owning channel via the static tx_meta_data_storage[] array (data->att_chan = chan). When a buffer's last reference is dropped, it…

▾ Twilightzephyrproject · zephyrEPSS 0.30%via NVD
CVE-2026-10849High· 8.2
3mo ago

The hawkBit device management client in subsys/mgmt/hawkbit accumulates the body of an HTTP response from the update server into a heap buffer in response_json_cb() (subsys/mgmt/hawkbit/hawkbit.c)

The hawkBit device management client in subsys/mgmt/hawkbit accumulates the body of an HTTP response from the update server into a heap buffer in response_json_cb() (subsys/mgmt/hawkbit/hawkbit.c). The buffer is sized to hold the receive…

▾ Twilightzephyrproject · zephyrEPSS 0.51%via NVD
CVE-2026-10686Medium· 5.8
3mo ago

Zephyr's IPv6 forwarding path re-sent routed unicast packets without ever decrementing the IPv6 hop limit

Zephyr's IPv6 forwarding path re-sent routed unicast packets without ever decrementing the IPv6 hop limit. Both routing branches of ipv6_route_packet() (subsys/net/ip) were affected: the explicit-route path (net_route_packet()) and the o…

▾ Sunlitzephyrproject · zephyrEPSS 0.64%via NVD
CVE-2026-10685High· 7.6
3mo ago

The Zephyr Bluetooth GATT client CCC-write response handler gatt_write_ccc_rsp() in subsys/bluetooth/host/gatt.c invoked the application's params->subscribe() callback after it had already called params->notify(conn, params, NULL, 0). P…

The Zephyr Bluetooth GATT client CCC-write response handler gatt_write_ccc_rsp() in subsys/bluetooth/host/gatt.c invoked the application's params->subscribe() callback after it had already called params->notify(conn, params, NULL, 0). P…

▾ Twilightzephyrproject · zephyrEPSS 0.30%via NVD
CVE-2026-10683Low· 2.4
3mo ago

DesignWare I2C target driver can be wedged into a permanent stuck state by an on-bus master (DoS)

In the Synopsys DesignWare I2C driver (drivers/i2c/i2c_dw.c) operating in target/slave mode, the rx_full interrupt handler gates the write_requested() callback on dw->state != CMD_SEND, and dw->state is only reset to READY on a STOP inte…

▾ Sunlitzephyrproject · zephyrEPSS 0.24%via CVEORG
CVE-2026-10682Medium· 6.6
3mo ago

Out-of-bounds write in Zephyr `log_filter_set` syscall verifier reachable from userspace

The userspace verifier z_vrfy_log_filter_set() for the log_filter_set syscall in subsys/logging/log_mgmt.c performed a signed comparison against the int16_t src_id parameter: src_id < (int16_t)log_src_cnt_get(domain_id). Any negative val…

▾ Sunlitzephyrproject · zephyrEPSS 0.17%via CVEORG
CVE-2026-10681Medium· 6.5
3mo ago

In Zephyr's userspace dynamic-objects subsystem, thread_idx_alloc() in kernel/userspace/userspace.c allocated a new thread permission index from the global _thread_idx_map[] bitmap without holding lists_lock. On SMP systems, two user-mo…

In Zephyr's userspace dynamic-objects subsystem, thread_idx_alloc() in kernel/userspace/userspace.c allocated a new thread permission index from the global _thread_idx_map[] bitmap without holding lists_lock. On SMP systems, two user-mo…

▾ Sunlitzephyrproject · zephyrEPSS 0.11%via NVD
CVE-2026-7007Medium· 4.6
3mo ago

Division by zero in Zephyr ext2 superblock parsing allows DoS via crafted filesystem image

The Zephyr ext2 file system validates the on-disk superblock in ext2_verify_disk_superblock() (subsys/fs/ext2/ext2_impl.c) before completing a mount. The validator checked the magic number, block size, revision and feature flags, but did…

▾ Sunlitzephyrproject · zephyrEPSS 0.24%via CVEORG
CVE-2026-10679Low· 3.3
3mo ago

Divide-by-zero in DesignWare SPI driver reachable from spi_transceive syscall (local DoS)

The DesignWare SPI driver (drivers/spi/spi_dw.c) computed the SPI BAUDR clock divider as info->clock_frequency / config->frequency without validating config->frequency. spi_transceive is a Zephyr __syscall and its verify handler (driver…

▾ Sunlitzephyrproject · zephyrEPSS 0.14%via CVEORG
CVE-2026-10680High· 7.6
3mo ago

Out-of-bounds access in Zephyr BR/EDR L2CAP configuration request handling via `uint16_t` length underflow

The Classic (BR/EDR) L2CAP signaling handlers l2cap_br_conf_req() and l2cap_br_conf_rsp() in subsys/bluetooth/host/classic/l2cap_br.c validated the minimum command size against buf->len (the bytes remaining in the whole received PDU) ins…

▾ Twilightzephyrproject · zephyrEPSS 0.16%via CVEORG
CVE-2026-10678High· 8.1
3mo ago

NULL-pointer / out-of-bounds write in Zephyr MCTP I2C+GPIO target binding driven by an unauthenticated I2C controller

The MCTP-over-I2C+GPIO target binding in Zephyr (subsys/pmci/mctp/mctp_i2c_gpio_target.c) processes pseudo-register writes from an I2C bus master byte-by-byte in mctp_i2c_gpio_target_write_received() without validating the order or the r…

▾ Twilightzephyrproject · zephyrEPSS 0.39%via CVEORG
CVE-2026-10677Medium· 6.5
3mo ago

Kernel heap memory leak in `z_vrfy_k_poll()` lets an unprivileged user thread exhaust the kernel resource pool

The CONFIG_USERSPACE syscall verifier z_vrfy_k_poll() in kernel/poll.c allocates a kernel-side copy of the user-supplied k_poll_event[] via z_thread_malloc() and then validates each event's object handle. Before this fix, validation used…

▾ Sunlitzephyrproject · zephyrEPSS 0.14%via CVEORG
CVE-2026-10674Medium· 5.5
3mo ago

DoS (hard fault) in NXP LPUART driver: unsupported runtime UART config leaves clocks disabled

The NXP LPUART serial driver (drivers/serial/uart_mcux_lpuart.c), when CONFIG_UART_USE_RUNTIME_CONFIGURE is enabled, called LPUART_Deinit() at the start of mcux_lpuart_configure(), which disables the LPUART peripheral clocks. The request…

▾ Sunlitzephyrproject · zephyrEPSS 0.14%via CVEORG
CVE-2026-10675Medium· 4.3
3mo ago

Bluetooth Mesh PB-ADV: invalidated provisioning link kept alive indefinitely, blocking (re)provisioning (DoS)

In Zephyr's Bluetooth Mesh PB-ADV provisioning bearer (subsys/bluetooth/mesh/pb_adv.c), prov_msg_recv() rescheduled the provisioning protocol watchdog timer unconditionally at the top of the function, before the FCS check and before the …

▾ Sunlitzephyrproject · zephyrEPSS 0.39%via CVEORG
CVE-2026-10673High· 8.3PoC
3mo ago

Out-of-bounds write in ADIN2111/ADIN1110 OA SPI Ethernet RX frame reassembly

The Zephyr ADIN2111/ADIN1110 10BASE-T1S/T1L Ethernet driver (drivers/ethernet/eth_adin2111.c) reassembles received Ethernet frames in OPEN Alliance (OA) SPI mode by copying device-supplied 64-byte data chunks into a fixed static buffer c…

▾ Midnightzephyrproject · zephyrEPSS 0.42%via CVEORG
Zephyr vulnerabilities (CVEs) — page 5 · VulnSea