CVE-2024-27059

MEDIUM

Linux kernel - Divide-by-Zero Error

Title source: llm

Description

In the Linux kernel, the following vulnerability has been resolved: USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command The isd200 sub-driver in usb-storage uses the HEADS and SECTORS values in the ATA ID information to calculate cylinder and head values when creating a CDB for READ or WRITE commands. The calculation involves division and modulus operations, which will cause a crash if either of these values is 0. While this never happens with a genuine device, it could happen with a flawed or subversive emulation, as reported by the syzbot fuzzer. Protect against this possibility by refusing to bind to the device if either the ATA_ID_HEADS or ATA_ID_SECTORS value in the device's ID information is 0. This requires isd200_Initialization() to return a negative error code when initialization fails; currently it always returns 0 (even when there is an error).

Scores

CVSS v3 5.5
EPSS 0.0001
EPSS Percentile 0.6%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Classification

CWE
CWE-369
Status published

Affected Products (15)

linux/linux_kernel < 4.19.312
linux/linux_kernel
linux/linux_kernel
linux/linux_kernel
linux/linux_kernel
linux/linux_kernel
linux/linux_kernel
debian/debian_linux
linux/Kernel < 4.19.312linux
linux/Kernel < 5.4.274linux
linux/Kernel < 5.10.215linux
linux/Kernel < 5.15.154linux
linux/Kernel < 6.1.84linux
linux/Kernel < 6.6.24linux
linux/Kernel < 6.7.12linux

Timeline

Published May 01, 2024
Tracked Since Feb 18, 2026