CVE-2024-26748

7.8 HIGH

📋 TL;DR

A double-free memory corruption vulnerability in the Linux kernel's cdns3 USB gadget driver allows attackers to potentially crash the system or execute arbitrary code. This affects systems using the Cadence USB3 controller driver with specific USB gadget configurations. Attackers with local access can exploit this to gain kernel privileges.

💻 Affected Systems

Products:
  • Linux kernel with cdns3 USB gadget driver
Versions: Linux kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions using vulnerable kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when using USB gadget functionality with the cdns3 driver; typical desktop/server configurations may not be affected unless using USB gadget features.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

Local privilege escalation to kernel mode, allowing complete system compromise, data theft, or persistent backdoor installation.

🟠

Likely Case

Kernel panic or system crash leading to denial of service, potentially with some memory corruption that could be leveraged for privilege escalation.

🟢

If Mitigated

Limited to denial of service if exploit attempts are detected and blocked by security controls.

🌐 Internet-Facing: LOW - Requires local access to the system; not directly exploitable over network.
🏢 Internal Only: MEDIUM - Local attackers or malicious insiders could exploit this for privilege escalation on affected systems.

🎯 Exploit Status

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

Requires local access and ability to trigger specific USB gadget operations; memory corruption vulnerabilities in kernel drivers are often targeted for privilege escalation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in Linux kernel stable releases via commits: 1e204a8e9eb5, 3a2a909942b5, 5fd9e45f1ebc, 70e8038813f9, 92d20406a3d4

Vendor Advisory: https://git.kernel.org/stable/c/1e204a8e9eb514e22a6567fb340ebb47df3f3a48

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Check distribution-specific security advisories. 3. Reboot system to load patched kernel.

🔧 Temporary Workarounds

Disable cdns3 USB gadget driver

linux

Prevent loading of vulnerable driver module

echo 'blacklist cdns3' >> /etc/modprobe.d/blacklist-cdns3.conf
rmmod cdns3

Disable USB gadget functionality

linux

Disable USB gadget support if not required

echo '0' > /sys/class/udc/*/soft_connect
modprobe -r configfs

🧯 If You Can't Patch

  • Restrict local access to affected systems using strict user permissions and access controls
  • Implement kernel hardening measures like SELinux/AppArmor to limit impact of potential exploits

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if cdns3 module is loaded: 'uname -r' and 'lsmod | grep cdns3'

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is patched and check for absence of double-free errors in kernel logs: 'dmesg | grep -i "double free\|use-after-free\|cdns3"'

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • Use-after-free or double-free errors in dmesg
  • cdns3 driver crash logs

Network Indicators:

  • None - local exploitation only

SIEM Query:

source="kernel" AND ("double free" OR "use-after-free" OR "cdns3")

🔗 References

📤 Share & Export