media: uvcvideo: Fix crash during unbind if gpio unit is in use
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.15.179, 6.1.130, 6.6.78, 6.12.14, 6.13.3
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: media: uvcvideo: Fix crash during unbind if gpio unit is in use We used the wrong device for the device managed functions. We used the usb device, when we should be using the interface device. If we unbind the driver from the usb interface, the cleanup functions are never called. In our case, the IRQ is never disabled. If an IRQ is triggered, it will try to access memory sections that are already free, causing an OOPS. We cannot use the function devm_request_threaded_irq here. The devm_* clean functions may be called after the main structure is released by uvc_delete. Luckily this bug has small impact, as it is only affected by devices with gpio units and the user has to unbind the device, a disconnect will not trigger this error.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in 0fdd7cc593385e46e92e180b71e264fc9c195298; From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in 3c00e94d00ca079bef7906d6f39d1091bccfedd3; From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in 0b5e0445bc8384c18bd35cb9fe87f6258c6271d9; From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in d2eac8b14ac690aa73052aa6d4ba69005715367e; From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in 5d2e65cbe53d0141ed095cf31c2dcf3d8668c11d; From 2886477ff98740cc3333cf785e4de0b1ff3d7a28 · fixed in a9ea1a3d88b7947ce8cadb2afceee7a54872bbc5
- Linux Linux
5.12
- KernelLinux
From 5.12.0 · fixed in 5.15.179; From 5.16.0 · fixed in 6.1.130; From 6.2.0 · fixed in 6.6.78; From 6.7.0 · fixed in 6.12.14; From 6.13.0 · fixed in 6.13.3