CVE-2022-49515

7.1 HIGH

📋 TL;DR

This CVE describes an out-of-bounds memory access vulnerability in the CS35L41 audio codec driver in the Linux kernel. An attacker could potentially cause a kernel panic or system crash by triggering undefined behavior through the OTP unpacking function. Systems using affected Linux kernel versions with the CS35L41 driver loaded are vulnerable.

💻 Affected Systems

Products:
  • Linux kernel with CS35L41 audio codec driver
Versions: Linux kernel versions before fixes in stable releases (specific commits: 9f342904216f, a59b99584160, dbc35268e14d)
Operating Systems: Linux distributions using vulnerable kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only vulnerable when CS35L41 driver is loaded and active. Affects systems with CS35L41 audio hardware.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to denial of service, potentially allowing privilege escalation if combined with other vulnerabilities.

🟠

Likely Case

System crash or instability when the vulnerable driver processes malformed OTP data.

🟢

If Mitigated

Minimal impact if driver is not loaded or system is patched.

🌐 Internet-Facing: LOW - Requires local access or ability to interact with audio hardware.
🏢 Internal Only: MEDIUM - Local attackers could crash systems, but requires driver to be loaded and accessible.

🎯 Exploit Status

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

Requires local access to trigger the vulnerable code path. No known public exploits.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel with commits 9f342904216f, a59b99584160, or dbc35268e14d applied

Vendor Advisory: https://git.kernel.org/stable/c/9f342904216f378e88008bb0ce1ae200a4b99fe8

Restart Required: No

Instructions:

1. Update Linux kernel to version containing the fix. 2. For distributions: Use package manager (apt/yum/dnf) to update kernel package. 3. Rebuild kernel if using custom kernel with the fix applied.

🔧 Temporary Workarounds

Disable CS35L41 driver

Linux

Prevent loading of vulnerable driver module

echo 'blacklist snd_soc_cs35l41_lib' >> /etc/modprobe.d/blacklist-cs35l41.conf
update-initramfs -u

🧯 If You Can't Patch

  • Ensure proper access controls to prevent unauthorized local access
  • Monitor system logs for UBSAN warnings related to cs35l41_otp_unpack

🔍 How to Verify

Check if Vulnerable:

Check if CS35L41 driver is loaded: lsmod | grep cs35l41. Check kernel version against patched versions.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits or is newer than vulnerable versions. Check dmesg for absence of UBSAN warnings.

📡 Detection & Monitoring

Log Indicators:

  • UBSAN warnings in kernel logs: 'shift-out-of-bounds' in cs35l41_otp_unpack
  • Kernel panic or oops messages related to CS35L41 driver

Network Indicators:

  • None - local vulnerability only

SIEM Query:

source="kernel" AND ("UBSAN" OR "shift-out-of-bounds" OR "cs35l41")

🔗 References

📤 Share & Export