VYPR

Vendor CVEs

Zephyr OS

All CVEs

65 total · sorted by risk
  • CVE-2026-10673HigJul 15, 2026
    risk 0.54cvss 8.3epss 0.00

    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 ctx->buf of size…

  • CVE-2023-4424HigNov 21, 2023
    risk 0.54cvss 8.3epss 0.00

    An malicious BLE device can cause buffer overflow by sending malformed advertising packet BLE device using Zephyr OS, leading to DoS or potential RCE on the victim BLE device.

  • CVE-2026-13212HigAug 24, 2026
    risk 0.50cvss 8.8epss 0.00

    The Zephyr virtio driver does not validate the descriptor-chain head id that the virtio device writes into the used ring. In virtio_isr() (drivers/virtio/virtio_common.c), the device-written vq->used->ring[idx].id is used directly as an index into vq->recv_cbs[] and vq->desc[],…

  • CVE-2026-12366HigAug 14, 2026
    risk 0.50cvss 8.8epss 0.00

    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 handled only K_OBJ_MSGQ and K_OBJ_STACK;…

  • CVE-2026-10643HigJun 28, 2026
    risk 0.50cvss 8.7epss 0.00

    Zephyr's IP socket recvmsg() implementation (subsys/net/lib/sockets/sockets_inet.c, insert_pktinfo()) validated the user-supplied ancillary (msg_control) buffer using only the payload length (msg->msg_controllen < pktinfo_len) before writing a full control message consisting of…

  • CVE-2023-4263HigOct 13, 2023
    risk 0.49cvss 7.6epss 0.00

    Potential buffer overflow vulnerability in the Zephyr IEEE 802.15.4 nRF 15.4 driver

  • CVE-2021-3321HigOct 12, 2021
    risk 0.49cvss 7.5epss 0.01

    Integer Underflow in Zephyr in IEEE 802154 Fragment Reassembly Header Removal. Zephyr versions >= >=2.4.0 contain Integer Overflow to Buffer Overflow (CWE-680). For more information, see https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-w44j-66g7-xw99

  • CVE-2026-10678HigJul 21, 2026
    risk 0.46cvss 8.1epss 0.00

    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 receive buffer. In the affected versions…

  • CVE-2026-10671HigJul 14, 2026
    risk 0.46cvss 7.1epss 0.00

    In Zephyr's kernel pipe implementation, the userspace syscall verifier z_vrfy_k_pipe_init() in kernel/pipe.c used K_SYSCALL_OBJ() (which requires the kernel object to already be initialized) instead of K_SYSCALL_OBJ_NEVER_INIT() (which rejects an already-initialized object). As…

  • CVE-2026-10658HigJun 23, 2026
    risk 0.46cvss 7.1epss 0.00

    bt_iso_recv() in subsys/bluetooth/host/iso.c pulled the ISO SDU header (4 bytes) or, when the timestamp flag is set, the timestamped SDU header (8 bytes) from the inbound HCI ISO Data buffer via net_buf_pull_mem() without first checking buf->len. The upstream hci_iso() handler…

  • CVE-2023-4259HigSep 26, 2023
    risk 0.46cvss 7.1epss 0.01

    Two potential buffer overflow vulnerabilities at the following locations in the Zephyr eS-WiFi driver source code.

  • CVE-2026-10667HigJul 12, 2026
    risk 0.44cvss 7.8epss 0.00

    Zephyr's dynamic kernel-object tracking (kernel/userspace/userspace.c, formerly kernel/userspace.c) maintains a doubly-linked list (obj_list) of dynamically allocated kernel objects. Iteration over this list in k_object_wordlist_foreach() was performed under lists_lock using the…

  • CVE-2026-11810HigAug 10, 2026
    risk 0.42cvss 7.5epss 0.00

    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 validates only the outer array length…

  • CVE-2026-10685HigJul 31, 2026
    risk 0.42cvss 7.6epss 0.00

    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). Per the public GATT API, a notify callback…

  • CVE-2025-12899MedJan 30, 2026
    risk 0.42cvss 6.5epss 0.00

    A flaw in Zephyr’s network stack allows an IPv4 packet containing ICMP type 128 to be misclassified as an ICMPv6 Echo Request. This results in an out-of-bounds memory read and creates a potential information-leak vulnerability in the networking subsystem.

  • CVE-2026-10665HigJul 12, 2026
    risk 0.41cvss 7.4epss 0.01

    In Zephyr's WireGuard subsystem (subsys/net/lib/wireguard), wg_process_data_message() in wg_crypto.c linearizes an inbound transport-data payload into a fixed pool buffer of CONFIG_WIREGUARD_BUF_LEN bytes before decryption. The call net_buf_linearize(buf->data, data_len,…

  • CVE-2026-10646HigJun 28, 2026
    risk 0.41cvss 7.4epss 0.00

    Zephyr's BSD-sockets getaddrinfo() implementation (subsys/net/lib/sockets/getaddrinfo.c) passes a pointer to a stack-allocated state object (struct getaddrinfo_state ai_state) as the user_data of an asynchronous DNS resolver query. The socket layer waits on a semaphore with a…

  • CVE-2026-10641HigJun 17, 2026
    risk 0.39cvss 7.1epss 0.00

    Zephyr's Bluetooth Classic Hands-Free Profile (HFP) Hands-Free role parser (subsys/bluetooth/host/classic/hfp_hf.c) contains an out-of-bounds write. During Service Level Connection setup the HF sends AT+CIND=? and parses the AG's +CIND: response in cind_handle(), which assigns a…

  • CVE-2026-13215MedAug 25, 2026
    risk 0.37cvss 6.8epss 0.00

    The Zephyr ext2 filesystem driver fails to validate the s_log_block_size field of the on-disk superblock when mounting a filesystem. ext2_verify_disk_superblock() in subsys/fs/ext2/ext2_impl.c checks the magic number, revision, inode size and group counts, but never bounds…

  • CVE-2026-10682MedJul 27, 2026
    risk 0.36cvss 6.6epss 0.00

    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 value for src_id (e.g. -1) trivially…

  • CVE-2026-14366MedAug 31, 2026
    risk 0.35cvss 6.4epss 0.00

    The Silicon Labs SiWx917 WiFi driver's transmit callback siwx91x_send() in drivers/wifi/siwx91x/siwx91x_wifi.c frees a network packet it does not own. In the Zephyr TX path the net_pkt is owned by the L2/networking stack; the driver only borrows it to copy the frame bytes into a…

  • CVE-2026-12632MedAug 18, 2026
    risk 0.35cvss 6.5epss 0.00

    Zephyr's Precision Time Protocol receive handler ptp_msg_post_recv() in subsys/net/lib/ptp/msg.c takes the 4-bit message type straight off the wire via ptp_msg_type() (msg->header.type_major_sdo_id & 0xF, range 0-15) and uses it to index the msg_size[] table. That table only…

  • CVE-2026-10681MedJul 25, 2026
    risk 0.35cvss 6.5epss 0.00

    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-mode threads invoking the…

  • CVE-2026-10677MedJul 21, 2026
    risk 0.35cvss 6.5epss 0.00

    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 K_OOPS(K_SYSCALL_OBJ(...)) inline inside…

  • CVE-2026-10660MedJul 11, 2026
    risk 0.35cvss 6.4epss 0.00

    The Bluetooth BAP Broadcast Assistant GATT client in subsys/bluetooth/audio/bap_broadcast_assistant.c reassembled remote Broadcast Receive State data into a single file-static net_buf_simple (att_buf, BT_ATT_MAX_ATTRIBUTE_LEN = 512 bytes) shared by all connection instances,…

  • CVE-2026-10655MedJun 30, 2026
    risk 0.35cvss 6.5epss 0.00

    The asynchronous SNTP client in Zephyr (subsys/net/lib/sntp/sntp.c, sntp_close_async) closed the UDP socket file descriptor directly from the calling thread immediately after detaching it from the network socket service, without synchronizing with the socket-service poll thread.…

  • CVE-2026-10653MedJun 30, 2026
    risk 0.35cvss 6.4epss 0.00

    The Zephyr net_buf library (lib/net_buf/buf.c) manipulated both of its reference counts -- the per-header buf->ref and the per-data-block ref_count at the start of each variable/heap data allocation -- with plain non-atomic C operators (buf->ref++, if (--buf->ref > 0), if…

  • CVE-2026-10593MedJun 28, 2026
    risk 0.35cvss 6.5epss 0.00

    The Zephyr Bluetooth LE Audio Basic Audio Profile (BAP) unicast client mishandles peer-supplied ASE state notifications. In unicast_client_ep_qos_state() (subsys/bluetooth/audio/bap_unicast_client.c), the handler writes attacker-controlled QoS fields (interval, framing, phy,…

  • CVE-2026-5072MedMay 22, 2026
    risk 0.35cvss 6.5epss 0.00

    A bitwise shift vulnerability in Zephyr's PTP subsystem allows a remote attacker to cause undefined behavior and potential system crashes. An attacker sends a crafted PTP_MSG_MANAGEMENT message to set an unvalidated negative log_announce_interval value in the port's data set.…

  • CVE-2026-10635MedJun 16, 2026
    risk 0.34cvss 6.3epss 0.00

    On Xtensa targets with CONFIG_USERSPACE and CONFIG_XTENSA_MMU, the page-table code (arch/xtensa/core/ptables.c) maintains a global list, xtensa_domain_list, of active memory domains using a list node embedded inside the caller-owned struct k_mem_domain. When a domain is…

  • CVE-2026-13216MedAug 25, 2026
    risk 0.33cvss 6.1epss 0.00

    The virtio PCI driver (drivers/virtio/virtio_pci.c) parses a device's PCI capability list during driver initialization. In virtio_pci_read_cap() the device-supplied capability length byte cap_len (read from PCI config space via pcie_conf_read()) was only checked with…

  • CVE-2026-12232MedAug 12, 2026
    risk 0.33cvss 6.1epss 0.00

    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_handshake_map[64] array and scales a FIFO…

  • CVE-2026-10663MedJul 12, 2026
    risk 0.33cvss 6.1epss 0.00

    In Zephyr's experimental USB host stack (CONFIG_USB_HOST_STACK), usbh_device_disconnect() (subsys/usb/host/usbh_device.c) freed the root usb_device slab object without clearing the cached pointer ctx->root. The bus removal handler dev_removed_handler()…

  • CVE-2026-10648MedJun 29, 2026
    risk 0.33cvss 6.2epss 0.00

    mcumgr_serial_process_frag() in subsys/mgmt/mcumgr/transport/src/serial_util.c calls net_buf_reset() on the result of smp_packet_alloc() before checking it for NULL. smp_packet_alloc() uses net_buf_alloc(K_NO_WAIT) against the shared MCUmgr packet pool…

  • CVE-2026-10645MedJun 23, 2026
    risk 0.32cvss 4.9epss 0.00

    The Zephyr ext2 filesystem driver (subsys/fs/ext2) trusted the on-disk directory entry fields de_rec_len and de_name_len when walking a directory block. ext2_fetch_direntry() guarded only with de_name_len > EXT2_MAX_FILE_NAME, but de_name_len is a uint8_t and EXT2_MAX_FILE_NAME…

  • CVE-2026-13217MedAug 25, 2026
    risk 0.31cvss 5.9epss 0.01

    The OCPP 1.6 client in subsys/net/lib/ocpp/ocpp.c reconstructs a session handle and PDU id from the uid field of a CALLRESULT message. In ocpp_process_server_msg() the code calls atoi(strtok_r(uid, "-", &tmp)) without checking the strtok_r return value. When the server-supplied…

  • CVE-2026-12233MedAug 12, 2026
    risk 0.31cvss 5.9epss 0.00

    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 it. A statically zero-filled k_mutex has…

  • CVE-2026-10638MedJun 16, 2026
    risk 0.31cvss 5.9epss 0.00

    subsys/net/ip/icmpv6.c reads the network interface from a net_pkt after that packet has been handed to net_try_send_data(). In icmpv6_handle_echo_request() and net_icmpv6_send_error(), the post-send statistics update calls net_pkt_iface(reply)/net_pkt_iface(pkt) on the just-sent…

  • CVE-2026-7007MedJul 24, 2026
    risk 0.30cvss 4.6epss 0.00

    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 not verify that the on-disk fields…

  • CVE-2026-13478MedAug 25, 2026
    risk 0.29cvss 5.5epss 0.00

    The Zephyr ext2 filesystem driver validates the on-disk block bitmap in ext2_init_fs() (subsys/fs/ext2/ext2_impl.c) by passing fs_blocks = s_blocks_count - s_first_data_block to ext2_bitmap_count_set(). That helper (subsys/fs/ext2/ext2_bitmap.c) treats its argument as a number…

  • CVE-2026-10674MedJul 21, 2026
    risk 0.29cvss 5.5epss 0.00

    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 requested configuration is validated only…

  • CVE-2026-14368MedAug 31, 2026
    risk 0.28cvss 5.4epss 0.00

    The LwM2M JSON content formatter's get_string() in subsys/net/lib/lwm2m/lwm2m_rw_json.c copies a parsed JSON string into a caller-supplied buffer and NUL-terminates it. The length guard used if (string_length > buflen), which accepts a string whose length is exactly buflen.…

  • CVE-2026-12052MedAug 11, 2026
    risk 0.27cvss 5.2epss 0.00

    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-byte struct ntb_input_size) class requests…

  • CVE-2026-1677MedMay 11, 2026
    risk 0.27cvss 5.3epss 0.00

    Zephyr sockets created with `IPPROTO_TLS_1_3` can still negotiate a TLS 1.2 connection when both TLS versions are enabled in Kconfig, because the socket-level protocol selection is not propagated to mbedTLS (e.g. via `mbedtls_ssl_conf_min_tls_version`). The ClientHello…

  • CVE-2026-10659MedJul 7, 2026
    risk 0.24cvss 4.7epss 0.00

    The Dhara flash translation layer disk driver (drivers/disk/ftl_dhara.c) implemented the dhara_nand_ callbacks so that, on a flash error, the error code was written unconditionally through the caller-supplied dhara_error_t err pointer (e.g. *err = DHARA_E_ECC in dhara_nand_read,…

  • CVE-2026-10652MedJun 30, 2026
    risk 0.24cvss 4.8epss 0.00

    Zephyr's DNS resolver (subsys/net/lib/dns) parses resource records from DNS responses in dns_unpack_answer(), which validated only the fixed RR header (type, class, TTL, rdlength) and accepted any attacker-declared rdlength, including one extending past the end of the received…

  • CVE-2026-10639MedJun 16, 2026
    risk 0.24cvss 4.8epss 0.00

    In Zephyr's native IPv4 stack, icmpv4_handle_echo_request() in subsys/net/ip/icmpv4.c builds an echo-reply packet (reply), hands it to net_try_send_data(), and then, on success, calls net_stats_update_icmp_sent(net_pkt_iface(reply)). net_try_send_data() transfers ownership of…

  • CVE-2026-12051MedAug 11, 2026
    risk 0.23cvss 4.6epss 0.00

    The USB DFU class implementation in Zephyr's new (experimental) device_next USB device stack contains a NULL pointer dereference in handle_download() (subsys/usb/device_next/class/usbd_dfu.c). The handler computes MIN(setup->wLength, buf->len) and passes buf->data to the image…

  • CVE-2026-10656MedJul 5, 2026
    risk 0.23cvss 4.6epss 0.00

    The MAX32xxx USB device controller driver (drivers/usb/udc/udc_max32.c, compatible adi_max32_usbhs) dereferenced an endpoint buffer in its OUT and IN transfer-completion handlers without checking it for NULL. udc_event_xfer_out_done() called net_buf_add(buf, ep_request->actlen)…

  • CVE-2026-10642MedJun 24, 2026
    risk 0.23cvss 4.6epss 0.00

    The Zephyr PL011 UART driver (drivers/serial/uart_pl011.c) contains an unbounded software loop in pl011_irq_tx_enable() that repeatedly invokes the interrupt-driven application callback while the TX interrupt mask bit (PL011_IMSC_TXIM) is set, to work around the controller's…

Page 1 of 2