Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-72381

ksmbd: fix use-after-free of fp->owner.name in durable handle owner check
Back to all
CVE

CVE-2026-72381

ksmbd: fix use-after-free of fp->owner.name in durable handle owner check

In the Linux kernel, the following vulnerability has been resolved:

ksmbd: fix use-after-free of fp->owner.name in durable handle owner check

Two concurrent SMB2 durable reconnects (DH2C/DHnC) on the same

persistent_id race the fp->owner.name compare-read in

ksmbdvfscomparedurableowner() against the kfree() in

ksmbdreopendurable_fd()'s reopen-success path. fp->owner.name is a

standalone kstrdup() buffer whose lifetime is independent of the fp

refcount, and the two sites share no lock: the compare reads the buffer

while the reopen frees it, so the strcmp() can dereference freed memory.

Commit 7ce4fc40018d ("ksmbd: fix durable reconnect double-bind race in

ksmbdreopendurable_fd") made the fp->conn claim atomic under

globalft.lock (closing the owner.name double-free and the ksmbdfile

write-UAF), but the compare-read versus reopen-free pair was left

unserialized.

  BUG: KASAN: slab-use-after-free in strcmp+0x2c/0x80

  Read of size 1 by task kworker

    strcmp

    ksmbdvfscomparedurableowner

    smb2checkdurable_oplock

    smb2_open

  Freed by task kworker:

    kfree

    ksmbdreopendurable_fd

    smb2_open

  Allocated by task kworker:

    kstrdup

    sessionfdcheck

    smb2sessionlogoff

  The buggy address belongs to the cache kmalloc-8

Serialize both sides of the race with fp->f_lock.  The global durable

file-table lock still protects the durable reconnect claim, but

fp->owner.name is per-open state and does not need to block unrelated

durable table lookups or reconnects.  The teardown is left at its

existing location after the reopen-success point so that an _openid()

rollback still retains owner.name for a later legitimate reconnect to

verify.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.8
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://git.kernel.org/stable/c/38637163501fd9e2f684b8cd275d0db5d79f37c6, https://git.kernel.org/stable/c/5a5ac2852cd326529d02f778bc1aa6184701f4d7, https://git.kernel.org/stable/c/93d4d46bf9d442a12ea87278049ec416962c627f, https://git.kernel.org/stable/c/ed98719be41389d416953b8ef9f07a07dfea6b2b, https://git.kernel.org/stable/c/fb978d72052704c6b06c6b0f129fcd60b77169f5, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72381.json, https://nvd.nist.gov/vuln/detail/CVE-2026-72381, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Severity

9.8

CVSS Score
0
10

Basic Information

Base CVSS
9.8
EPSS Probability
0.00644%
EPSS Percentile
0.48234%
Introduced Version
712cdf917e77a6444ce3836874829d770db20ee6,c7f0f0d01c88bdcb8b1694d7d321670013f7ed7d,00ce8d6789dae72d042a4522264964c72891ca37,49110a8ce654bbe56bef7c5e44cce31f4b102b8a,0,6.6.142,6.12.92,6.18.25,7.0.2,6.7.0,6.13.0,6.19.0
Fix Available
fb978d72052704c6b06c6b0f129fcd60b77169f5,93d4d46bf9d442a12ea87278049ec416962c627f,5a5ac2852cd326529d02f778bc1aa6184701f4d7,38637163501fd9e2f684b8cd275d0db5d79f37c6,6.6.145,6.12.97,6.18.40,7.1,7.1.5,6.12.100-1

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading