CVE-2022-49257

5.5 MEDIUM

📋 TL;DR

This is a NULL pointer dereference vulnerability in the Linux kernel's watch_queue subsystem. It allows local attackers to trigger a kernel panic (denial of service) by exploiting error handling during buffer allocation. Only systems with the watch_queue feature enabled are affected.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Versions containing the vulnerable watch_queue code (specific commit ranges in stable branches)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable if CONFIG_WATCH_QUEUE is enabled and users have access to pipe ioctl operations.

📦 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

Kernel panic leading to system crash and denial of service, potentially causing data loss or service disruption.

🟠

Likely Case

Local denial of service through kernel panic, requiring physical or remote console access to reboot.

🟢

If Mitigated

Minimal impact if systems have proper access controls preventing local users from executing arbitrary code.

🌐 Internet-Facing: LOW - Requires local access to exploit, not directly reachable via network.
🏢 Internal Only: MEDIUM - Local users or compromised accounts could cause denial of service.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access and ability to trigger specific error conditions in watch_queue allocation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 112a2f9b0a8457794095a0450598f150724ec456 and other stable backports

Vendor Advisory: https://git.kernel.org/stable/c/112a2f9b0a8457794095a0450598f150724ec456

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution vendor. 2. Reboot system to load new kernel. 3. Verify kernel version matches patched release.

🔧 Temporary Workarounds

Disable watch_queue feature

linux

Remove CONFIG_WATCH_QUEUE from kernel configuration if not needed

Rebuild kernel with CONFIG_WATCH_QUEUE=n

Restrict pipe ioctl access

linux

Use kernel security modules to restrict access to pipe ioctl operations

Configure SELinux/AppArmor policies to limit pipe operations

🧯 If You Can't Patch

  • Implement strict access controls to prevent unauthorized local users from executing arbitrary code
  • Monitor system logs for kernel panic events and implement automated alerting

🔍 How to Verify

Check if Vulnerable:

Check kernel version and CONFIG_WATCH_QUEUE status: grep CONFIG_WATCH_QUEUE /boot/config-$(uname -r)

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is updated to include the fix commits from stable branches

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • KASAN null-ptr-deref reports
  • watch_queue related crash dumps

Network Indicators:

  • None - local exploit only

SIEM Query:

source="kernel" AND ("KASAN: null-ptr-deref" OR "watch_queue" OR "BUG: KASAN")

🔗 References

📤 Share & Export