CVE-2022-49540

4.7 MEDIUM

📋 TL;DR

This CVE describes a race condition in the Linux kernel's RCU Tasks Rude subsystem during early boot. The vulnerability can cause kernel warnings and system instability when secondary CPUs are brought online. It affects Linux systems during boot time, particularly those with multiple CPUs.

💻 Affected Systems

Products:
  • Linux Kernel
Versions: Kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with multiple CPUs during early boot phase. Single-CPU systems are not vulnerable.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

System crash or kernel panic during boot, preventing system startup.

🟠

Likely Case

Kernel warning messages during boot but system continues to function normally.

🟢

If Mitigated

No impact with proper patching or single-CPU systems.

🌐 Internet-Facing: LOW - This is a boot-time issue not directly exploitable over network.
🏢 Internal Only: MEDIUM - Could cause boot failures on affected multi-CPU systems.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ✅ No
Complexity: HIGH - Requires precise timing during boot process

This is a race condition that occurs naturally during boot, not typically weaponized for exploitation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 1c6c3f2336642fb3074593911f5176565f47ec41, 230bf5878af6038dfb63d9184272a58475236580, 8f49a8758b5cd541bd7aa9a0d0d11c7426141c0e, ba722d061bc4b54802d701fc63fc2fd988934603, f75fd4b9221d93177c50dcfde671b2e907f53e86

Vendor Advisory: https://git.kernel.org/stable/c/1c6c3f2336642fb3074593911f5176565f47ec41

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Reboot system to load new kernel.

🔧 Temporary Workarounds

Boot with single CPU

linux

Boot system with only one CPU active to avoid the race condition

Add 'maxcpus=1' to kernel boot parameters in GRUB

🧯 If You Can't Patch

  • Use single-CPU boot parameter (maxcpus=1) as temporary workaround
  • Monitor boot logs for RCU-related warnings and restart if boot fails

🔍 How to Verify

Check if Vulnerable:

Check kernel version and boot logs for RCU Tasks Rude warnings during CPU bring-up

Check Version:

uname -r

Verify Fix Applied:

Check that kernel version includes the fix commits and no RCU warnings appear during boot

📡 Detection & Monitoring

Log Indicators:

  • WARNING: CPU: 0 PID: 10 at kernel/workqueue.c:3084 __flush_work+0x12c/0x138
  • RCU Tasks Rude warnings during boot
  • Call trace showing schedule_on_each_cpu and rcu_tasks_rude_wait_gp

Network Indicators:

  • None - this is a local boot-time issue

SIEM Query:

source="kernel" AND "__flush_work" AND "rcu_tasks_rude"

🔗 References

📤 Share & Export