Executive brief
A vulnerability was identified in the Linux kernel's USS720 USB-to-parallel port driver. When the driver fails to initialize a specific type of hardware adapter, it fails to properly clean up system resources, leaving behind a 'stale' reference to memory that has already been deleted. This could potentially lead to system instability or a crash if the system attempts to access the invalid memory location.
Technical details
A vulnerability exists in the uss720_probe() function within drivers/usb/misc/uss720.c. The driver registers a parport device before validating the hardware via get_1284_register(). If this validation fails, the error path releases the driver's private data but fails to unregister the parport. This leaves the parport bus device registered with a stale pointer (pp->private_data) pointing to the freed memory. An attacker with physical access to plug in a specially crafted or incompatible USB device could trigger this error path, potentially leading to a use-after-free or kernel oops. The fix ensures parport_del_port() is called and pointers are cleared before the private data is freed.
Affected products
- Linux Linux Kernel uss720.c driver
Timeline
- 2026-07-07: patched: Initial patch authored
- 2026-07-25: disclosed: CVE published
References
- https://git.kernel.org/stable/c/0b3073f40cc9f95d5ff0037eb0a06f5c1725a7ea
- https://git.kernel.org/stable/c/1712fd71a5aaf81e47c747f180535fa963ad7830
- https://git.kernel.org/stable/c/48dd0b2ec9f2e97c486eb68cd0a64b25c1c3df3e
- https://git.kernel.org/stable/c/5e62d7857fd51b908b8371062ee839739a086bbe
- https://git.kernel.org/stable/c/6bbb98bec71b577fda4f4b48f7aea5874b04a576
- https://git.kernel.org/stable/c/729b68a5bad71220ae0914c8bdab9488ad5be6c8
- https://git.kernel.org/stable/c/93563243377f8e9b46cc94d9c4f06533dd31b141