CVE-2024-38635·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: soundwire: cadence: fix invalid PDI offset For some reason, we add an offset to the PDI, presumably to skip the PDI0 and PDI1 which are reserved for BPT. This code is however completely wrong and leads to an out-of-bounds access. We were just lucky so far since we used only a couple of PDIs and remained within the PDI array bounds. A Fixes: tag is not provided since there are no known platforms where the out-of-bounds would be accessed, and the initial code had problems as well. A follow-up patch completely removes this useless offset.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.9.4
- Published
How likely is exploitation
FIRST's Exploit Prediction Scoring System puts the probability of this CVE being exploited in the next 30 days at <0.1% — higher than 5% of all published CVEs. EPSS is an independent forecast of exploitation, not a severity rating: it says nothing about how much damage a successful attack does, which is what a CVSS score measures.
Read the two together. CVE-2024-38635 scores 7.1 on CVSS, so a successful attack would be serious — but at <0.1%, almost nobody is currently attempting it. That is a different situation from a flaw under mass exploitation, and it is usually the difference between patching on your next maintenance window and patching tonight.
Affected versions
From: 6.7
Until: 6.9.4
Fixed in: 6.9.4
How to fix this CVE
Update your Linux kernel to version 6.9.4 or later to resolve this soundwire cadence PDI offset vulnerability. The flaw causes an invalid memory access in the audio subsystem that could lead to denial of service or information disclosure. Apply the patch through your distribution's package manager and reboot to activate the fix.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check installed kernel version: uname -r (must be 6.9.4 or later, or non-affected version < 6.7)
- Verify soundwire cadence driver status: lsmod | grep soundwire (confirms if audio driver is loaded)
- Check dmesg for PDI allocation errors: dmesg | grep -i 'pdi\|soundwire\|cadence' (look for out-of-bounds or memory access errors)
- Confirm patch applied: grep -r 'PDI offset' /boot/config-$(uname -r) || cat /proc/version | grep 6.9.4
FAQ
What is CVE-2024-38635?
This is a kernel memory safety issue in the soundwire cadence audio driver where an incorrect PDI (Peripheral Data Interface) offset calculation causes out-of-bounds array access, potentially triggering a kernel panic or allowing information disclosure.
Is CVE-2024-38635 being actively exploited?
No, this vulnerability is not listed on the CISA Known Exploited Vulnerabilities catalog and no public exploits are currently available. However, it is a local privilege vulnerability that requires user-level access.
What versions of Kernel are affected by CVE-2024-38635?
Linux kernel versions 6.7 through 6.9.4 are affected. Versions below 6.7 and 6.9.4 and later are not vulnerable.
How do I check if my server is vulnerable to CVE-2024-38635?
Run `uname -r` and check if the output shows a version between 6.7 and 6.9.3 inclusive. If so, you are vulnerable and must update immediately.
Does Defensia detect CVE-2024-38635?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2024-38635 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/002364b2d594a9afc0385c09e00994c510b1d089
- https://git.kernel.org/stable/c/2ebcaa0e5db9b6044bb487ae1cf41bc601761567
- https://git.kernel.org/stable/c/4e99103f757cdf636c6ee860994a19a346a11785
- https://git.kernel.org/stable/c/7eeef1e935d23db5265233d92395bd5c648a4021
- https://git.kernel.org/stable/c/8ee1b439b1540ae543149b15a2a61b9dff937d91
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-38635. Free for 1 server.
Get started free