CVE-2026-68399
HighCVSS 7.8Exploitation Probability (EPSS)
Low risk3th percentile - higher than 3% of all known CVEs
Summary
A use-after-free (UAF) vulnerability was found in the Linux kernel's sk_clone() function for BPF sockets. On early bailout, the pointer to the parent socket's BPF storage remains in the cloned socket, leading to its deallocation when the clone is freed and subsequent use of freed memory by the parent socket.
Risk Assessment
An attacker could exploit this vulnerability to escalate privileges or cause a system crash (kernel panic).
Recommendation
Apply a Linux kernel update containing the fix that resets the sk_bpf_storage pointer to NULL after socket cloning.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix UAF in sock clone early bailouts Similar to recent commit 9b51a6155d14 ("bpf,fork: wipe ->bpf_storage before bailouts that access it"), sk_clone() performs an initial shallow copy of the socket field ->sk_bpf_storage via sock_copy() for the cloned socket newsk. If sk_clone() bails out early (e.g. if sk_filter_charge() fails) prior to calling bpf_sk_storage_clone(), newsk->sk_bpf_storage still points to the parent socket's BPF local storage. When newsk is subsequently freed via sk_free(), the deallocation path (__sk_destruct() -> bpf_sk_storage_free()) destroys the parent socket's BPF local storage, leading to a use-after-free (UAF) on the parent socket. Fix this by resetting newsk->sk_bpf_storage to NULL immediately after sock_copy() in sk_clone(), and remove the now redundant initialization from bpf_sk_storage_clone().

