CVE-2024-36896
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
USB: core: Fix access violation during port device removal
Testing with KASAN and syzkaller revealed a bug in port.c:disable_store(): usb_hub_to_struct_hub() can return NULL if the hub that the port belongs to is concurrently removed, but the function does not check for this possibility before dereferencing the returned value.
It turns out that the first dereference is unnecessary, since hub->intfdev is the parent of the port device, so it can be changed easily. Adding a check for hub == NULL prevents further problems.
The same bug exists in the disable_show() routine, and it can be fixed the same way.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | f061f43d7418cb62b8d073e221ec75d3f5b89e17 < 5f1d68ef5ddac27c6b997adccd1c339cef1e6848 | affected |
| Linux | Linux | f061f43d7418cb62b8d073e221ec75d3f5b89e17 < 63533549ff53d24daf47c443dbd43c308afc3434 | affected |
| Linux | Linux | f061f43d7418cb62b8d073e221ec75d3f5b89e17 < 6119ef6517ce501fc548154691abdaf1f954a277 | affected |
| Linux | Linux | f061f43d7418cb62b8d073e221ec75d3f5b89e17 < a4b46d450c49f32e9d4247b421e58083fde304ce | affected |
| Linux | Linux | 6.0 | affected |
| Linux | Linux | 0 < 6.0 | unaffected |
| Linux | Linux | 6.1.91 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.31 <= 6.6.* | unaffected |
| Linux | Linux | 6.8.10 <= 6.8.* | unaffected |
| Linux | Linux | 6.9 <= * | unaffected |
Weaknesses
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: none
- Automatable: yes
- Technical Impact: partial
CVE Program Container
Additional References
- https://git.kernel.org/stable/c/5f1d68ef5ddac27c6b997adccd1c339cef1e6848
- https://git.kernel.org/stable/c/63533549ff53d24daf47c443dbd43c308afc3434
- https://git.kernel.org/stable/c/6119ef6517ce501fc548154691abdaf1f954a277
- https://git.kernel.org/stable/c/a4b46d450c49f32e9d4247b421e58083fde304ce
References
- https://git.kernel.org/stable/c/5f1d68ef5ddac27c6b997adccd1c339cef1e6848
- https://git.kernel.org/stable/c/63533549ff53d24daf47c443dbd43c308afc3434
- https://git.kernel.org/stable/c/6119ef6517ce501fc548154691abdaf1f954a277
- https://git.kernel.org/stable/c/a4b46d450c49f32e9d4247b421e58083fde304ce
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.