{"id":"CVE-2026-64343","summary":"USB: ldusb: fix use-after-free on disconnect race","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nUSB: ldusb: fix use-after-free on disconnect race\n\nmutex_unlock() may access the mutex structure after releasing the lock\nand therefore cannot be used to manage lifetime of objects directly\n(unlike spinlocks and refcounts). [1][2]\n\nUse a kref to release the driver data to avoid use-after-free in\nmutex_unlock() when release() races with disconnect().\n\n[1] a51749ab34d9 (\"locking/mutex: Document that mutex_unlock() is\n                   non-atomic\")\n[2] 2b9d9e0a9ba0 (\"locking/mutex: Clarify that mutex_unlock(), and most\n                   other sleeping locks, can still use the lock object\n                   after it's unlocked\")","modified":"2026-07-27T04:03:21.925008268Z","published":"2026-07-25T08:50:05.828Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64343.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/02ca08fff74cf9b0a3c4d2cacde1c6edeeb95bb4"},{"type":"WEB","url":"https://git.kernel.org/stable/c/19bdfc7b3c179331eafa423d87e1336f43bbfeb8"},{"type":"WEB","url":"https://git.kernel.org/stable/c/2107a4fc8ff1cf1d52f416c1e5cc8e97413a5915"},{"type":"WEB","url":"https://git.kernel.org/stable/c/a3e794136ab5e3ad1e7019175a4b837aec86db4b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/af59829e67e11ba2511a9f8e4b9111afc7d1f550"},{"type":"WEB","url":"https://git.kernel.org/stable/c/d8f69404e1d671326f86d378b9f5bfbd56490e9d"},{"type":"WEB","url":"https://git.kernel.org/stable/c/e5a9bdce4bfd3e2226b5f3df5fb8385d6935ee69"},{"type":"WEB","url":"https://git.kernel.org/stable/c/fc55923a972e715f9a27187b47d4920709e23d85"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64343.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-64343"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"ce0d7d3f575fc1ba6a89c3c651e710355590daff"},{"fixed":"fc55923a972e715f9a27187b47d4920709e23d85"},{"fixed":"e5a9bdce4bfd3e2226b5f3df5fb8385d6935ee69"},{"fixed":"af59829e67e11ba2511a9f8e4b9111afc7d1f550"},{"fixed":"02ca08fff74cf9b0a3c4d2cacde1c6edeeb95bb4"},{"fixed":"d8f69404e1d671326f86d378b9f5bfbd56490e9d"},{"fixed":"2107a4fc8ff1cf1d52f416c1e5cc8e97413a5915"},{"fixed":"a3e794136ab5e3ad1e7019175a4b837aec86db4b"},{"fixed":"19bdfc7b3c179331eafa423d87e1336f43bbfeb8"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64343.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.6.26"},{"fixed":"5.10.261"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.11.0"},{"fixed":"5.15.212"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.16.0"},{"fixed":"6.1.178"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.145"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.96"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.39"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.1.4"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64343.json"}}],"schema_version":"1.7.5"}