CVE-2026-97540

Summary

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

net: usb: pegasus: don't rely on id table pointer arithmetic

The current code is broken when dynamic ID is involved; in such cases usb_device_id parameter of probe lives on the heap and the pointer arithmetic will get an index that is wildly out of bound. Instead of keeping a side table for additional information, use driver_info field of the usb_device_id.

The dynamic ID parsing code needs to be updated for this; convert it to just write to the reserved entry for dynamic ID and remove the weird loop.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 9425a13960ef38bac237608f25c9ee64ff113086affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 7654812b65047349ea4c111eed42c4315a00e462affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 61b84e964a829d534f24eab4cbd4035d22b52601affected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < ce8101c331956bbd3e20681331dfd22eb7c1c1eaaffected
LinuxLinux0 < 6.12.111affected
LinuxLinux0 < 6.18.53affected
LinuxLinux0 < 7.2.7affected
LinuxLinux6.12.111 <= 6.12.*unaffected
LinuxLinux6.18.53 <= 6.18.*unaffected
LinuxLinux7.2.7 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References