CVE-2022-49021
📋 TL;DR
This vulnerability is a NULL pointer dereference in the Linux kernel's PHY subsystem that occurs when a network PHY device probe fails. It allows local attackers to cause a kernel panic (denial of service) by triggering specific fault conditions during device initialization. Systems running affected Linux kernel versions with network PHY devices are vulnerable.
💻 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 →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 →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, requiring physical or remote console access to reboot.
Likely Case
Local denial of service through kernel panic when specific fault injection or hardware initialization failures occur.
If Mitigated
No impact if patched or if fault conditions aren't triggered during PHY device initialization.
🎯 Exploit Status
Exploitation requires local access and ability to trigger specific hardware initialization failures or fault injection conditions.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits: 0744c7be4de564db03e24527b2e096b7e0e20972, 369eb2c9f1f72adbe91e0ea8efb130f0a2ba11a6, 3e21f85d87c836462bb52ef2078ea561260935c1, 51d7f6b20fae8bae64ad1136f1e30d1fd5ba78f7, 7730904f50c7187dd16c76949efb56b5fb55cd57
Vendor Advisory: https://git.kernel.org/stable/c/0744c7be4de564db03e24527b2e096b7e0e20972
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing the fix commits. 2. Check distribution-specific security advisories. 3. Reboot system after kernel update.
🔧 Temporary Workarounds
Disable fault injection
linuxPrevent fault injection mechanisms that could trigger the vulnerability
echo 0 > /sys/kernel/debug/fail*/probability
Restrict hardware access
linuxLimit access to PHY device initialization to privileged users only
chmod 600 /sys/class/net/*/phydev/*
setfacl -m u:root:rw /sys/class/net/*/phydev/*
🧯 If You Can't Patch
- Restrict local user access to systems with network PHY devices
- Implement strict privilege separation and limit access to hardware initialization interfaces
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if it contains the fix commits: uname -r and examine kernel source or distribution security advisories
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated and check that the fix commits are present in kernel source
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages with NULL pointer dereference at address 0000000000000058
- BUG: kernel NULL pointer dereference in klist_put
- PHY device probe failure messages
Network Indicators:
- Sudden network interface disappearance after device initialization
SIEM Query:
source="kernel" AND ("NULL pointer dereference" OR "klist_put" OR "PHY probe failed")
🔗 References
- https://git.kernel.org/stable/c/0744c7be4de564db03e24527b2e096b7e0e20972
- https://git.kernel.org/stable/c/369eb2c9f1f72adbe91e0ea8efb130f0a2ba11a6
- https://git.kernel.org/stable/c/3e21f85d87c836462bb52ef2078ea561260935c1
- https://git.kernel.org/stable/c/51d7f6b20fae8bae64ad1136f1e30d1fd5ba78f7
- https://git.kernel.org/stable/c/7730904f50c7187dd16c76949efb56b5fb55cd57
- https://git.kernel.org/stable/c/8aaafe0f71314f46a066382a047ba8bb3840d273
- https://git.kernel.org/stable/c/eaa5722549ac2604ffa56c2e946acc83226f130c
- https://git.kernel.org/stable/c/fe6bc99c27c21348f548966118867ed26a9a372c