vulnerability
Ubuntu: (Multiple Advisories) (CVE-2025-21776): Linux kernel vulnerabilities
Severity | CVSS | Published | Added | Modified |
---|---|---|---|---|
5 | (AV:L/AC:L/Au:S/C:N/I:N/A:C) | Feb 27, 2025 | May 20, 2025 | Jun 3, 2025 |
Description
In the Linux kernel, the following vulnerability has been resolved:
USB: hub: Ignore non-compliant devices with too many configs or interfaces
Robert Morris created a test program which can cause
usb_hub_to_struct_hub() to dereference a NULL or inappropriate
pointer:
Oops: general protection fault, probably for non-canonical address
0xcccccccccccccccc: 0000 [#1] SMP DEBUG_PAGEALLOC PTI
CPU: 7 UID: 0 PID: 117 Comm: kworker/7:1 Not tainted 6.13.0-rc3-00017-gf44d154d6e3d #14
Hardware name: FreeBSD BHYVE/BHYVE, BIOS 14.0 10/17/2021
Workqueue: usb_hub_wq hub_event
RIP: 0010:usb_hub_adjust_deviceremovable+0x78/0x110
...
Call Trace:
? die_addr+0x31/0x80
? exc_general_protection+0x1b4/0x3c0
? asm_exc_general_protection+0x26/0x30
? usb_hub_adjust_deviceremovable+0x78/0x110
hub_probe+0x7c7/0xab0
usb_probe_interface+0x14b/0x350
really_probe+0xd0/0x2d0
? __pfx___device_attach_driver+0x10/0x10
__driver_probe_device+0x6e/0x110
driver_probe_device+0x1a/0x90
__device_attach_driver+0x7e/0xc0
bus_for_each_drv+0x7f/0xd0
__device_attach+0xaa/0x1a0
bus_probe_device+0x8b/0xa0
device_add+0x62e/0x810
usb_set_configuration+0x65d/0x990
usb_generic_driver_probe+0x4b/0x70
usb_probe_device+0x36/0xd0
The cause of this error is that the device has two interfaces, and the
hub driver binds to interface 1 instead of interface 0, which is where
usb_hub_to_struct_hub() looks.
We can prevent the problem from occurring by refusing to accept hub
devices that violate the USB spec by having more than one
configuration or interface.
Solution(s)
References
- CVE-2025-21776
- https://attackerkb.com/topics/CVE-2025-21776
- UBUNTU-USN-7510-1
- UBUNTU-USN-7510-2
- UBUNTU-USN-7510-3
- UBUNTU-USN-7510-4
- UBUNTU-USN-7510-5
- UBUNTU-USN-7510-6
- UBUNTU-USN-7510-7
- UBUNTU-USN-7510-8
- UBUNTU-USN-7511-1
- UBUNTU-USN-7511-2
- UBUNTU-USN-7511-3
- UBUNTU-USN-7512-1
- UBUNTU-USN-7516-1
- UBUNTU-USN-7516-2
- UBUNTU-USN-7516-3
- UBUNTU-USN-7516-4
- UBUNTU-USN-7516-5
- UBUNTU-USN-7516-6
- UBUNTU-USN-7516-7
- UBUNTU-USN-7516-8
- UBUNTU-USN-7516-9
- UBUNTU-USN-7517-1
- UBUNTU-USN-7517-2
- UBUNTU-USN-7517-3
- UBUNTU-USN-7518-1
- UBUNTU-USN-7521-1
- UBUNTU-USN-7521-2
- UBUNTU-USN-7521-3
- UBUNTU-USN-7539-1
- UBUNTU-USN-7540-1

Explore Exposure Command
Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.