CVE-2022-49758

5.5 MEDIUM

📋 TL;DR

This vulnerability is a null pointer dereference in the Linux kernel's uniphier-glue reset driver. It occurs when platform_get_resource() returns NULL, causing resource_size() to dereference a null pointer. This affects Linux systems using the uniphier-glue reset driver, potentially causing kernel crashes or denial of service.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Kernel versions containing the vulnerable uniphier-glue reset driver code before fixes were applied. Specific commit ranges: before 3a2390c6777e3f6662980c6cfc25cafe9e4fef98, 633bad3dc81ce2aa561f704ec091e49eb647bd0b, or 95de286200b2a046da01c4aeba02ae9220d68ca4.
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only affects systems with uniphier-glue reset driver enabled (typically specific hardware platforms like UniPhier SoC systems).

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, requiring physical or remote reboot.

🟠

Likely Case

Kernel oops or system instability when the specific reset driver code path is triggered.

🟢

If Mitigated

Minor system disruption if kernel panic handlers recover gracefully, but still requires reboot.

🌐 Internet-Facing: LOW - Requires local access or specific hardware interaction to trigger.
🏢 Internal Only: MEDIUM - Could be exploited by malicious local users or through hardware manipulation.

🎯 Exploit Status

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

Exploitation requires triggering the specific driver code path, which may need hardware access or specific system conditions.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions with commits 3a2390c6777e3f6662980c6cfc25cafe9e4fef98, 633bad3dc81ce2aa561f704ec091e49eb647bd0b, or 95de286200b2a046da01c4aeba02ae9220d68ca4 applied.

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

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 after reboot.

🔧 Temporary Workarounds

Disable uniphier-glue reset driver

linux

Remove or blacklist the vulnerable driver module if not required for system functionality.

echo 'blacklist uniphier-glue' >> /etc/modprobe.d/blacklist.conf
rmmod uniphier_glue_reset

🧯 If You Can't Patch

  • Restrict local user access to prevent potential exploitation by malicious users.
  • Implement kernel crash monitoring and automatic recovery mechanisms.

🔍 How to Verify

Check if Vulnerable:

Check if uniphier-glue driver is loaded: lsmod | grep uniphier_glue. Check kernel version against patched commits.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes one of the fix commits: git log --oneline | grep -E '3a2390c6777e|633bad3dc81c|95de286200b2'

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops messages in /var/log/kern.log or dmesg
  • System crash/panic logs

Network Indicators:

  • None - local vulnerability

SIEM Query:

source="kern.log" AND "Oops" AND "uniphier" OR source="dmesg" AND "panic"

🔗 References

📤 Share & Export