Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: USB: legousbtower: fix use-after-free on disconnect race mutex_unlock() may access the mutex structure after releasing the lock and therefore cannot be used to manage lifetime of objects directly (unlike spinlocks and refcounts). [1][2] Use a kref to release the driver data to avoid use-after-free in mutex_unlock() when release() races with disconnect(). [1] a51749ab34d9 ("locking/mutex: Document that mutex_unlock() is non-atomic") [2] 2b9d9e0a9ba0 ("locking/mutex: Clarify that mutex_unlock(), and most other sleeping locks, can still use the lock object after it's unlocked")
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 11d069f85851997b4ea0adf242ed9672dc749b8f; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before b4222c05066b252b451f9c8c4730b5b60824ea66; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 6462de75d2e370c7e74dcfb7b4ae79eb5a6a55ee; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 0b57e5ddbd89df3bc367463de3d2ca66f99a1a5e; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before ab2bfd7bec4f134b377ec42f513e90c35db94160; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 766738ecf2b819e54d38763c8d1c8ae6cff14b39; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 9ba62966461a8e3cc593b62c56ec62eb2d80436d; affected 18bcbcfe9ca2308ebffb40068b51803da9315d97 before 62fc8eb1b1481051f7bab4aa93d79809053dd09f |
| Linux / Linux | affected 2.6.25; unaffected 0 before 2.6.25; unaffected 5.10.261 through 5.10.*; unaffected 5.15.212 through 5.15.*; unaffected 6.1.178 through 6.1.*; unaffected 6.6.145 through 6.6.*; unaffected 6.12.96 through 6.12.*; unaffected 6.18.39 through 6.18.*; unaffected 7.1.4 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/11d069f85851997b4ea0adf242ed9672dc749b8f
- https://git.kernel.org/stable/c/b4222c05066b252b451f9c8c4730b5b60824ea66
- https://git.kernel.org/stable/c/6462de75d2e370c7e74dcfb7b4ae79eb5a6a55ee
- https://git.kernel.org/stable/c/0b57e5ddbd89df3bc367463de3d2ca66f99a1a5e
- https://git.kernel.org/stable/c/ab2bfd7bec4f134b377ec42f513e90c35db94160
- https://git.kernel.org/stable/c/766738ecf2b819e54d38763c8d1c8ae6cff14b39
- https://git.kernel.org/stable/c/9ba62966461a8e3cc593b62c56ec62eb2d80436d
- https://git.kernel.org/stable/c/62fc8eb1b1481051f7bab4aa93d79809053dd09f