{"id":"CVE-2026-90162","title":"In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: defer publishing granted locks to prevent UAF/double-free race\n\nIn smb2_lock(), mid-batch granted locks are published to connection-wide\n(conn->lock_list) and fi…","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: defer publishing granted locks to prevent UAF/double-free race\n\nIn smb2_lock(), mid-batch granted locks are published to connection-wide\n(conn->lock_list) and fi…","severity":"high","cvss":8.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","vendor":"Linux","product":"Linux","affected":["Linux >= e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < a1d26dfb32919088e3638dca01068df3c4507433","Linux >= e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < 29f74f0f2e6df3b393b7b66e810136d0c64e3c59","Linux 5.15"],"published":"2026-09-17","updated":"2026-09-18","sourceUpdated":"2026-09-18T18:17:44.827","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-90162","references":[{"url":"https://git.kernel.org/stable/c/29f74f0f2e6df3b393b7b66e810136d0c64e3c59","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/a1d26dfb32919088e3638dca01068df3c4507433","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"}],"tags":["nvd","cve.org"],"epss":0.00575,"epssPercentile":0.46179,"ingestedAt":"2026-09-17T16:21:47.871Z","slug":"CVE-2026-90162","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: defer publishing granted locks to prevent UAF/double-free race\n\nIn smb2_lock(), mid-batch granted locks are published to connection-wide\n(conn->lock_list) and file-wide (fp->lock_list) lists immediately upon\nvfs_lock_file() success, while also remaining tracked on the stack-local\nrollback_list.\n\nIf a subsequent element in the same SMB2_LOCK request array fails\nvalidation or execution, the thread jumps to out: and walks\nrollback_list to undo previously granted locks. However, because the\ngranted lock was already published to conn->lock_list, a concurrent\nUNLOCK request on the same connection can find the lock object and\nkfree() it before the rollback loop executes.\n\nWhen the granting thread subsequently walks rollback_list, it\ndereferences and frees the already-freed ksmbd_lock structure, resulting\nin a Use-After-Free and Double-Free (on both ksmbd_lock and struct\nfile_lock).\n\nFix this by deferring the publication of granted locks to\nconn->lock_list and fp->lock_list until after the entire array of lock\nelements has been processed without error. Mid-batch grants remain\ntracked exclusively on the request-local rollback_list until the whole\nbatch succeeds, eliminating the race window.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"twilight","depthScore":49,"depthScoreParts":{"impact":48.4,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[{"seq":207157,"id":"CVE-2026-90162","ts":1789757337007,"field":"cvss","old":null,"new":"8.8"},{"seq":207156,"id":"CVE-2026-90162","ts":1789757337007,"field":"severity","old":"none","new":"high"}]}