CVE-2024-42136·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: cdrom: rearrange last_media_change check to avoid unintentional overflow When running syzkaller with the newly reintroduced signed integer wrap sanitizer we encounter this splat: [ 366.015950] UBSAN: signed-integer-overflow in ../drivers/cdrom/cdrom.c:2361:33 [ 366.021089] -9223372036854775808 - 346321 cannot be represented in type '__s64' (aka 'long long') [ 366.025894] program syz-executor.4 is using a deprecated SCSI ioctl, please convert it to SG_IO [ 366.027502] CPU: 5 PID: 28472 Comm: syz-executor.7 Not tainted 6.8.0-rc2-00035-gb3ef86b5a957 #1 [ 366.027512] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 366.027518] Call Trace: [ 366.027523] <TASK> [ 366.027533] dump_stack_lvl+0x93/0xd0 [ 366.027899] handle_overflow+0x171/0x1b0 [ 366.038787] ata1.00: invalid multi_count 32 ignored [ 366.043924] cdrom_ioctl+0x2c3f/0x2d10 [ 366.063932] ? __pm_runtime_resume+0xe6/0x130 [ 366.071923] sr_block_ioctl+0x15d/0x1d0 [ 366.074624] ? __pfx_sr_block_ioctl+0x10/0x10 [ 366.077642] blkdev_ioctl+0x419/0x500 [ 366.080231] ? __pfx_blkdev_ioctl+0x10/0x10 ... Historically, the signed integer overflow sanitizer did not work in the kernel due to its interaction with `-fwrapv` but this has since been changed [1] in the newest version of Clang. It was re-enabled in the kernel with Commit 557f8c582a9ba8ab ("ubsan: Reintroduce signed overflow sanitizer"). Let's rearrange the check to not perform any arithmetic, thus not tripping the sanitizer.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.9.9
- Published
- 2024-07-30
Affected versions
From: 6.7
Until: 6.9.9
Fixed in: 6.9.9
How to fix this CVE
Update your Linux kernel to version 6.9.9 or later to fix a signed integer overflow vulnerability in the CDROM subsystem that could lead to kernel crashes or privilege escalation. This vulnerability affects kernel versions 6.7 through 6.9.8 and is triggered through specific CDROM ioctl operations. Apply the patch immediately to systems running affected kernel versions.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check installed kernel version: uname -r (should be 6.9.9 or later; vulnerable if between 6.7 and 6.9.8)
- Verify CDROM device presence: lsblk | grep -i cd or ls -la /dev/sr* (vulnerability requires CDROM device access)
- Search system logs for UBSAN overflow errors: grep -i 'signed-integer-overflow' /var/log/kernel.log /var/log/dmesg
- Confirm patch applied: grep -i 'last_media_change' /boot/config-$(uname -r) and verify kernel rebuild timestamp is post-patch release date
FAQ
What is CVE-2024-42136?
CVE-2024-42136 is a signed integer overflow vulnerability in the Linux kernel's CDROM driver that occurs during specific ioctl operations on CDROM devices. The overflow in the media change timestamp calculation can cause kernel crashes or potentially allow privilege escalation on systems with CDROM access.
Is CVE-2024-42136 being actively exploited?
No, CVE-2024-42136 is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are currently available. However, it remains a high-severity issue requiring timely patching.
What versions of Kernel are affected by CVE-2024-42136?
Linux kernel versions 6.7.0 through 6.9.8 are affected. Kernel version 6.9.9 and all versions 6.10.0 and later contain the fix.
How do I check if my server is vulnerable to CVE-2024-42136?
Run 'uname -r' to check your kernel version. If it shows a version between 6.7 and 6.9.8, your system is vulnerable. Additionally, verify CDROM device access with 'ls -la /dev/sr*' — the vulnerability requires CDROM device present and accessible.
Does Defensia detect CVE-2024-42136?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2024-42136 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/0c97527e916054acc4a46ffb02842988acb2e92b
- https://git.kernel.org/stable/c/3ee21e14c8c329168a0b66bab00ecd18f5d0dee3
- https://git.kernel.org/stable/c/e809bc112712da8f7e15822674c6562da6cdf24c
- https://git.kernel.org/stable/c/efb905aeb44b0e99c0e6b07865b1885ae0471ebf
- https://git.kernel.org/stable/c/0c97527e916054acc4a46ffb02842988acb2e92b
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-42136. Free for 1 server.
Get started free