CVE-2026-63960Patch

LOW

Signal is active with 1 mentions in latest observed window

Immediate actions

  • Patch affected systems immediately

Recommended action window: Monitor and triage in normal cycle

NVD description

In the Linux kernel, the following vulnerability has been resolved: usb: typec: wcove: don't write past struct pd_message in wcove_read_rx_buffer() wcove_read_rx_buffer() copies the PD RX FIFO into the caller's struct pd_message with for (i = 0; i < USBC_RXINFO_RXBYTES(info); i++) regmap_read(wcove->regmap, USBC_RX_DATA + i, msg + i); which has two problems: USBC_RXINFO_RXBYTES() is a 5-bit field (max 31) while struct pd_message is 30 bytes (__le16 header + __le32 payload[PD_MAX_PAYLOAD], packed). The byte count latched in RXINFO is the number of bytes the port partner put on the wire, so a malicious partner that transmits a 31-byte frame can drive the loop one byte past the destination if the WCOVE BMC receiver does not enforce the PD object-count limit in hardware. The existing FIXME flagged this as unverified. Independently, regmap_read() takes an unsigned int * and stores a full unsigned int at the destination. Passing the byte pointer msg + i means each iteration writes four bytes; the high three are zero (val_bits is 8) and are normally overwritten by the next iteration, but the final iteration's high bytes are not. With RXBYTES == 30 the i == 29 iteration already writes three zero bytes past msg, which sits on the IRQ thread's stack in wcove_typec_irq(). Clamp the loop to sizeof(struct pd_message) and read each register into a local before storing only its low byte, so the copy can never exceed the destination regardless of what RXINFO reports.

0.5/ 10 priority

Sources & remediation

Priority

LOW

Exploitation

NONE

PoC

NONE

Patch

AVAILABLE

Momentum

NONE

Threat summary

  • Patch or workaround signal is available
  • 1 mentions across 1 observed day

What's happening

  • Patch or workaround mentioned in 1 signal
  • Technical details provided in 1 signal
  • 1 total mentions across 1 day

Deep dive

Activity timeline1 mentions / 1d
00111Mentions · 2026-07-21: 1Patch / Workaround · 2026-07-21: 1Technical Details · 2026-07-21: 107-21
Signal classification1 categories
Patch
1100.0%
Referenced assets1 URL
Full discourse1 post
  • Windows Forum@windowsforum
    Patch

    🔌 USB-C isn’t just a port—it’s an attack surface. A Linux driver trusting oversized Power Delivery data can turn “plug in a charger” into “hope the kernel checked its homework.” https://windowsforum.com/threads/cve-2026-63960-fix-linux-usb-c-kernel-stack-overflow.439799/?utm_source=x&utm_medium=social&utm_campaign=news_node84 #WslSecurity #LinuxKernelSecurity #Cve202663960 #UsbTypeCSecurity https://t.co/p0WPY07xHN

    Post summary

    A Linux USB‑C kernel driver contains a stack overflow due to oversized Power Delivery data, and a fix is apparently available as described in the linked forum.

    0000013
    1.3K followersView on X

Explore more