High severity · published Sep 5, 2025
CVE-2025-39683
tracing: Limit access to parser->buffer when trace_get_user failed
7.1
CVSS
0.2%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved: tracing: Limit access to parser->buffer when trace_get_user failed When the length of the string written to set_ftrace_filter exceeds FTRACE_BUFF_MAX, the following KASAN alarm will be triggered: BUG: KASAN: slab-out-of-bounds in strsep+0x18c/0x1b0 Read of size 1 at addr ffff0000d00bd5ba by task ash/165 CPU: 1 UID: 0 PID: 165 Comm: ash Not tainted 6.16.0-g6bcdbd62bd56-dirty Hardware name: linux,dummy-virt (DT) Call trace: show_stack+0x34/0x50 (C) dump_stack_lvl+0xa0/0x158 print_address_description.constprop.0+0x88/0x398 print_report+0xb0/0x280 kasan_report+0xa4/0xf0 __asan_report_load1_noabort+0x20/0x30 strsep+0x18c/0x1b0 ftrace_process_regex.isra.0+0x100/0x2d8 ftrace_regex_release+0x484/0x618 __fput+0x364/0xa58 ____fput+0x28/0x40 task_work_run+0x154/0x278 do_notify_resume+0x1f0/0x220 el0_svc+0xec/0xf0 el0t_64_sync_handler+0xa0/0xe8 el0t_64_sync+0x1ac/0x1b0 The reason is that trace_get_user will fail when processing a string longer than FTRACE_BUFF_MAX, but not set the end of parser->buffer to 0. Then an OOB access will be triggered in ftrace_regex_release-> ftrace_process_regex->strsep->strpbrk. We can solve this problem by limiting access to parser->buffer when trace_get_user failed.
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
Attack vector
Local
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
None
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 8% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
KE
Kernel · Linux
4.4.269 before 4.5; 4.9.269 before 4.10; 4.14.233 before 4.15; 4.19.191 before 4.20; 5.4.118 before 5.5; 5.10.36 before 5.10.241; +8 more · source: NVD
LI
Linux · Linux
634684d79733124f7470b226b0f42aada4426b07 before b842ef39c2ad6156c13afdec25ecc6792a9b67b9; 8c9af478c06bb1ab1422f90d8ecbc53defd44bc3 before 41b838420457802f21918df66764b6fbf829d330; 8c9af478c06bb1ab1422f90d8ecbc53defd44bc3 before 418b448e1d7470da9d4d4797f71782595ee69c49; 8c9af478c06bb1ab1422f90d8ecbc53defd44bc3 before 58ff8064cb4c7eddac4da1a59da039ead586950a; 8c9af478c06bb1ab1422f90d8ecbc53defd44bc3 before d0c68045b8b0f3737ed7bd6b8c83b7887014adee; 8c9af478c06bb1ab1422f90d8ecbc53defd44bc3 before 3079517a5ba80901fe828a06998da64b9b8749be; +17 more · source: vendor
DL
Debian Linux · Debian
11.0 · source: NVD
SC
SIMATIC CN 4100 · Siemens
before V5.0 · source: CISA
SS
SS