CVE-2024-50150
📋 TL;DR
This is a use-after-free vulnerability in the Linux kernel's USB Type-C alternate mode subsystem. When an altmode device is released, it references its parent device without maintaining a proper reference, potentially leading to memory corruption. This affects systems using USB Type-C alternate modes with the affected kernel versions.
💻 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel panic, system crash, or potential privilege escalation leading to full system compromise.
Likely Case
System instability, kernel crashes, or denial of service when USB Type-C alternate mode devices are connected/disconnected.
If Mitigated
Minor system instability or crashes limited to USB Type-C functionality.
🎯 Exploit Status
Exploitation requires physical USB device access or ability to trigger USB Type-C alternate mode operations. The KASAN report suggests memory corruption is possible.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits: 1ded6b12499e6dee9b0e1ceac633be36538f6fc2, 2b0b33e8a58388fa9078f0fbe9af1900e6b08879, 2c15c4133d00f5da632fce60ed013fc31aa9aa58, 68a7c7fe322546be1464174c8d85874b8161deda, 6af43ec3bf40f8b428d9134ffa7a291aecd60da8
Vendor Advisory: https://git.kernel.org/stable/c/1ded6b12499e6dee9b0e1ceac633be36538f6fc2
Restart Required: Yes
Instructions:
1. Update to a kernel version containing the fix commits. 2. Check your distribution's security advisories for backported patches. 3. Reboot the system after kernel update.
🔧 Temporary Workarounds
Disable USB Type-C alternate mode support
linuxRemove or disable CONFIG_TYPEC_ALTMODE kernel module if not needed
modprobe -r typec_altmode
echo 'blacklist typec_altmode' > /etc/modprobe.d/disable-typec-altmode.conf
Restrict USB device access
allLimit physical USB port access to trusted devices only
🧯 If You Can't Patch
- Implement strict physical security controls for USB ports
- Monitor system logs for KASAN errors or kernel crashes related to typec_altmode
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if typec_altmode module is loaded: 'lsmod | grep typec_altmode' and 'uname -r'
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version includes fix commits or check if distribution has backported the patch in security advisories
📡 Detection & Monitoring
Log Indicators:
- KASAN: slab-use-after-free in typec_altmode_release
- kernel panic or oops messages
- USB Type-C related errors in dmesg
SIEM Query:
source="kernel" AND ("typec_altmode_release" OR "KASAN: slab-use-after-free" OR "USB Type-C")
🔗 References
- https://git.kernel.org/stable/c/1ded6b12499e6dee9b0e1ceac633be36538f6fc2
- https://git.kernel.org/stable/c/2b0b33e8a58388fa9078f0fbe9af1900e6b08879
- https://git.kernel.org/stable/c/2c15c4133d00f5da632fce60ed013fc31aa9aa58
- https://git.kernel.org/stable/c/68a7c7fe322546be1464174c8d85874b8161deda
- https://git.kernel.org/stable/c/6af43ec3bf40f8b428d9134ffa7a291aecd60da8
- https://git.kernel.org/stable/c/87474406056891e4fdea0794e1f632b21b3dfa27
- https://git.kernel.org/stable/c/bee1b68cb8bcee4fd3a8bde3a4886e0b1375dc4d
- https://git.kernel.org/stable/c/befab3a278c59db0cc88c8799638064f6d3fd6f8
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html