Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-90590— Permanent loss of transmit capability in the NXP ENET QoS Ethernet driver after an Ethernet link drop

Quick assessment

Affected
zephyrproject zephyr
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

NXP ENET QoS 以太网驱动程序(位于 )使用二进制信号量 对发送操作进行序列化。该信号量在 函数中被获取,且仅由发送完成中断处理程序 释放。然而,当以太网链路断开时,若某个数据帧已被提交至发送 DMA,该帧将永远不会被写回,导致对应的完成中断永远不会触发。PHY 回调函数 在检测到载波丢失时,仅调用 ,并未停止 DMA 操作、回收描述符或释放未完成的帧,且系统中不存在相应的超时机制来处理此类情况。 该漏洞的触发条件是:在某个数据帧正处于发送 DMA 过程中,发生链路断开/恢复的转换。任何能够控制链路对端设

CVSS 6.5 · Medium
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-90590

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Permanent loss of transmit capability in the NXP ENET QoS Ethernet driver after an Ethernet link drop
Source: CVE Program / CVE List V5
Vulnerability Description
The NXP ENET QoS Ethernet driver in drivers/ethernet/eth_nxp_enet_qos serialises transmission with a binary semaphore, data->tx.tx_sem, taken in eth_nxp_enet_qos_tx() and returned only by the transmit-completion interrupt handler tx_dma_done(). A frame that has been handed to the transmit DMA when the Ethernet link goes down is never written back, so that completion interrupt never arrives. The PHY callback eth_nxp_enet_qos_phy_cb() reacts to carrier loss only by calling net_eth_carrier_set(); it does not stop the DMA, take the descriptors back or release the outstanding frame, and no timeout exists to do so. The trigger is a link-down/link-up transition that lands while a frame is under the transmit DMA. It can be produced by anyone who controls the link partner or the cable — for example by administratively downing and restoring the attached switch port, or by restarting auto-negotiation from a peer device — and can be made reliable by generating traffic that keeps the device transmitting and repeating the transition. No credentials or user interaction are required, and the trigger is at the link layer rather than over IP. Because the semaphore is never given back, every subsequent call to eth_nxp_enet_qos_tx() fails with -EBUSY for the remaining life of the boot; restoring the link does not recover the interface, since the link-up path only rewrites MAC_CONFIGURATION. The affected interface continues to receive but can no longer transmit anything — no ARP replies, no TCP acknowledgements, no DHCP renewals — until the device is reset. The net_pkt and the net_buf fragments of the abandoned frame are likewise never unreferenced and never return to their pools. The security-relevant property is persistence: a momentary link flap leaves the interface permanently unable to send, so the denial of service outlasts the attacker's access to the link. There is no confidentiality or integrity impact. The fix adds a claim/release pair around the outstanding packet so that completion and abandonment are mutually exclusive, aborts an outstanding frame from the PHY callback on carrier loss (stopping the DMA, flushing the MTL transmit queue and reinitialising the descriptor ring), and arms a transmit watchdog, CONFIG_ETH_NXP_ENET_QOS_TX_TIMEOUT_MS, so that any non-completing DMA — not only a carrier loss — reclaims the transmit slot and the packet.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
对已超过有效生命周期的资源丧失索引
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
zephyrproject zephyr 3.7.0 ~ 4.3.2 -

II. Public POCs for CVE-2026-90590

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-90590

请登录查看更多情报信息。

Other References for CVE-2026-90590 (2)

Same Patch Batch · zephyrproject · 2026-11-09 · 7 CVEs total

CVE-2026-90586 7.8 HIGH Xtensa MMU userspace: uninitialized thread page-table pointer leads to out-of-bounds super
CVE-2026-90591 7.5 HIGH NXP ENET-QOS Ethernet driver re-arms RX descriptors with a clobbered DMA buffer address on
CVE-2026-90589 5.5 MEDIUM Memory-mapped thread stack is never unmapped when a thread is aborted by another thread, e
CVE-2026-90587 4.6 MEDIUM NULL pointer dereference in the Zephyr USB host stack when a device reports zero configura
CVE-2026-90585 4.6 MEDIUM Renesas RA SCI UART driver: unacknowledged receive-error interrupt causes a permanent inte
CVE-2026-90588 3.7 LOW Out-of-bounds read in Zephyr HTTP client debug logging of response header fields

IV. Related Vulnerabilities