Skip to main content

Linux EUVDEUVD-2026-66490

| CVE-2026-80575 HIGH
2026-08-26 Linux GHSA-6c2r-6hqv-3xph
7.8
CVSS 3.1 · Vendor: Linux
View
This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 27, 2026

Out-of-bounds memory access in the Linux kernel's cs40l50-vibra haptic driver allows a local low-privileged user to read or write beyond allocated kernel buffers by submitting a crafted force-feedback effect via EVIOCSFF ioctl. The driver's cs40l50_add() function fails to validate user-supplied custom_len before dereferencing custom_data[0] and custom_data[1], and an integer sign-wrap in bank type handling permits negative array indexing into vib->dsp.banks[]. Three distinct code paths are exploitable: zero-length allocation returning ZERO_SIZE_PTR, single-word allocation followed by a two-word read, and s16 overflow enabling out-of-bounds bank array access. No public exploit has been identified at time of analysis, and the flaw is not listed in CISA KEV.

Affected VersionsENISA

Linux patch: 0
Linux patch: 7.1.10
Linux c38fe1bb5d21c2ce0857965ee06174ee587d6b42 <52a818c586ae2c36b7324bfaefb547f5e866a8ae
Linux patch: 6.12.105
Linux patch: 7.2
Linux 6.11
Linux c38fe1bb5d21c2ce0857965ee06174ee587d6b42 <d38554602a0b04e85fad28ce72c7500cf50d419b
Linux c38fe1bb5d21c2ce0857965ee06174ee587d6b42 <7d5c576cb1c86047b1fcb1aa9532e17fc5e46c1d
Linux c38fe1bb5d21c2ce0857965ee06174ee587d6b42 <3855b6a11f8a7aceb8181cc08c99afef58517006
Linux patch: 6.18.46

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.

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

Vendor (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
SUSE 6.1 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:H
Red Hat 5.5 MEDIUM

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

4
CVSS changed
Aug 27, 2026 - 06:22 NVD
7.8 (HIGH)
Patch available
Aug 26, 2026 - 16:17 EUVD
CVE Published
Aug 26, 2026 - 14:37 cve.org
UNKNOWN (no severity yet)
CVE Published
Aug 26, 2026 - 14:37 cve.org
HIGH 7.8

DescriptionCVE.org

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

Input: cs40l50-vibra - validate custom data from user space

cs40l50_add() copies the custom data of an FF_PERIODIC/FF_CUSTOM effect straight from the ff_effect the user passed to EVIOCSFF, without requiring it to hold anything:

work_data.custom_data = memdup_array_user(periodic->custom_data, periodic->custom_len, sizeof(s16)); work_data.custom_len = periodic->custom_len;

The driver then reads two words out of that buffer: custom_data[0] as the waveform bank in cs40l50_effect_bank_set(), and custom_data[1] as the index within the bank in cs40l50_effect_index_set(). Neither read is covered by a length check, and custom_len is fully user controlled:

  • custom_len == 0 makes memdup_array_user() call memdup_user() with a

length of zero, which returns ZERO_SIZE_PTR rather than an error, so custom_data[0] dereferences it.

  • custom_len == 1 allocates two bytes. A bank of ROM or RAM keeps

effect->type out of the OWT case, and custom_data[1] is then read one word past the allocation.

The bank value itself is also mishandled. It is masked with CS40L50_CUSTOM_DATA_MASK (0xffff) but stored in an s16, so a custom_data[0] of 0x8000 or above wraps to a negative value that passes the "bank_type >= CS40L50_WVFRM_BANK_NUM" test. cs40l50_effect_index_set() indexes vib->dsp.banks[] with it before the switch statement's default case gets a chance to reject it:

base_index = vib->dsp.banks[effect->type].base_index; max_index = vib->dsp.banks[effect->type].max_index;

Require the two words the driver reads to be present, and hold the masked bank in a u32 so the existing upper-bound test covers the whole range. The da7280 haptic driver already range checks custom_len this way.

Executive ViewAI

Why It Matters

A vulnerability in the Linux kernel's haptic driver component (CVE-2026-80575) permits unauthorized local users to access and modify kernel memory, creating risk of sensitive data exposure and system instability. While no public exploit has been identified at time of analysis, the vulnerability affects organizations deploying devices with force-feedback capabilities, including mobile and gaming platforms where local account compromise poses increased risk. Patching is required immediately to prevent potential data breaches and ensure system integrity.

Recommended Action

Within 24 hours, inventory systems running Linux kernels with cs40l50-vibra driver support and identify those handling sensitive data or operating in high-trust environments; within 7 days, obtain the vendor-released patch from your Linux distribution (Ubuntu, RHEL, Debian, or others) and validate it in non-production environments to ensure haptic functionality remains operational; within 30 days, deploy the patched kernel across all affected systems following your standard change management procedures and complete post-deployment validation.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Data Quality
3 sources
Confidence: Low

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 HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
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: 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

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