CVE-2024-41012

MEDIUM

Linux Kernel Use-After-Free in File Lock Handling

Title source: llm
STIX 2.1

Description

In the Linux kernel, the following vulnerability has been resolved: filelock: Remove locks reliably when fcntl/close race is detected When fcntl_setlk() races with close(), it removes the created lock with do_lock_file_wait(). However, LSMs can allow the first do_lock_file_wait() that created the lock while denying the second do_lock_file_wait() that tries to remove the lock. Separately, posix_lock_file() could also fail to remove a lock due to GFP_KERNEL allocation failure (when splitting a range in the middle). After the bug has been triggered, use-after-free reads will occur in lock_get_status() when userspace reads /proc/locks. This can likely be used to read arbitrary kernel memory, but can't corrupt kernel memory. Fix it by calling locks_remove_posix() instead, which is designed to reliably get rid of POSIX locks associated with the given file and files_struct and is also used by filp_flush().

Scores

CVSS v3 6.3
EPSS 0.0022
EPSS Percentile 12.5%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:H

CISA SSVC

Vulnrichment
Exploitation none
Automatable no
Technical Impact partial

Details

CWE
CWE-416
Status published
Products (27)
linux/Kernel 2.6.13 - 4.19.319linux
linux/Kernel 4.20.0 - 5.4.281linux
linux/Kernel 5.11.0 - 5.15.164linux
linux/Kernel 5.16.0 - 6.1.101linux
linux/Kernel 5.5.0 - 5.10.223linux
linux/Kernel 6.2.0 - 6.6.42linux
linux/Kernel 6.7.0 - 6.9.9linux
Linux/Linux < 2.6.13
Linux/Linux 2.6.13
Linux/Linux 4.19.319 - 4.19.*
... and 17 more
Published Jul 23, 2024
Tracked Since Feb 18, 2026