CVE-2022-49413
📋 TL;DR
A use-after-free vulnerability in the Linux kernel's BFQ I/O scheduler allows an attacker to cause kernel memory corruption when processes migrate between cgroups. This can lead to system crashes, privilege escalation, or arbitrary code execution. All Linux systems using the BFQ scheduler are affected.
💻 Affected Systems
- Linux kernel
📦 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 panic, privilege escalation to root, or arbitrary code execution in kernel context leading to complete system compromise.
Likely Case
System instability, crashes, or denial of service due to kernel memory corruption.
If Mitigated
Minimal impact if proper kernel hardening and container isolation are in place.
🎯 Exploit Status
Requires local access and ability to manipulate cgroup processes. Race condition exploitation adds complexity.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions with commits 2a1077f17169a6059992a0bbdb330e0abad1e6d9 or later
Vendor Advisory: https://git.kernel.org/stable/c/2a1077f17169a6059992a0bbdb330e0abad1e6d9
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version from your distribution. 2. Reboot system to load new kernel. 3. Verify kernel version after reboot.
🔧 Temporary Workarounds
Disable BFQ scheduler
allSwitch to a different I/O scheduler like CFQ or deadline
echo 'cfq' > /sys/block/[device]/queue/scheduler
Restrict cgroup operations
allLimit cgroup manipulation to trusted users only
chmod 750 /sys/fs/cgroup
setfacl -m u:root:rwx /sys/fs/cgroup
🧯 If You Can't Patch
- Implement strict access controls on cgroup filesystem
- Use kernel hardening features like SELinux/AppArmor to restrict process capabilities
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if BFQ scheduler is active: cat /sys/block/sda/queue/scheduler | grep -q '\[bfq\]' && echo 'BFQ active'
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version includes fix commits: uname -r and check with distribution vendor
📡 Detection & Monitoring
Log Indicators:
- Kernel oops messages in dmesg
- System crashes or panics
- Unexpected process terminations
Network Indicators:
- None - local vulnerability only
SIEM Query:
source="kernel" AND ("Oops" OR "panic" OR "general protection fault")
🔗 References
- https://git.kernel.org/stable/c/2a1077f17169a6059992a0bbdb330e0abad1e6d9
- https://git.kernel.org/stable/c/b06691af08b41dfd81052a3362514d9827b44bb1
- https://git.kernel.org/stable/c/d9165200c5627a2cf4408eefabdf0058bdf95e1a
- https://git.kernel.org/stable/c/da9f3025d595956410ceaab2bea01980d7775948
- https://git.kernel.org/stable/c/e8821f45612f2e6d9adb9c6ba0fb4184f57692aa
- https://git.kernel.org/stable/c/ea591cd4eb270393810e7be01feb8fde6a34fbbe