Linux kernel
cpe:2.3:a:linux:linux_kernel:*:*:*:*:*:*:*, +4 more
A vulnerability in the Linux kernel's tracing component can lead to an out-of-bounds memory access. This issue occurs when the string length written to the 'set_ftrace_filter' command exceeds the maximum buffer limit, 'FTRACE_BUFF_MAX'. The 'trace_get_user' function fails to properly terminate the parser's buffer, causing a kernel memory error. The vulnerability has been addressed by restricting access to the parser's buffer when 'trace_get_user' fails.
Exploitation of this vulnerability causes a slab-out-of-bounds memory access, which can lead to memory corruption.
The vulnerability can be reproduced by writing a string longer than 'FTRACE_BUFF_MAX' to the 'set_ftrace_filter' command. This can be done by using a shell command that exceeds the maximum buffer limit, which will trigger a Kernel Address Sanitizer (KASAN) alert for a slab-out-of-bounds read. The call stack will show the 'trace_get_user' function failing to process the string correctly, leading to the out-of-bounds access in the 'strsep' function.
Users can upgrade to the patched version of the Linux kernel available in the Linux Kernel Git Repository.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.