CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's cgroup/rstat functionality, where the `css_rstat_updated()` BPF kfunc does not validate the caller-provided CPU argument, potentially allowing an attacker to trigger an out-of-bounds access. This can lead to kernel crashes or arbitrary code execution, posing a significant risk to system stability and security. Organizations using affected Linux kernel versions, particularly those utilizing BPF programs with elevated privileges, should prioritize applying the necessary patches to mitigate this high-severity vulnerability.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: cgroup/rstat: validate cpu before css_rstat_cpu() access css_rstat_updated() is exposed as a BPF kfunc and accepts a caller-provided cpu argument. The function uses cpu for per-cpu rstat lookups without checking whether it refers to a valid possible CPU. A BPF iter/cgroup program with CAP_BPF and CAP_PERFMON can pass an invalid cpu value. On an unfixed UBSCAN_BOUNDS test kernel, cpu == 0x7fffffff triggers: UBSAN: array-index-out-of-bounds in kernel/cgroup/rstat.c:31:9 index 2147483647 is out of range for type 'long unsigned int [64]' Call Trace: css_rstat_updated bpf_iter_run_prog cgroup_iter_seq_show bpf_seq_read Add cpu validation to the BPF-facing css_rstat_updated() kfunc and move the common implementation to __css_rstat_updated() for in-kernel callers.