CVE-2024-57930

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-57930
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-57930.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-57930
Downstream
Related
Published
2025-01-21T12:01:27Z
Modified
2025-10-10T05:45:59.997228Z
Summary
tracing: Have process_string() also allow arrays
Details

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 TRACEEVENT() TPfastassign() assigns an address of an allocated string to the ring buffer and then references it in TPprintk(), which can be executed hours later when the string is free, the function testeventprintk() runs on all events as they are registered to make sure there's no unwanted dereferencing.

It calls processstring() to handle cases in TPprintk() format that has "%s". It returns whether or not the string is safe. But it can have some false positives.

For instance, xebomove() has:

TPprintk("movelackssource:%s, migrate object %p [size %zu] from %s to %s deviceid:%s", entry->movelackssource ? "yes" : "no", _entry->bo, _entry->size, xememtypetoname[entry->oldplacement], xememtypetoname[entry->newplacement], _getstr(device_id))

Where the "%s" references into xememtypetoname[]. 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.

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
85d7635d54d75a2589f28583dc17feedc3aa4ad6
Fixed
3bcdc9039a6e9e6e47ed689a37b8d57894a3c571
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
f3ff759ec636b4094b8eb2c3801e4e6c97a6b712
Fixed
631b1e09e213c86d5a4ce23d45c81af473bb0ac7
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2f6ad0b613cd45cca48e6eb04f65351db018afb0
Fixed
a64e5295ebc4afdefe69cdf16cc286a60ff8ba4b
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
683eccacc02d2eb25d1c34b8fb0363fcc7e08f64
Fixed
92bd18c74624e5eb9f96e70076aa46293f4b626f
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
65a25d9f7ac02e0cf361356e834d1c71d36acca9
Fixed
afc6717628f959941d7b33728570568b4af1c4b8

Affected versions

v6.*

v6.1.122
v6.1.123
v6.12.7
v6.12.8
v6.13-rc4
v6.13-rc5
v6.6.68
v6.6.69

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.1.122
Fixed
6.1.124
Type
ECOSYSTEM
Events
Introduced
6.6.68
Fixed
6.6.70
Type
ECOSYSTEM
Events
Introduced
6.12.7
Fixed
6.12.9