CVE-2024-27059

Medium

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).

SeverityMedium
CVSS5.5
Exploit probability—
ProductLinux Kernel
PublishedMay 1, 2024
First seenMay 1, 2024

How to fix

Update
  • linux linux_kernel4.19.312, 5.4.274, 5.10.215, 5.15.154, 6.1.84, 6.6.64, 6.7.12 or later

Affected products

ProductAffected versionsFixed in
linux linux_kernel2.6.12 ≤ v < 4.19.312, 4.20 ≤ v < 5.4.274, 5.5 ≤ v < 5.10.215, 5.11 ≤ v < 5.15.154, 5.16 ≤ v < 6.1.84, 6.2 ≤ v < 6.6.64, 6.7 ≤ v < 6.7.12, 6.84.19.312, 5.4.274, 5.10.215, 5.15.154, 6.1.84, 6.6.64, 6.7.12
debian debian_linux10.0—

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.