Skip to main content

Linux Kernel CVE-2026-68222

| EUVDEUVD-2026-55323 HIGH
2026-08-10 Linux GHSA-c87f-75wq-m23q
High
Disputed · 7.8 Vendor: Linux
Share

Severity by source

Sources disagree (Low–High)
Vendor (Linux) PRIMARY
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.0 HIGH

Specific MSI2500 USB hardware must be present and a failure condition deliberately induced during initialization, raising AC to H over the vendor-assigned L; PR:L reflects required device-node access.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
3.3 LOW
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Red Hat
5.5 MEDIUM
qualitative

vuln.today treats the vendor’s rating as authoritative. A higher third-party CVSS (e.g. CISA-ADP) is shown for transparency but does not drive the headline severity.

CVSS VectorVendor: Linux

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

Lifecycle Timeline

5
Analysis Generated
Aug 14, 2026 - 03:32 vuln.today
CVSS changed
Aug 13, 2026 - 23:37 NVD
7.8 (HIGH)
Patch available
Aug 10, 2026 - 14:18 EUVD
CVE Published
Aug 10, 2026 - 12:00 cve.org
HIGH 7.8
CVE Published
Aug 10, 2026 - 12:00 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

media: msi2500: Return queued buffers on start_streaming() failure

The vb2 framework hands buffers to the driver via buf_queue() before calling start_streaming(). If start_streaming() returns an error without first returning those buffers via vb2_buffer_done(), vb2_start_streaming() fires WARN_ON(owned_by_drv_count) and the queued buffers leak.

msi2500_start_streaming() had five error paths that all hit this trap and were further tangled by ret-overwriting between calls:

  • -ENODEV when the USB device was already disconnected
  • -ERESTARTSYS when mutex_lock_interruptible() was interrupted
  • msi2500_set_usb_adc() failure: ret was silently overwritten by

the next call (msi2500_isoc_init), so the error was lost entirely

  • msi2500_isoc_init() failure: cleanup_queued_bufs was called, but

the function then fell through to msi2500_ctrl_msg() and again masked the original error by overwriting ret

  • msi2500_ctrl_msg(CMD_START_STREAMING) failure: no cleanup at all,

leaving isoc URBs submitted with no way for the driver to consume them

Consolidate the error paths into a small goto chain. Every failure now stops the function, drains the queued-buffer list, and returns the real error code. The ctrl_msg failure path also rolls back the preceding msi2500_isoc_init() via msi2500_isoc_cleanup() before unlocking and draining.

The cleanup helper takes a vb2_buffer_state argument so that the start_streaming error paths can pass VB2_BUF_STATE_QUEUED (as expected by userspace on start_streaming failure) while stop_streaming keeps its existing VB2_BUF_STATE_ERROR semantics.

This mirrors the uvcvideo fix in commit 4cf3b6fd54eb ("media: uvcvideo: Return queued buffers on start_streaming() failure").

AnalysisAI

Buffer management failures in the Linux kernel msi2500 USB SDR driver allow a local low-privileged user to cause kernel memory corruption through improperly handled start_streaming() error paths. Five distinct failure paths in msi2500_start_streaming() - including USB disconnection, mutex interruption, USB ADC setup failure, isoc initialization failure, and CMD_START_STREAMING failure - neglect to return queued vb2 buffers to the framework before returning errors, and the worst path leaves submitted isochronous URBs with no consumer. Patched stable releases are available (6.6.148, 6.12.101, 6.18.42, 7.1.6), no public exploit exists, and EPSS is 0.18% (7th percentile), indicating low current exploitation probability.

Technical ContextAI

The vulnerability resides in drivers/media/usb/msi2500/, which supports the MSI2500/MSI3101 USB Software Defined Radio (SDR) chipset under the V4L2 subsystem. The driver uses the videobuf2 (vb2) framework for DMA buffer management: vb2 hands ownership of queued buffers to the driver via buf_queue() before invoking start_streaming(), and the contract requires that any failure return all driver-owned buffers via vb2_buffer_done() before the error return - or vb2_start_streaming() fires WARN_ON(owned_by_drv_count) and those buffers leak permanently. The root cause is incorrect error-path resource management (analogous to CWE-404/CWE-401), compounded by ret-value overwriting between sequential calls that silently discarded real error codes. A secondary issue in the CMD_START_STREAMING failure path left submitted isochronous URBs with no driver consumer, creating a dangling URB condition. The fix mirrors the uvcvideo correction in commit 4cf3b6fd54eb, consolidating cleanup into a goto chain that passes VB2_BUF_STATE_QUEUED on start_streaming failure and VB2_BUF_STATE_ERROR on stop_streaming. Affected CPE: cpe:2.3:a:linux:linux:*.

RemediationAI

The primary fix is to upgrade to a patched Linux stable release: 6.6.148 or later in the 6.6 LTS series, 6.12.101 or later in the 6.12 LTS series, 6.18.42 or later in the 6.18 series, or 7.1.6 or later in the 7.1 series - all fix commits are referenced at https://git.kernel.org/stable/. For systems that cannot be patched immediately, blacklisting the msi2500 kernel module eliminates the attack surface entirely: add 'blacklist msi2500' to /etc/modprobe.d/blacklist.conf and rebuild the initramfs with dracut or mkinitramfs; trade-off is complete loss of MSI2500/MSI3101 SDR device support. As a secondary control, restrict /dev/video* device node permissions to remove group 'video' access for untrusted users (chmod o-rw /dev/videoX), which prevents low-privileged users from opening the device even if the module is loaded; trade-off is that legitimate SDR software running as non-root will also lose access. Physical USB port lockdown via usbguard policies is an additional layer for environments that do not use SDR hardware at all.

Vendor StatusVendor

SUSE

Severity: Low
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

CVE-2026-68222 vulnerability details – vuln.today

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