CVE Catalog

CVE-2025-68263

CriticalCVSS 9.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.44%

37th percentile - higher than 37% of all known CVEs

Summary

In the Linux kernel, a vulnerability was resolved in the ksmbd: ipc module — a use-after-free in ipc_msg_send_request. The ipc_msg_send_request() function waits for a generic netlink reply using an ipc_msg_table_entry on the stack; the generic netlink handler fills entry->response under ipc_msg_table_lock, but ipc_msg_send_request() validated and freed entry->response without holding the same lock. Under high concurrency this allows a race where handle_response() copies data into entry->response while ipc_msg_send_request() has just freed it, leading to a slab-use-after-free reported by KASAN.

Risk Assessment

The vulnerability may lead to kernel memory corruption (use-after-free), potentially causing a system crash or possible code execution in the kernel context. Exploitation requires high concurrency and affects systems with the ksmbd module active.

Recommendation

Update the Linux kernel to a version containing the fix that takes ipc_msg_table_lock in ipc_msg_send_request() and removes the entry from ipc_msg_table under the lock. If the ksmbd module is not needed, consider disabling it.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: ksmbd: ipc: fix use-after-free in ipc_msg_send_request ipc_msg_send_request() waits for a generic netlink reply using an ipc_msg_table_entry on the stack. The generic netlink handler (handle_generic_event()/handle_response()) fills entry->response under ipc_msg_table_lock, but ipc_msg_send_request() used to validate and free entry->response without holding the same lock. Under high concurrency this allows a race where handle_response() is copying data into entry->response while ipc_msg_send_request() has just freed it, leading to a slab-use-after-free reported by KASAN in handle_generic_event(): BUG: KASAN: slab-use-after-free in handle_generic_event+0x3c4/0x5f0 [ksmbd] Write of size 12 at addr ffff888198ee6e20 by task pool/109349 ... Freed by task: kvfree ipc_msg_send_request [ksmbd] ksmbd_rpc_open -> ksmbd_session_rpc_open [ksmbd] Fix by: - Taking ipc_msg_table_lock in ipc_msg_send_request() while validating entry->response, freeing it when invalid, and removing the entry from ipc_msg_table. - Returning the final entry->response pointer to the caller only after the hash entry is removed under the lock. - Returning NULL in the error path, preserving the original API semantics. This makes all accesses to entry->response consistent with handle_response(), which already updates and fills the response buffer under ipc_msg_table_lock, and closes the race that allowed the UAF.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS