---
id: CVE-2026-45923
title: 'net: usb: catc: enable basic endpoint checking'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: usb: catc: enable basic endpoint checking

  catc_probe() fills three URBs with hardcoded endpoint pipes without
  verifying the endpoint descriptors:

    - usb_sndbulk…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    eade522d3e6ac3f3bfb51bfa5b5b4b32bd0b846f
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    ac7739b78ded519e1d9919a814da3b34120bec8c
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    163d04897e57633c5d2e69734e4e4b22bb63f50d
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    a488001a8197da4f9c413eec8f6acbff71c60145
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    36c28b028efba0f42218d41fed12c47ce217c1f1
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    1a42cfced8900d33d032c7ec338484855b61b8cc
  - >-
    Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <
    9e7021d2aeae57c323a6f722ed7915686cdcc123
  - Linux 2.6.12
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-06T16:02:08.222811Z'
published: '2026-05-27'
updated: '2026-11-06'
sourceUpdated: '2026-11-06T16:03:15.299Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-45923'
references:
  - url: 'https://git.kernel.org/stable/c/eade522d3e6ac3f3bfb51bfa5b5b4b32bd0b846f'
  - url: 'https://git.kernel.org/stable/c/ac7739b78ded519e1d9919a814da3b34120bec8c'
  - url: 'https://git.kernel.org/stable/c/163d04897e57633c5d2e69734e4e4b22bb63f50d'
  - url: 'https://git.kernel.org/stable/c/a488001a8197da4f9c413eec8f6acbff71c60145'
  - url: 'https://git.kernel.org/stable/c/36c28b028efba0f42218d41fed12c47ce217c1f1'
  - url: 'https://git.kernel.org/stable/c/1a42cfced8900d33d032c7ec338484855b61b8cc'
  - url: 'https://git.kernel.org/stable/c/9e7021d2aeae57c323a6f722ed7915686cdcc123'
tags:
  - cve.org
epss: 0.0016
epssPercentile: 0.05258
ingestedAt: '2026-11-06T16:57:43.376Z'
---

## Overview

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

net: usb: catc: enable basic endpoint checking

catc_probe() fills three URBs with hardcoded endpoint pipes without
verifying the endpoint descriptors:

  - usb_sndbulkpipe(usbdev, 1) and usb_rcvbulkpipe(usbdev, 1) for TX/RX
  - usb_rcvintpipe(usbdev, 2) for interrupt status

A malformed USB device can present these endpoints with transfer types
that differ from what the driver assumes.

Add a catc_usb_ep enum for endpoint numbers, replacing magic constants
throughout. Add usb_check_bulk_endpoints() and usb_check_int_endpoints()
calls after usb_set_interface() to verify endpoint types before use,
rejecting devices with mismatched descriptors at probe time.

Similar to
- commit 90b7f2961798 ("net: usb: rtl8150: enable basic endpoint checking")
which fixed the issue in rtl8150.

## Affected

- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < eade522d3e6ac3f3bfb51bfa5b5b4b32bd0b846f`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < ac7739b78ded519e1d9919a814da3b34120bec8c`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 163d04897e57633c5d2e69734e4e4b22bb63f50d`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < a488001a8197da4f9c413eec8f6acbff71c60145`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 36c28b028efba0f42218d41fed12c47ce217c1f1`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 1a42cfced8900d33d032c7ec338484855b61b8cc`
- `Linux >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 9e7021d2aeae57c323a6f722ed7915686cdcc123`
- `Linux 2.6.12`

## Remediation

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