CVE-2026-10648 NULL-pointer dereference in MCUmgr serial/console SMP transport on buffer-pool exhaustion
An attacker on the serial link can crash the device by exhausting the buffer pool, causing a NULL pointer dereference in the MCUmgr transport.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-10648?
CVE-2026-10648 is a medium-severity vulnerability in Zephyrproject Zephyr, published on 29 Jun 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
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 (CONFIG_MCUMGR_TRANSPORT_NETBUF_COUNT, default 4), which returns NULL when the pool is exhausted. In default builds the __ASSERT_NO_MSG in net_buf_reset is a no-op, so net_buf_simple_reset writes through the NULL pointer (buf->len = 0; buf->data = buf->__buf), causing a fault/crash.
The fragment data reaches this code from attacker-controlled bytes on the MCUmgr serial/UART/shell-console transports (smp_uart.c, smp_raw_uart.c, smp_shell.c), and a fresh buffer is allocated at the start of essentially every new packet. An attacker on the serial/console link can flood the transport to drive the 4-entry buffer pool to exhaustion and induce the NULL dereference, crashing the device (denial of service).
The defect was introduced after the original MCUmgr rework and shipped in Zephyr v4.4.0. The fix moves the NULL check ahead of net_buf_reset.
Weakness: CWE-476
Which versions are affected by CVE-2026-10648?
It affects 1 product.
Products include Zephyrproject Zephyr.
How do I fix CVE-2026-10648?
No fix has been published for CVE-2026-10648 yet. Limit exposure of the affected software until one is available.
Is CVE-2026-10648 being exploited?
There is no known exploitation of CVE-2026-10648 in the wild and no public exploit code.
Other vulnerabilities in Zephyrproject Zephyr
- CVE-2026-5067 Out-of-bounds read/write in HTTP WebSocket upgrade via non-null-terminated Sec-WebSocket-Key
- CVE-2022-3806 Bluetooth HCI Error Handling Double Free
- CVE-2017-14199 Memory corruption in getaddrinfo
- CVE-2018-1000800 Null dereference in n/a
- CVE-2021-3329 DOS: Incorrect handling of the initial HCI ACL_MTU handshake packet leads to crash of bluetooth host layer
Sources
Also known as GHSA-j64f-h3ww-f32c.