Skip to main content

Linux Kernel EUVDEUVD-2026-55305

| CVE-2026-68204 HIGH
2026-08-10 Linux GHSA-5xgr-hpwf-wcm3
7.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

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.8 HIGH

Local access to the vivid device node required (AV:L, PR:L); no complexity beyond issuing standard V4L2 ioctls in sequence (AC:L); kernel memory corruption justifies C:H/I:H/A:H.

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

Primary rating from Vendor (Linux).

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:37 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: vivid: check for vb2_is_busy() when toggling caps

The vivid_update_format_cap/out() functions must only be called if the capture/output queue are not busy. But for the controls that select the CROP/COMPOSE/SCALE capability that is not checked.

Only when streaming starts will they be set to 'grabbed' and it is impossible to change the control, but between REQBUFS and STREAMON you are still allowed to set these controls. Since vivid_update_format_cap/out will change the format, this can cause unexpected results.

Besides adding these checks, also add a WARN_ON in vivid_update_format_cap/out() if the queue is busy.

I'm 90% certain that this is the cause of this syzbot bug:

https://syzkaller.appspot.com/bug?extid=dac8f5eaa46837e97b89

But since we never have reproducers, it is hard to be certain. In any case, these checks are needed regardless.

AnalysisAI

Memory corruption in the Linux kernel's vivid virtual video driver arises from missing vb2_is_busy() guards when toggling CROP, COMPOSE, and SCALE capability controls, exploitable by local low-privileged users in the window between VIDIOC_REQBUFS and VIDIOC_STREAMON ioctls. The affected vivid_update_format_cap/out() functions can overwrite video queue format parameters on an already-allocated buffer queue, yielding kernel-level corruption with high confidentiality, integrity, and availability impact as reflected in the CVSS 7.8 score. No public exploit identified at time of analysis; EPSS is 0.21% (11th percentile), though the issue was surfaced by the syzbot automated kernel fuzzer and confirmed by upstream maintainers.

Technical ContextAI

The vivid driver (drivers/media/test-drivers/vivid/) is a virtual video capture and output device used primarily for kernel development and QA within the Linux media subsystem. The vulnerability exists in vivid_update_format_cap() and vivid_update_format_out(), which recalculate and apply format parameters whenever capability-related V4L2 controls (CROP, COMPOSE, SCALE) are toggled. These functions must only execute when the associated video buffer queue is idle, a condition normally enforced via vb2_is_busy(). However, in the lifecycle window between VIDIOC_REQBUFS - which allocates and configures queue memory - and VIDIOC_STREAMON - which locks controls - capability controls remain settable. Toggling them in this window triggers format recalculation on an already-provisioned queue without the vb2_is_busy() guard, causing the kernel to modify live queue state and potentially corrupt adjacent kernel structures. The root cause class is effectively a TOCTOU (time-of-check/time-of-use) race on queue-busy state within the V4L2 buffer management layer. CPE data (cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:*) confirms the scope spans the Linux kernel broadly, with the vulnerability introduced at commit 73c3f48230cda01402ae189b05d56f1f7e0d53c9 and resolved across five separate stable-branch fix commits.

RemediationAI

Update the Linux kernel to a patched stable release: 6.6.148, 6.12.101, 6.18.42, 7.1.6, or 7.2-rc1, sourced from upstream git.kernel.org stable branches or the corresponding distribution vendor update channel (Red Hat, Ubuntu, Debian, SUSE). For systems that cannot immediately apply the kernel update, unload and blacklist the vivid module using 'modprobe -r vivid' followed by adding 'blacklist vivid' to /etc/modprobe.d/blacklist.conf; this carries zero operational impact on production systems since vivid is a development-only test driver with no production function. As a secondary control, restrict access to /dev/video device nodes to explicitly trusted users via udev rules or group membership (e.g., the 'video' group), reducing the pool of users able to open the vivid device - this does not eliminate the underlying flaw but raises the bar for exploitation on shared development systems. Distribution-maintained kernel advisories should be monitored for backport availability on older LTS branches not listed above.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 16.0 Not-Affected

Share

EUVD-2026-55305 vulnerability details – vuln.today

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