CVE-2022-48885

5.5 MEDIUM

📋 TL;DR

This CVE describes a memory leak vulnerability in the Intel Ethernet Connection Controller driver (ice) in the Linux kernel. When the ice_gnss_tty_write() function fails to allocate memory for write_buf, it returns without freeing previously allocated cmd_buf, causing a memory leak. This affects systems using Intel Ethernet controllers with the ice driver.

💻 Affected Systems

Products:
  • Linux kernel with Intel Ethernet Connection Controller driver (ice)
Versions: Linux kernel versions containing vulnerable ice driver code before fixes in commits 500ca1da9d0876244eb4d1b0ece6fa0e9968d45d and f58985620f55580a07d40062c4115d8c9cf6ae27
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires Intel Ethernet hardware with ice driver loaded and GNSS functionality enabled/used.

📦 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

Sustained exploitation could lead to kernel memory exhaustion, causing system instability, denial of service, or potential kernel crashes.

🟠

Likely Case

Memory leak gradually consumes kernel memory over time, potentially leading to performance degradation or system instability under heavy network load.

🟢

If Mitigated

With proper monitoring and memory limits, impact is limited to occasional memory pressure and potential performance issues.

🌐 Internet-Facing: LOW - This requires local access or ability to trigger the specific driver function, not directly exploitable over network.
🏢 Internal Only: MEDIUM - Requires local access or ability to interact with the GNSS TTY interface, which could be exploited by malicious local users or compromised applications.

🎯 Exploit Status

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

Exploitation requires triggering the specific memory allocation failure path in ice_gnss_tty_write(), which may require specific conditions or repeated attempts.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel versions containing fixes from commits 500ca1da9d0876244eb4d1b0ece6fa0e9968d45d and f58985620f55580a07d40062c4115d8c9cf6ae27

Vendor Advisory: https://git.kernel.org/stable/c/500ca1da9d0876244eb4d1b0ece6fa0e9968d45d

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix. 2. Reboot system to load patched kernel. 3. Verify ice driver version is updated.

🔧 Temporary Workarounds

Disable GNSS functionality

linux

Disable GNSS/TTY functionality in ice driver if not required

modprobe -r ice
modprobe ice gnss=0

Unload ice driver

linux

Remove ice driver if Intel Ethernet hardware not in use

modprobe -r ice

🧯 If You Can't Patch

  • Implement kernel memory monitoring and alerting for unusual memory consumption patterns
  • Restrict local user access to systems with vulnerable driver

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if ice driver is loaded: lsmod | grep ice && uname -r

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fixes from referenced commits and ice driver is loaded from patched kernel

📡 Detection & Monitoring

Log Indicators:

  • Kernel OOM (Out of Memory) messages
  • System instability or crashes under network load
  • Increasing kernel memory usage over time

SIEM Query:

source="kernel" AND ("out of memory" OR "oom" OR "ice" OR "gnss")

🔗 References

📤 Share & Export