CVE-2025-37923: tracing: Fix oob write in trace_seq_to_buffer()
In the Linux kernel, the following vulnerability has been resolved:
tracing: Fix oob write in trace_seq_to_buffer()
syzbot reported this bug:
==================================================================
BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]
BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822
Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260
CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
print_address_description mm/kasan/report.c:408 [inline]
print_report+0xc3/0x670 mm/kasan/report.c:521
kasan_report+0xe0/0x110 mm/kasan/report.c:634
check_region_inline mm/kasan/generic.c:183 [inline]
kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189
__asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106
trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]
tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822
....
==================================================================
It has been reported that trace_seq_to_buffer() tries to copy more data
than PAGE_SIZE to buf. Therefore, to prevent this, we should use the
smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.
Security readout for executives and security teams
Plain-English summary
A flaw in Linux kernel tracing can copy more data than fits in a page-sized buffer, writing outside allocated memory. A local attacker with limited privileges may be able to trigger kernel memory corruption, potentially affecting confidentiality, integrity, and availability. The supplied evidence does not demonstrate successful malicious exploitation.
Executive priority
Treat this as high-priority kernel maintenance, particularly for shared or multi-user Linux systems. It is not remotely exploitable according to the supplied vector, reducing immediate internet-facing urgency. Still, kernel memory corruption can have severe consequences, so affected systems should receive vendor updates promptly.
Technical view
trace_seq_to_buffer() could pass more than PAGE_SIZE bytes to a page-sized destination during tracing_splice_read_pipe(), causing a slab out-of-bounds write. KASAN detected the condition in a syzkaller test. The upstream correction caps the copy length at the smaller of trace_seq_used() and PAGE_SIZE.
Likely exposure
Exposure is limited to systems running an affected Linux kernel where a local, low-privileged user can reach the vulnerable tracing path. Network exposure alone is insufficient. The supplied version data spans multiple kernel lines, so distribution package status and applicable stable-branch commits must be checked.
Exploitation context
The CVSS vector describes a local, low-complexity attack requiring low privileges and no user interaction. This CVE is not listed as KEV, and the supplied sources provide no evidence of active exploitation or public weaponization. The syzbot report demonstrates the bug, not malicious exploitation.
Researcher notes
The report records a 4,507-byte write on a 6.15-rc1 syzkaller build through tracing_splice_read_pipe(). Multiple stable-branch commits are supplied, indicating backports across kernel lines. Determine remediation through distribution advisories and commit ancestry rather than comparing only upstream version numbers.
Mitigation direction
Install the Linux kernel update supplied by your distribution or vendor that includes the applicable upstream fix.
Reboot into the updated kernel and remove vulnerable kernels from normal boot selection.
If updating is delayed, consult vendor guidance; the supplied sources name no standalone workaround.
Validation and detection
Inventory running kernel and distribution package versions across servers, appliances, container hosts, and developer systems.
Confirm vendor changelogs or kernel source contain the stable fix applicable to each deployed kernel branch.
After reboot, verify every system runs the remediated kernel, not merely an installed update.
Review kernel and KASAN logs for tracing-related out-of-bounds reports or unexplained crashes.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-37923 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
11Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.