What’s Vulnerable › Vulnerabilities
CVE-2024-35987: riscv: Fix loading 64-bit NOMMU kernels past the start of RAM
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-05-20 · updated 2026-08-04
Description
In the Linux kernel, the following vulnerability has been resolved: riscv: Fix loading 64-bit NOMMU kernels past the start of RAM commit 3335068f8721 ("riscv: Use PUD/P4D/PGD pages for the linear mapping") added logic to allow using RAM below the kernel load address. However, this does not work for NOMMU, where PAGE_OFFSET is fixed to the kernel load address. Since that range of memory corresponds to PFNs below ARCH_PFN_OFFSET, mm initialization runs off the beginning of mem_map and corrupts adjacent kernel memory. Fix this by restoring the previous behavior for NOMMU kernels.
Affected products
- Linux kernel: from 6.4 before 6.6.30; from 6.7 before 6.8.9; 6.9-rc1, 6.9-rc2, 6.9-rc3, 6.9-rc4, 6.9-rc5 — fixed in 6.6.30, 6.8.9
How to fix
Upgrade to a fixed version: Linux kernel 6.6.30, 6.8.9. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/aea702dde7e9876fb00571a2602f25130847bf0f
- https://git.kernel.org/stable/c/b008e327fa570aca210f98c817757649bae56694
- https://git.kernel.org/stable/c/ea6628e4e2353978af7e3b4ad4fdaab6149acf3d
- https://git.kernel.org/stable/c/aea702dde7e9876fb00571a2602f25130847bf0f
- https://git.kernel.org/stable/c/b008e327fa570aca210f98c817757649bae56694
- https://git.kernel.org/stable/c/ea6628e4e2353978af7e3b4ad4fdaab6149acf3d
Get alerted when CVE-2024-35987 or the next vulnerability affects your stack