CVE-2024-42136

Source
https://cve.org/CVERecord?id=CVE-2024-42136
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-42136.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-42136
Downstream
Related
Published
2024-07-30T07:46:30.975Z
Modified
2026-05-15T11:53:14.895353098Z
Summary
cdrom: rearrange last_media_change check to avoid unintentional overflow
Details

In the Linux kernel, the following vulnerability has been resolved:

cdrom: rearrange lastmediachange 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 SGIO [ 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] dumpstacklvl+0x93/0xd0 [ 366.027899] handleoverflow+0x171/0x1b0 [ 366.038787] ata1.00: invalid multicount 32 ignored [ 366.043924] cdromioctl+0x2c3f/0x2d10 [ 366.063932] ? __pmruntimeresume+0xe6/0x130 [ 366.071923] srblockioctl+0x15d/0x1d0 [ 366.074624] ? __pfxsrblockioctl+0x10/0x10 [ 366.077642] blkdevioctl+0x419/0x500 [ 366.080231] ? __pfxblkdevioctl+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.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/42xxx/CVE-2024-42136.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.98
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.39
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.9.9

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-42136.json"