Skip to main content

Linux Kernel CVE-2026-31723

| EUVDEUVD-2026-26536 MEDIUM
2026-05-01 Linux
5.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Write gadget configuration
  2. Delivery
    Trigger function bind
  3. Exploit
    Trigger function unbind
  4. Execution
    Gadget destroyed, net_device survives
  5. Persist
    Sysfs orphaned
  6. Impact
    Availability impact

Vulnerability Assessment

Exploitation Conditions

Local authenticated access (PR:L per CVSS vector) with ability to write to USB gadget configuration in /sys/kernel/config/usb_gadget is required. The f_subset gadget function must be enabled in the kernel and the gadget must be configured with a network device. The vulnerability is triggered by unbinding and rebinding the gadget function, which is restricted to local users with write permissions to gadget sysfs paths. Systems with USB gadget mode disabled or without local administrative access are not at risk. The vulnerability does not affect systems using only standard USB host mode or those without gadget subsystem enabled.

Impact

The CVSS 5.5 score reflects a local attack vector requiring low privileges (PR:L) with no user interaction (UI:N), causing availability impact (A:H) but no confidentiality or integrity impact. The extremely low EPSS score of 0.02% (5th percentile) indicates minimal real-world exploitation probability despite the moderate CVSS rating, suggesting this is primarily a data structure corruption issue rather than a practically exploitable attack vector. The vulnerability requires local system access and the ability to trigger gadget bind/unbind cycles, limiting exposure to system administrators or developers with USB gadget capabilities. The KEV status is unknown from provided data, but the vulnerability is a sysfs state corruption issue unlikely to enable privilege escalation or remote compromise. The discrepancy between CVSS and EPSS suggests defenders should deprioritize this below the base score might indicate - actual exploitation requires specific gadget configurations and local access patterns.

Exploit ScenarioDerived

A local user with gadget administrator privileges unbinds a USB gadget function by removing it from the gadget composition, leaving orphaned sysfs symlinks. The user then queries /sys/class/net/usb0, triggering sysfs operations against the dangling reference, causing kernel memory access violations. Repeated bind/unbind cycles corrupt the sysfs device tree state, potentially affecting USB network functionality or causing denial of service on systems managing multiple gadget functions.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – May 07, 2026

USB gadget subsystem net_device lifecycle mismanagement in Linux kernel allows local privileged users to cause denial of service through sysfs corruption. The f_subset gadget function creates dangling sysfs symlinks when unbinding due to improper device reparenting, resulting in inaccessible network device references and potential system instability. A local user with sufficient privileges can trigger unbind/rebind cycles to exhaust resources or corrupt the sysfs filesystem state.

RemediationAI

Apply vendor-released patches from stable kernel branches: Linux 6.19.12 or later, Linux 6.12.81 or later, Linux 7.0 or later, or Linux 6.18.22 or later. The upstream fix is available via git.kernel.org stable commits 70707ce668494c4d35fe070dfbc7cc541b293107, 9cbc4f109bb216623894d8819fb930210ed34b21, fde29916e4cc736c4ca6c78f331e12b2c73ccafd, and 06524cd1c9011bee141a87e43ab878641ed3652b. For systems unable to immediately upgrade, disable USB gadget functionality if not required by setting USB_GADGET=n in kernel configuration, though this may impact embedded systems or development workflows. Alternatively, restrict access to gadget configuration interfaces in /sys/kernel/config/usb_gadget to trusted administrators only, limiting the ability to trigger bind/unbind cycles.

Affected VersionsENISA

Linux patch: 6.19.12
Linux 8cedba7c73af1369599b1111639cfeb66fe13aaa <fde29916e4cc736c4ca6c78f331e12b2c73ccafd
Linux 8cedba7c73af1369599b1111639cfeb66fe13aaa <70707ce668494c4d35fe070dfbc7cc541b293107
Linux 8cedba7c73af1369599b1111639cfeb66fe13aaa <9cbc4f109bb216623894d8819fb930210ed34b21
Linux 8cedba7c73af1369599b1111639cfeb66fe13aaa <06524cd1c9011bee141a87e43ab878641ed3652b
Linux patch: 6.12.81
Linux patch: 7.0
Linux patch: 6.18.22
Linux patch: 0
Linux 3.11

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability affects the Linux kernel's USB gadget subsystem, specifically the f_subset network gadget function (cpe:2.3:a:linux:linux). The root cause involves improper lifecycle management of net_device objects allocated during gadget function initialization. When a USB gadget unbinds, the parent gadget device is destroyed while the associated net_device survives, creating orphaned sysfs symlinks that point to non-existent device tree entries under /sys/devices/platform/.../gadget.0/net/. The fix applies device_move() to reparent the net_device between the gadget device tree and /sys/devices/virtual during bind and unbind cycles, ensuring proper sysfs topology and preventing orphaned references. This involves kernel device management and USB subsystem initialization paths.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
SUSE MEDIUM

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

5
CVSS changed
May 07, 2026 - 17:07 NVD
5.5 (MEDIUM)
Patch available
May 01, 2026 - 16:02 EUVD
Patch released
May 01, 2026 - 15:24 nvd
Patch available
CVE Published
May 01, 2026 - 14:14 nvd
MEDIUM 5.5
CVE Published
May 01, 2026 - 14:14 nvd
N/A

DescriptionNVD

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

usb: gadget: f_subset: Fix net_device lifecycle with device_move

The net_device is allocated during function instance creation and registered during the bind phase with the gadget device as its sysfs parent. When the function unbinds, the parent device is destroyed, but the net_device survives, resulting in dangling sysfs symlinks:

console:/

ls -l /sys/class/net/usb0

lrwxrwxrwx ... /sys/class/net/usb0 -> /sys/devices/platform/.../gadget.0/net/usb0 console:/

ls -l /sys/devices/platform/.../gadget.0/net/usb0

ls: .../gadget.0/net/usb0: No such file or directory

Use device_move() to reparent the net_device between the gadget device tree and /sys/devices/virtual across bind and unbind cycles. During the final unbind, calling device_move(NULL) moves the net_device to the virtual device tree before the gadget device is destroyed. On rebinding, device_move() reparents the device back under the new gadget, ensuring proper sysfs topology and power management ordering.

To maintain compatibility with legacy composite drivers (e.g., multi.c), the bound flag is used to indicate whether the network device is shared and pre-registered during the legacy driver's bind phase.

Threat Intelligence Overview

EPSS Score
0.0%
Top 95% exploitable
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Medium
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy