CVE-2026-74679

usb: gadget: f_ncm: Use unsigned int for ndp_index

Published Aug 22, 2026 CVSS 3.1 · 5.5 Medium EPSS < 1% KEV · Not listed
Description
In the Linux kernel, the following vulnerability has been resolved:

usb: gadget: f_ncm: Use unsigned int for ndp_index

The variable ndp_index is declared as a signed integer, but it stores
the return value of get_ncm(), which is unsigned.

A malicious host can supply a large offset that overflows the signed
ndp_index, making it negative. Because ndp_index is compared against
unsigned bounds, this negative value bypasses sanity checks and leads
to an out-of-bounds read when calculating the address of the NDP
block (ntb_ptr + ndp_index).

Fix this by changing ndp_index to unsigned int to ensure consistent
unsigned comparisons throughout the function.

Analysis

AI-generated

Technical impact

The Linux kernel contains a flaw in the f_ncm gadget driver where the variable ndp_index is signed but receives an unsigned value from get_ncm(). A host that sends a large offset can cause the signed integer to wrap into a negative value. The driver then compares this negative value against unsigned bounds, bypassing sanity checks and computing an address that falls outside the valid NDP block. This results in an out-of-bounds read that can expose kernel memory contents to the host.

Affected Systems

This vulnerability affects the Linux kernel on systems that enable the USB Network Control Model gadget driver (f_ncm). The exact kernel versions are not listed in the advisory, so any kernel that has the unpatched f_ncm code is potentially impacted.

Risk and Exploitability

The flaw can be exploited by a malicious USB host that sends crafted NCM requests, providing a large offset that triggers the signed overflow. The attack requires physical or logical access to the USB device and the ability to send controlled NCM packets. The EPSS score is <1%, indicating a low probability of exploitation, while the CVSS score of 5.5 indicates a moderate severity and potential impact. The vulnerability is not currently listed in the CISA KEV catalog, and the out‑of‑bounds read bypasses sanity checks to expose kernel memory contents, making it a serious information‑disclosure risk for vulnerable hosts.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply a kernel update that patches the f_ncm driver to use an unsigned type for ndp_index
  • If a patch cannot be applied immediately, disable the f_ncm gadget driver or disconnect the USB device that exposes the NCM interface
  • Continuously monitor USB traffic for anomalous NCM requests and restrict access to the USB gadget interface to trusted hosts

Generated by OpenCVE AI on August 24, 2026 at 13:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4777-1 linux security update
Debian DLA Debian DLA DLA-4788-1 linux-6.12 security update
Debian DSA Debian DSA DSA-6466-1 linux security update
Ubuntu USN Ubuntu USN USN-8875-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8877-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8878-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8879-1 Linux kernel (Oracle) vulnerabilities
Ubuntu USN Ubuntu USN USN-8875-2 Linux kernel (NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-9019-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-9020-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9022-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9023-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9024-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9025-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9026-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-9029-1 Linux kernel (Raspberry Pi) vulnerabilities
Ubuntu USN Ubuntu USN USN-9039-1 Linux kernel (Azure CVM) vulnerabilities
Ubuntu USN Ubuntu USN USN-9040-1 Linux kernel (Low Latency NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-9066-1 Linux kernel (HWE) vulnerabilities
Ubuntu USN Ubuntu USN USN-9091-1 Linux kernel (NVIDIA Tegra) vulnerabilities
History
Type Values Removed Values Added
Metrics ssvc

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

Type Values Removed Values Added
Weaknesses CWE-125
References
Metrics threat_severity

None

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'}

threat_severity

Moderate

Type Values Removed Values Added
Weaknesses CWE-190
Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_ncm: Use unsigned int for ndp_index The variable ndp_index is declared as a signed integer, but it stores the return value of get_ncm(), which is unsigned. A malicious host can supply a large offset that overflows the signed ndp_index, making it negative. Because ndp_index is compared against unsigned bounds, this negative value bypasses sanity checks and leads to an out-of-bounds read when calculating the address of the NDP block (ntb_ptr + ndp_index). Fix this by changing ndp_index to unsigned int to ensure consistent unsigned comparisons throughout the function.
Title usb: gadget: f_ncm: Use unsigned int for ndp_index
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
Linux
Published
Updated
Nov 6, 2026, 5:05 PM
Reserved
Aug 15, 2026, 5:44 AM
Status
Received
Published
Aug 22, 2026, 4:16 PM
Modified
Nov 6, 2026, 5:19 PM
Severity
Moderate
Public date
Aug 22, 2026, 12:00 AM