CVE-2024-53047

5.5 MEDIUM

📋 TL;DR

This CVE describes a missing RCU read lock protection in the MPTCP scheduler initialization in the Linux kernel. When CONFIG_PROVE_RCU_LIST is enabled, creating an MPTCP socket triggers a warning about improper RCU usage. This affects Linux systems with MPTCP enabled and CONFIG_PROVE_RCU_LIST configured.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Kernel versions with the vulnerable MPTCP code, specifically around version 6.12.0-rc2 and potentially earlier versions with similar MPTCP scheduler implementation.
Operating Systems: Linux distributions with MPTCP support enabled
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when both MPTCP is enabled and CONFIG_PROVE_RCU_LIST/CONFIG_RCU_EXPERT are configured in the kernel build.

📦 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 →

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

Potential kernel panic or system instability if the RCU warning escalates to a hard lockup or if the unprotected access leads to use-after-free scenarios.

🟠

Likely Case

Kernel warning messages in system logs when creating MPTCP sockets, potentially causing performance degradation or socket creation failures.

🟢

If Mitigated

Minor performance impact from the RCU warning overhead, with no security compromise if the system remains stable.

🌐 Internet-Facing: LOW - This is a kernel-level issue that requires local access or specific MPTCP socket creation to trigger.
🏢 Internal Only: LOW - Requires local access to create MPTCP sockets and specific kernel configuration to be vulnerable.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ✅ No
Complexity: HIGH

This appears to be a code quality/robustness issue rather than a direct security vulnerability. Exploitation would require manipulating the RCU subsystem in complex ways.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 3deb12c788c385e17142ce6ec50f769852fcec65, 494eb22f9a7bd03783e60595a57611c209175f1a, cb8b81ad3e893a6d18dcdd3754cc2ea2a42c0136

Vendor Advisory: https://git.kernel.org/stable/c/3deb12c788c385e17142ce6ec50f769852fcec65

Restart Required: Yes

Instructions:

1. Update to a kernel version containing the fix commits. 2. Rebuild kernel if using custom kernel. 3. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable CONFIG_PROVE_RCU_LIST

linux

Disable the RCU debugging feature that triggers the warning

Rebuild kernel with CONFIG_PROVE_RCU_LIST=n

Disable MPTCP

linux

Disable MPTCP support in kernel configuration

Rebuild kernel with CONFIG_MPTCP=n

🧯 If You Can't Patch

  • Monitor system logs for RCU warnings and investigate any MPTCP socket creation issues
  • Consider disabling MPTCP functionality if not required for your use case

🔍 How to Verify

Check if Vulnerable:

Check if kernel has MPTCP enabled and CONFIG_PROVE_RCU_LIST configured. Run: grep -i mptcp /boot/config-$(uname -r) && grep -i prove_rcu_list /boot/config-$(uname -r)

Check Version:

uname -r

Verify Fix Applied:

Check kernel version includes fix commits or test MPTCP socket creation while monitoring dmesg for RCU warnings

📡 Detection & Monitoring

Log Indicators:

  • RCU warning messages in kernel logs (dmesg) related to MPTCP scheduler

Network Indicators:

  • MPTCP socket creation attempts

SIEM Query:

Search for 'RCU-list traversed in non-reader section' or 'mptcp_sched_find' in kernel logs

🔗 References

📤 Share & Export