CVE-2024-57930

tracing: Have process_string() also allow arrays

MEDIUM
5.5
CVSS Score
Published: January 21, 2025 at 12:01 PM UTC
Updated: June 17, 2026 at 08:14 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: tracing: Have process_string() also allow arrays In order to catch a common bug where a TRACE_EVENT() TP_fast_assign() assigns an address of an allocated string to the ring buffer and then references it in TP_printk(), which can be executed hours later when the string is free, the function test_event_printk() runs on all events as they are registered to make sure there's no unwanted dereferencing. It calls process_string() to handle cases in TP_printk() format that has "%s". It returns whether or not the string is safe. But it can have some false positives. For instance, xe_bo_move() has: TP_printk("move_lacks_source:%s, migrate object %p [size %zu] from %s to %s device_id:%s", __entry->move_lacks_source ? "yes" : "no", __entry->bo, __entry->size, xe_mem_type_to_name[__entry->old_placement], xe_mem_type_to_name[__entry->new_placement], __get_str(device_id)) Where the "%s" references into xe_mem_type_to_name[]. This is an array of pointers that should be safe for the event to access. Instead of flagging this as a bad reference, if a reference points to an array, where the record field is the index, consider it safe.

Affected

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

6.1.122 ≤ v < 6.1.1246.12.7 ≤ v < 6.12.96.6.68 ≤ v < 6.6.702f6ad0b613cd45cca48e6eb04f65351db018afb06.1.1226.12.76.13 rc46.13 rc56.6.6865a25d9f7ac02e0cf361356e834d1c71d36acca9683eccacc02d2eb25d1c34b8fb0363fcc7e08f6485d7635d54d75a2589f28583dc17feedc3aa4ad6f3ff759ec636b4094b8eb2c3801e4e6c97a6b712
Vendor states this is fixed in 3bcdc9039a6e9e6e47ed689a37b8d57894a3c571 (fixed)
Vendor states this is fixed in 631b1e09e213c86d5a4ce23d45c81af473bb0ac7 (fixed)
Vendor states this is fixed in 92bd18c74624e5eb9f96e70076aa46293f4b626f (fixed)
Vendor states this is fixed in a64e5295ebc4afdefe69cdf16cc286a60ff8ba4b (fixed)
Vendor states this is fixed in afc6717628f959941d7b33728570568b4af1c4b8 (fixed)
Affected range stops below 6.1.124, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.12.9, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.6.70, so it looks safe — our inference, not a vendor statement

References (6)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/3bcdc9039a6e9e6e47ed689a37b8d57894a3c571
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/631b1e09e213c86d5a4ce23d45c81af473bb0ac7
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/92bd18c74624e5eb9f96e70076aa46293f4b626f
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/a64e5295ebc4afdefe69cdf16cc286a60ff8ba4b
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/afc6717628f959941d7b33728570568b4af1c4b8
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html

CVSS

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

Quick Info

StatusMODIFIED
CWE
NVD-CWE-noinfo

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