CVE-2026-90032
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
media: usbtv: keep device alive while ALSA card exists
The ALSA PCM callbacks store the driver state in pcm->private_data. An open PCM file can outlive USB disconnect because usbtv_audio_free() uses snd_card_free_when_closed(). The disconnect path can then drop the V4L2 device reference and free struct usbtv before ALSA releases the substream, so a later close dereferences freed memory in snd_usbtv_pcm_close().
Take a V4L2 device reference for the ALSA card and drop it from the card private_free callback. This keeps struct usbtv valid until ALSA has closed the remaining files and freed the card.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 97b5e8b22b98e287481a97a9a4cfebbb348738a5 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 503be26ff888cb3576e55d251895d290e8146f27 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < be0f7745f883386e5263b4e475686a81dfa87175 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 67374e3a00814dcdd46e9feca61f69f7f2d81957 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 239d1683e08b2aee2a15ef35706e1ea9a76681d8 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 7690a86b193271322cd31ab77349a87aa10858e4 | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < 1618257cb0aba4ce342ae8c0228368c24161f5fb | affected |
| Linux | Linux | 63ddf68de52efaac40a9287e44266ac30e71dd36 < fc530fe168bb2b745a93f553ad21fc25fd9cba3d | affected |
| Linux | Linux | 3.18 | affected |
| Linux | Linux | 0 < 3.18 | unaffected |
| Linux | Linux | 5.10.270 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.221 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.188 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.157 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.51 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.5 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/97b5e8b22b98e287481a97a9a4cfebbb348738a5
- https://git.kernel.org/stable/c/503be26ff888cb3576e55d251895d290e8146f27
- https://git.kernel.org/stable/c/be0f7745f883386e5263b4e475686a81dfa87175
- https://git.kernel.org/stable/c/67374e3a00814dcdd46e9feca61f69f7f2d81957
- https://git.kernel.org/stable/c/239d1683e08b2aee2a15ef35706e1ea9a76681d8
- https://git.kernel.org/stable/c/7690a86b193271322cd31ab77349a87aa10858e4
- https://git.kernel.org/stable/c/1618257cb0aba4ce342ae8c0228368c24161f5fb
- https://git.kernel.org/stable/c/fc530fe168bb2b745a93f553ad21fc25fd9cba3d
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.