critical CVSS 9.8

CVE-2026-64384·Kernel vulnerability

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix change notify replay double-free A response-bearing attempt can return a replayable error and free its response buffer. If SMB2_notify_init() fails before the next send, cleanup retains the previous buffer type and frees that response again. Reset response bookkeeping before each attempt to prevent the stale free.

Severity
critical
Software
Kernel
Fixed in
7.1.4
Published
2026-07-25

Affected versions

From: 6.19

Until: 7.1.4

Fixed in: 7.1.4

How to fix this CVE

Update your Linux kernel to version 7.1.4 or later to resolve a critical double-free vulnerability in the SMB client change notify handler. This flaw occurs when replay logic fails to properly reset response buffer state between retry attempts, potentially leading to kernel memory corruption. Patch your systems immediately as this affects all kernel versions from 6.19 through 7.1.3.

sudo dnf update kernel kernel-devel

Defensia detects this vulnerability

How to check if you are affected

  1. Run `uname -r` to check your current kernel version; versions 6.19 to 7.1.3 are vulnerable
  2. Check if SMB client functionality is enabled with `cat /boot/config-$(uname -r) | grep CONFIG_SMB_CLIENT` (should show =y or =m if enabled)
  3. Search system logs for SMB change notification errors with `journalctl -u kernel -g 'smb.*notify' --no-pager | head -20` or `grep -i 'smb.*notify' /var/log/kern.log`
  4. Verify the patch by checking the kernel build date with `uname -v` and comparing against the release date of kernel 7.1.4 or later; confirm with `dpkg -l | grep linux-image` (Debian/Ubuntu) or `rpm -q kernel` (RHEL/CentOS)

FAQ

What is CVE-2026-64384?

This is a critical double-free vulnerability in the Linux kernel's SMB client implementation, specifically in the change notify replay mechanism. When a replayable error occurs during SMB2 change notification, the kernel fails to properly reset internal buffer state before the next retry attempt, causing the same memory to be freed twice and potentially leading to arbitrary kernel code execution.

Is CVE-2026-64384 being actively exploited?

No, this vulnerability is not currently listed in CISA's Known Exploited Vulnerabilities catalog, and no public exploits are available. However, the critical CVSS score of 9.8 means systems should still be patched immediately as exploitation is theoretically possible.

What versions of Kernel are affected by CVE-2026-64384?

Linux kernel versions 6.19 through 7.1.3 are vulnerable. Kernel 7.1.4 and all later versions contain the fix.

How do I check if my server is vulnerable to CVE-2026-64384?

Run `uname -r` and note the kernel version. If it falls between 6.19 and 7.1.3 (inclusive), your system is vulnerable. You can also run `apt list --upgradable 2>/dev/null | grep linux-image` (Ubuntu/Debian) or `dnf check-update kernel` (RHEL/CentOS) to see if kernel updates are available.

Does Defensia detect CVE-2026-64384?

Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2026-64384 will appear in your dashboard with remediation steps and version guidance.

Related Kernel CVEs

CVE-2026-64439CVSS 9.8In the Linux kernel, the following vulnerability has been resolved: crypto: krb5 - filter out async aead implementations at alloc krb5_aead_encrypt(), krb5_aead_decrypt() in rfc3961_simplified.c and rfc8009_encrypt(), rfc8009_decrypt() in rfc8009_aes2.c set a NULL completion callback and treat any negative return from crypto_aead_{encrypt,decrypt}() as terminal, falling through to kfree_sensitive(buffer). When the encrypt_name resolves to an async AEAD instance the request returns -EINPROGRESS, the buffer is freed while the backend's worker still holds a pointer, and the worker dereferences the freed slab on completion. KASAN report under UML+SLUB with a synthetic async aead backend bound to krb5->encrypt_name: BUG: KASAN: slab-use-after-free in t5_stub_complete+0x7d/0xc7 The helpers were written synchronously, so filter the async instances out at allocation time instead of plumbing crypto_wait_req() through every call site. Reachable via net/rxrpc/rxgk.c, fs/afs/cm_security.c and net/ceph/crypto.c on systems with an async AEAD provider bound to the krb5 enctype name.
CVE-2026-100075CVSS 9.8In the Linux kernel, the following vulnerability has been resolved: RDMA/srpt: Fix srpt_alloc_rw_ctxs() unwind counters When srpt_alloc_rw_ctxs() fails partway through a multi-buffer indirect descriptor, the unwind path destroys RDMA contexts but leaves stale n_rw_ctx and n_rdma values (and a dangling rw_ctxs pointer). Later sq_wr_avail accounting in srpt_queue_response() or srpt_write_pending() can then subtract the wrong number of send queue credits. Reset the counters and clear rw_ctxs after freeing the heap allocation before returning an error.
CVE-2026-64385CVSS 9.8In the Linux kernel, the following vulnerability has been resolved: smb: client: fix double-free in SMB2_ioctl() replay A response-bearing attempt can return a replayable error and free its response buffer. If SMB2_ioctl_init() fails before the next send, cleanup retains the previous buffer type and frees that response again. Reset response bookkeeping before each attempt to prevent the stale free.
CVE-2026-64387CVSS 9.8In the Linux kernel, the following vulnerability has been resolved: smb: client: fix query directory replay double-free A response-bearing attempt can return a replayable error and free its response buffer. If SMB2_query_directory_init() fails before the next send, cleanup retains the previous buffer type and frees that response again. Reset response bookkeeping before each attempt to prevent the stale free.
CVE-2026-64386CVSS 9.8In the Linux kernel, the following vulnerability has been resolved: smb: client: fix query_info() replay double-free A response-bearing attempt can return a replayable error and free its response buffer. If SMB2_query_info_init() fails before the next send, cleanup retains the previous buffer type and frees that response again. Reset response bookkeeping before each attempt to prevent the stale free.

References

Track CVEs across your fleet automatically

Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-64384. Free for 1 server.

Get started free