CVE-2025-21738

CVE-2025-21738

High · published February 27, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
12.4
In the wild
Unconfirmed
What it is

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

ata: libata-sff: Ensure that we cannot write outside the allocated buffer

reveliofuzzing reported that a SCSI_IOCTL_SEND_COMMAND ioctl with out_len

set to 0xd42, SCSI command set to ATA_16 PASS-THROUGH, ATA command set to

ATA_NOP, and protocol set to ATA_PROT_PIO, can cause ata_pio_sector() to

write outside the allocated buffer, overwriting random memory.

While a ATA device is supposed to abort a ATA_NOP command, there does seem

to be a bug either in libata-sff or QEMU, where either this status is not

set, or the status is cleared before read by ata_sff_hsm_move().

Anyway, that is most likely a separate bug.

Looking at __atapi_pio_bytes(), it already has a safety check to ensure

that __atapi_pio_bytes() cannot write outside the allocated buffer.

Add a similar check to ata_pio_sector(), such that also ata_pio_sector()

cannot write outside the allocated buffer.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00224 · 12.4th percentile
Published
2025-02-27T08:15Z
Affected products (4)
ProductVersionsFixed in
linux/linux_kernel< 6.1.1296.1.129
linux/linux_kernel≥ 6.2, < 6.6.786.6.78
linux/linux_kernel≥ 6.7, < 6.12.146.12.14
linux/linux_kernel≥ 6.13, < 6.13.36.13.3
References (7)
EPSS history
Timeline
  • 27 FEB 02:12Z
    ata: libata-sff: Ensure that we cannot write outside the allocated buffer
    cvelistv5