Bug 2546542 (CVE-2026-98201) - CVE-2026-98201 kernel: Input: zero ff_effect before compat copy in input_ff_effect_from_user
Summary: CVE-2026-98201 kernel: Input: zero ff_effect before compat copy in input_ff_e...
Keywords:
Status: NEW
Alias: CVE-2026-98201
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-10-06 09:41 UTC by OSIDB Bzimport
Modified: 2026-10-09 09:25 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-10-06 09:41:45 UTC
In the Linux kernel, the following vulnerability has been resolved:

Input: zero ff_effect before compat copy in input_ff_effect_from_user

In the compat path input_ff_effect_from_user() aliases the caller's
native struct ff_effect with the smaller struct ff_effect_compat and
copies only the compat sized prefix:

	compat_effect = (struct ff_effect_compat *)effect;

	if (copy_from_user(compat_effect, buffer,
			   sizeof(struct ff_effect_compat)))

The tail of the native structure is never written. Callers pass an
uninitialized on-stack object, for example evdev_do_ioctl() for
EVIOCSFF, so those bytes keep their previous stack contents.
input_ff_upload() then stores the full native structure in
ff->effects[id], from where a uinput based force feedback daemon can
read it back via UI_BEGIN_FF_UPLOAD, disclosing kernel stack memory to
userspace.

Zero the effect before the compat copy.


Note You need to log in before you can comment on or make changes to this bug.