CVE Catalog

CVE-2025-71109

HighCVSS 7.1
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.18%

7th percentile - higher than 7% of all known CVEs

Summary

In the Linux kernel for MIPS architecture, the ftrace mechanism has a memory corruption vulnerability when the kernel is located beyond 32 bits. The UASM_i_LA_mostly macro can generate more than 2 instructions, but ftrace code assumes at most 2, causing a buffer overflow and corruption of variables in the __read_mostly section.

Risk Assessment

Organizations using MIPS systems with kernels above 32 bits may experience early boot hangs due to corruption of critical variables, leading to service unavailability.

Recommendation

Update the Linux kernel to a version containing the fix that limits instruction generation in ftrace for MIPS to prevent buffer overflow.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: MIPS: ftrace: Fix memory corruption when kernel is located beyond 32 bits Since commit e424054000878 ("MIPS: Tracing: Reduce the overhead of dynamic Function Tracer"), the macro UASM_i_LA_mostly has been used, and this macro can generate more than 2 instructions. At the same time, the code in ftrace assumes that no more than 2 instructions can be generated, which is why it stores them in an int[2] array. However, as previously noted, the macro UASM_i_LA_mostly (and now UASM_i_LA) causes a buffer overflow when _mcount is beyond 32 bits. This leads to corruption of the variables located in the __read_mostly section. This corruption was observed because the variable __cpu_primary_thread_mask was corrupted, causing a hang very early during boot. This fix prevents the corruption by avoiding the generation of instructions if they could exceed 2 instructions in length. Fortunately, insn_la_mcount is only used if the instrumented code is located outside the kernel code section, so dynamic ftrace can still be used, albeit in a more limited scope. This is still preferable to corrupting memory and/or crashing the kernel.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS