What’s Vulnerable › Vulnerabilities
CVE-2026-64082: riscv: Fix register corruption from uninitialized cregs on error
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-07-19 · updated 2026-09-03
- Weakness: CWE-908
Description
In the Linux kernel, the following vulnerability has been resolved: riscv: Fix register corruption from uninitialized cregs on error compat_riscv_gpr_set() calls cregs_to_regs() unconditionally, even when user_regset_copyin() fails. Since cregs is an uninitialized stack variable, a copyin failure causes uninitialized stack data to be written into the target task's pt_regs, corrupting its register state and potentially leaking kernel stack contents. compat_restore_sigcontext() has the same issue: it calls cregs_to_regs() even when __copy_from_user() fails, leading to the same corruption of the signal-returning task's register state on error. Only call cregs_to_regs() when the user copy succeeds.
Affected products
- Linux kernel: from 5.19 before 7.0.11; 7.1-rc1, 7.1-rc2, 7.1-rc3 — fixed in 7.0.11
How to fix
Upgrade to a fixed version: Linux kernel 7.0.11. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/0599aa23734c48de9bce36d043a9ec90c23945a1
- https://git.kernel.org/stable/c/2a7d1daf2674fe7d5b1cc99a4e3b5f0f72d5958f
- https://git.kernel.org/stable/c/66dedb6028c3df6c6a3372dd935b823917e150d5
- https://git.kernel.org/stable/c/6ebcbb53fc9bc30843054ed99fd60b8e542628f4
- https://git.kernel.org/stable/c/9e020156833f1ad0d425a1e3d85b65639f1c1c50
- https://git.kernel.org/stable/c/f2d88b0d7aebfa4643fc58bbae57210c6daff9c6
Get alerted when CVE-2026-64082 or the next vulnerability affects your stack