Description
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 afterwards (in mcux_lpuart_configure_basic), and unsupported parity/data-bit/stop-bit/flow-control values return -ENOTSUP before the clock is re-enabled.

As a result, a uart_configure() request with an unsupported configuration left the LPUART in a clock-disabled state; any subsequent access to LPUART registers (poll_out/poll_in, interrupt handling, or a later reconfigure) faults on the gated peripheral and escalates to a hard fault, crashing the system.

uart_configure() is a Zephyr syscall whose verifier (z_vrfy_uart_configure) only checks that cfg is readable user memory and forwards the caller-supplied configuration unchanged, so an unprivileged userspace thread with access to an LPUART device can deterministically trigger the fault, a persistent system-wide denial of service.

Introduced in v2.5.0 and present in all subsequent releases until this fix, which removes the LPUART_Deinit() call and instead only disables the transmitter/receiver, leaving the clock running.
Published: 2026-07-21
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The NXP LPUART driver in Zephyr contains a flaw that results in a hard fault when an unsupported runtime UART configuration is requested. The bug is triggered because the driver calls LPUART_Deinit at the beginning of configuration, disabling the peripheral clock before validating the requested settings. If the settings are unsupported, the code returns –ENOTSUP without re‑enabling the clock; any subsequent access to the LPUART registers then faults on a gated peripheral, leading to a hard fault that brings the system down. This vulnerability is defined as CWE‑617, an improper validation of input data that incorrectly updates system state.

Affected Systems

Affected products are all Zephyr RTOS releases from 2.5.0 onward that include the NXP LPUART driver with CONFIG_UART_USE_RUNTIME_CONFIGURE enabled. The issue persists until the fix commit referenced in the advisory, and therefore applies to all versions that have not yet incorporated that change.

Risk and Exploitability

The CVSS score of 5.5 indicates moderate severity, and the EPSS score of less than 1% shows a low estimated likelihood of exploitation at this time. The vulnerability is not listed in CISA's KEV catalog. Exploitation requires an unprivileged user space process that can invoke the uart_configure syscall and provide an unsupported configuration value; the Zephyr verifier simply checks that the memory is readable and forwards the struct unchanged, giving a deterministic way to crash the system. Because the fault is system‑wide, the risk is persistent denial of service across all cores and peripherals.

Generated by OpenCVE AI on July 30, 2026 at 16:12 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the Zephyr patch commit or upgrade to a release that incorporates the fix so that the LPUART driver no longer calls LPUART_Deinit during configuration.
  • Disable the CONFIG_UART_USE_RUNTIME_CONFIGURE option if runtime configuration of UARTs is not required, which keeps the peripheral clock running even when invalid settings are passed.
  • Restrict or remove unprivileged access to the LPUART device so that only privileged processes can perform uart_configure, limiting the attack surface.

Generated by OpenCVE AI on July 30, 2026 at 16:12 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 22 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 22 Jul 2026 20:00:00 +0000

Type Values Removed Values Added
First Time appeared Zephyrproject
Zephyrproject zephyr
Vendors & Products Zephyrproject
Zephyrproject zephyr

Tue, 21 Jul 2026 21:45:00 +0000

Type Values Removed Values Added
Description 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 afterwards (in mcux_lpuart_configure_basic), and unsupported parity/data-bit/stop-bit/flow-control values return -ENOTSUP before the clock is re-enabled. As a result, a uart_configure() request with an unsupported configuration left the LPUART in a clock-disabled state; any subsequent access to LPUART registers (poll_out/poll_in, interrupt handling, or a later reconfigure) faults on the gated peripheral and escalates to a hard fault, crashing the system. uart_configure() is a Zephyr syscall whose verifier (z_vrfy_uart_configure) only checks that cfg is readable user memory and forwards the caller-supplied configuration unchanged, so an unprivileged userspace thread with access to an LPUART device can deterministically trigger the fault, a persistent system-wide denial of service. Introduced in v2.5.0 and present in all subsequent releases until this fix, which removes the LPUART_Deinit() call and instead only disables the transmitter/receiver, leaving the clock running.
Title DoS (hard fault) in NXP LPUART driver: unsupported runtime UART config leaves clocks disabled
Weaknesses CWE-617
References
Metrics cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

Zephyrproject Zephyr
cve-icon MITRE

Status: PUBLISHED

Assigner: zephyr

Published:

Updated: 2026-07-22T19:37:08.367Z

Reserved: 2026-06-02T15:26:03.742Z

Link: CVE-2026-10674

cve-icon Vulnrichment

Updated: 2026-07-22T19:32:09.531Z

cve-icon NVD

Status : Analyzed

Published: 2026-07-21T22:16:58.740

Modified: 2026-07-30T16:08:31.080

Link: CVE-2026-10674

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-30T16:15:04Z

Weaknesses