CVE-2024-57945

High

In the Linux kernel, the following vulnerability has been resolved: riscv: mm: Fix the out of bound issue of vmemmap address In sparse vmemmap model, the virtual address of vmemmap is calculated as: ((struct page *)VMEMMAP_START - (phys_ram_base >> PAGE_SHIFT)). And the struct page's va can be calculated with an offset: (vmemmap + (pfn)). However, when initializing struct pages, kernel actually starts from the first page from the same section that phys_ram_base belongs to. If the first page's physical address is not (phys_ram_base >> PAGE_SHIFT), then we get an va below VMEMMAP_START when calculating va for it's struct page. For example, if phys_ram_base starts from 0x82000000 with pfn 0x82000, the first page in the same section is actually pfn 0x80000. During init_unavailable_range(), we will initialize struct page for pfn 0x80000 with virtual address ((struct page *)VMEMMAP_START - 0x2000), which is below VMEMMAP_START as well as PCI_IO_END. This commit fixes this bug by introducing a new variable 'vmemmap_start_pfn' which is aligned with memory section size and using it to calculate vmemmap address instead of phys_ram_base.

Package Linux Kernel
Published 2025-01-21
Last modified 2026-06-01
CVSS version 3.1
Patch available
Yes

CVSS 3.1 score

7.1

out of 10
High
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
High
Vector string
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H

Weakness type

CWE-125

CVE-2024-57945 is a Out-of-bounds Read vulnerability

What is Out-of-bounds Read?

The product reads data past the end or before the beginning of the intended buffer. Learn more on MITRE CWE

Affected versions

Linux kernel versions 5.10.212, 6.1.81, 6.6.21, 5.15.151, 6.7.9, 6.8 and later are affected. Fixed in 5.10.258, 6.1.140, 6.6.72, 6.12.10, 6.13 and their respective stable series.

Affected from
≥ 5.10.212 ≥ 6.1.81 ≥ 6.6.21 ≥ 5.15.151 ≥ 6.7.9 ≥ 6.8
Fixed in
✓ 5.10.258 5.10.x ✓ 6.1.140 6.1.x ✓ 6.6.72 6.6.x ✓ 6.12.10 6.12.x ✓ 6.13

References

The following references provide additional information about CVE-2024-57945 including vendor advisories, patch commits, exploit details, and third-party analysis. Links are sourced from the NIST NVD database.

Frequently asked questions

  • What is CVE-2024-57945?

    CVE-2024-57945 is a High severity Linux kernel vulnerability with a CVSS score of 7.1 out of 10 , classified as an Out-of-bounds Read flaw (CWE-125) . It affects Linux kernel versions from 5.10.212 onward and has been patched in 5.10.258, 6.1.140, 6.6.72 and others. CVE-2024-57945 has not been confirmed as actively exploited and is not listed in the CISA KEV catalog.

  • What is the CVSS score for CVE-2024-57945?

    CVE-2024-57945 has a CVSS score of 7.1 out of 10, rated High severity (CVSS 3.1). The vector string is CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H .

  • Is there a patch available for CVE-2024-57945?

    Yes — CVE-2024-57945 has been patched. Fixed versions include 5.10.258, 6.1.140, 6.6.72 and others. If you are running Linux kernel 5.10.212 or later up to the fix versions, apply the relevant patch for your kernel branch.

  • Is CVE-2024-57945 actively exploited?

    No — CVE-2024-57945 has not been confirmed as actively exploited. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.

  • What is Out-of-bounds Read (CWE-125)?

    The product reads data past the end or before the beginning of the intended buffer. View CWE-125 on MITRE CWE →