---
id: CVE-2026-31729
title: 'usb: typec: ucsi: validate connector number in ucsi_notify_common()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  usb: typec: ucsi: validate connector number in ucsi_notify_common()

  The connector number extracted from CCI via UCSI_CCI_CONNECTOR() is a
  7-bit field (0-127) that is u…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df <
    f6dcbf2b024d55549959402f1db6c614e51d52cb
  - >-
    Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df <
    f4e608fe12b7ac6a4a57176ab0296bb5a110a078
  - >-
    Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df <
    98429e9ec89a5e3a204112dfaa2dbe6ca28493a0
  - >-
    Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df <
    d2d8c17ac01a1b1f638ea5d340a884ccc5015186
  - Linux 5.5
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-06T15:24:39.973230Z'
published: '2026-05-01'
updated: '2026-11-06'
sourceUpdated: '2026-11-06T15:32:23.764Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-31729'
references:
  - url: 'https://git.kernel.org/stable/c/f6dcbf2b024d55549959402f1db6c614e51d52cb'
  - url: 'https://git.kernel.org/stable/c/f4e608fe12b7ac6a4a57176ab0296bb5a110a078'
  - url: 'https://git.kernel.org/stable/c/98429e9ec89a5e3a204112dfaa2dbe6ca28493a0'
  - url: 'https://git.kernel.org/stable/c/d2d8c17ac01a1b1f638ea5d340a884ccc5015186'
tags:
  - cve.org
epss: 0.00129
epssPercentile: 0.02526
ingestedAt: '2026-11-06T15:54:04.043Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

usb: typec: ucsi: validate connector number in ucsi_notify_common()

The connector number extracted from CCI via UCSI_CCI_CONNECTOR() is a
7-bit field (0-127) that is used to index into the connector array in
ucsi_connector_change(). However, the array is only allocated for the
number of connectors reported by the device (typically 2-4 entries).

A malicious or malfunctioning device could report an out-of-range
connector number in the CCI, causing an out-of-bounds array access in
ucsi_connector_change().

Add a bounds check in ucsi_notify_common(), the central point where CCI
is parsed after arriving from hardware, so that bogus connector numbers
are rejected before they propagate further.

## Affected

- `Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df < f6dcbf2b024d55549959402f1db6c614e51d52cb`
- `Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df < f4e608fe12b7ac6a4a57176ab0296bb5a110a078`
- `Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df < 98429e9ec89a5e3a204112dfaa2dbe6ca28493a0`
- `Linux >= bdc62f2bae8fb0e8e99574de5232f0a3c54a27df < d2d8c17ac01a1b1f638ea5d340a884ccc5015186`
- `Linux 5.5`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
