CVE-2024-53131

nilfs2: fix null-ptr-deref in block_touch_buffer tracepoint

MEDIUM
5.5
CVSS Score
Published: December 4, 2024 at 02:20 PM UTC
Updated: June 17, 2026 at 08:08 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix null-ptr-deref in block_touch_buffer tracepoint Patch series "nilfs2: fix null-ptr-deref bugs on block tracepoints". This series fixes null pointer dereference bugs that occur when using nilfs2 and two block-related tracepoints. This patch (of 2): It has been reported that when using "block:block_touch_buffer" tracepoint, touch_buffer() called from __nilfs_get_folio_block() causes a NULL pointer dereference, or a general protection fault when KASAN is enabled. This happens because since the tracepoint was added in touch_buffer(), it references the dev_t member bh->b_bdev->bd_dev regardless of whether the buffer head has a pointer to a block_device structure. In the current implementation, the block_device structure is set after the function returns to the caller. Here, touch_buffer() is used to mark the folio/page that owns the buffer head as accessed, but the common search helper for folio/page used by the caller function was optimized to mark the folio/page as accessed when it was reimplemented a long time ago, eliminating the need to call touch_buffer() here in the first place. So this solves the issue by eliminating the touch_buffer() call itself.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

3.9 ≤ v < 4.19.3253.9 ≤ v < 5.10.2313.9 ≤ v < 5.15.1743.9 ≤ v < 5.4.2873.9 ≤ v < 6.1.1193.9 ≤ v < 6.11.103.9 ≤ v < 6.123.9 ≤ v < 6.6.636.11.0 ≤ v < 6.11.106.6.0 ≤ v < 6.6.633.95305cb830834549b9203ad4d009ad5483c5e293f
Vendor states this is fixed in 085556bf8c70e2629e02e79268dac3016a08b8bf (fixed)
Vendor states this is fixed in 19c71cdd77973f99a9adc3190130bc3aa7ae5423 (fixed)
Vendor states this is fixed in 3b2a4fd9bbee77afdd3ed5a05a0c02b6cde8d3b9 (fixed)
Vendor states this is fixed in 59b49ca67cca7b007a5afd3de0283c8008157665 (fixed)
Vendor states this is fixed in 6438f3f42cda825f6f59b4e45ac3a1da28a6f2c9 (fixed)
Vendor states this is fixed in 77e47f89d32c2d72eb33d0becbce7abe14d061f4 (fixed)
Vendor states this is fixed in b017697a517f8779ada4e8ce1c2c75dbf60a2636 (fixed)
Vendor states this is fixed in cd45e963e44b0f10d90b9e6c0e8b4f47f3c92471 (fixed)
Vendor states this is fixed in 3.9 (unaffected)
Vendor states this is fixed in 4.19.325 (unaffected)
Vendor states this is fixed in 5.10.231 (unaffected)
Vendor states this is fixed in 5.15.174 (unaffected)
Vendor states this is fixed in 5.4.287 (unaffected)
Vendor states this is fixed in 6.1.119 (unaffected)
Vendor states this is fixed in 6.11.10 (unaffected)
Vendor states this is fixed in 6.12 (unaffected)
Vendor states this is fixed in 6.6.63 (unaffected)

References (10)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-476

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card