CVE-2024-56678

7.8 HIGH

📋 TL;DR

A Linux kernel vulnerability in powerpc/mm/fault allows improper handling of page faults when reading /proc/kcore, potentially causing false KFENCE error reports or memory corruption. This affects Linux systems with powerpc architecture when /proc/kcore is accessed. The vulnerability can be triggered by reading /proc/kcore, such as with dd commands.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific affected versions not specified in CVE, but patches available for stable kernel versions
Operating Systems: Linux distributions with powerpc architecture support
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects powerpc architecture. Requires /proc/kcore access which typically requires root or appropriate permissions.

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel memory corruption leading to system crash, denial of service, or potential privilege escalation if combined with other vulnerabilities.

🟠

Likely Case

False KFENCE error reports causing system instability, kernel panics, or denial of service when /proc/kcore is accessed.

🟢

If Mitigated

Minor system instability with false error reports but no security impact if proper access controls prevent unauthorized /proc/kcore access.

🌐 Internet-Facing: LOW - Requires local access to /proc/kcore which is typically not exposed over network services.
🏢 Internal Only: MEDIUM - Local users or processes accessing /proc/kcore can trigger the vulnerability, potentially causing system instability.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ✅ No
Complexity: LOW - Simple dd command can trigger the issue

Exploitation requires local access and ability to read /proc/kcore. More sophisticated exploitation could potentially lead to memory corruption.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Patches available in stable kernel versions via provided git commits

Vendor Advisory: https://git.kernel.org/stable/c/06dbbb4d5f7126b6307ab807cbf04ecfc459b933

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version
2. Apply specific git commits: 06dbbb4d5f7126b6307ab807cbf04ecfc459b933, 15f78d2c3d1452645bd8b9da909b0ca266f83c43, 4d2655754e94741b159aa807b72ea85518a65fd5, 7eaeb7a49b6d16640f9f3c9074c05175d74c710b, 9ea8d8bf9b625e8ad3be6b0432aecdc549914121
3. Reboot system

🔧 Temporary Workarounds

Restrict /proc/kcore access

linux

Limit access to /proc/kcore to prevent triggering the vulnerability

chmod 600 /proc/kcore
setfacl -m u:root:r-- /proc/kcore

Disable KFENCE

linux

Disable KFENCE feature to prevent false error reports

echo 0 > /sys/kernel/debug/kfence/enabled

🧯 If You Can't Patch

  • Restrict /proc/kcore access to root only
  • Monitor system logs for KFENCE error reports and investigate any occurrences

🔍 How to Verify

Check if Vulnerable:

Check if system is powerpc architecture and has /proc/kcore accessible. Test with: dd if=/proc/kcore of=/dev/null bs=1M count=1 and monitor for KFENCE errors.

Check Version:

uname -r

Verify Fix Applied:

Check kernel version is patched or test dd command no longer produces KFENCE errors in system logs.

📡 Detection & Monitoring

Log Indicators:

  • KFENCE: invalid read in copy_from_kernel_nofault
  • KFENCE: use-after-free read in copy_from_kernel_nofault
  • kernel page fault errors when accessing /proc/kcore

Network Indicators:

  • None - local vulnerability only

SIEM Query:

source="kernel" AND ("KFENCE: invalid read" OR "KFENCE: use-after-free" OR "/proc/kcore" AND "page fault")

🔗 References

📤 Share & Export