Linux: Input: ati_remote2 - fix type confusion in device attribute handlers
What fixes it
- 2caae9d1977beea0a7914b3d86639262801fd116LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
Input: ati_remote2 - fix type confusion in device attribute handlers
Previously, the channel_mask and mode_mask attributes were registered on the parent usb_device via sysfs_create_group(). When commit b20d6bf8014b ("Input: ati-remote2 - use driver core to instantiate device attributes") converted the driver to let the driver core manage them via dev_groups in struct usb_driver, the attributes moved to the bound usb_interface devices, but the show and store callbacks were not updated accordingly.
As a result, the callbacks still invoked to_usb_device() on a device pointer belonging to a struct usb_interface, producing an invalid usb_device pointer.
Use to_usb_interface() directly in the attribute handlers to obtain the interface and its driver data.
Text from CVE List
Affected versions 10
- Linuxaffected: b20d6bf8014b2d6fcf65c150453d95a6276fd1fa before e44ec6b6d3c0b8ea089b589fa0cce49a4da66b89CVE List
- Linuxaffected: b20d6bf8014b2d6fcf65c150453d95a6276fd1fa before d738e51bf2c21921df351f536147178ae3cbd38bCVE List
- Linuxaffected: b20d6bf8014b2d6fcf65c150453d95a6276fd1fa before 2caae9d1977beea0a7914b3d86639262801fd116CVE List
- Linuxaffected: b20d6bf8014b2d6fcf65c150453d95a6276fd1fa before f321cc430c49b6c1be0d53f2ef19d8342d8029ccCVE List
- Linuxaffected: 6.11CVE List
- Linuxunaffected: all versions before 6.11CVE List
- Linuxunaffected: 6.12.113 through 6.12.*CVE List
- Linuxunaffected: 6.18.57 through 6.18.*CVE List
- Linuxunaffected: 7.2.11 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 4
- git.kernel.org/stable/c/e44ec6b6d3c0b8ea089b589fa0cce49a4da66b89Referencevia CVE List
- git.kernel.org/stable/c/d738e51bf2c21921df351f536147178ae3cbd38bReferencevia CVE List
- git.kernel.org/stable/c/2caae9d1977beea0a7914b3d86639262801fd116Referencevia CVE List
- git.kernel.org/stable/c/f321cc430c49b6c1be0d53f2ef19d8342d8029ccReferencevia CVE List