CVE-2024-27066CWE-401

CVE-2024-27066

High · published May 1, 2024

CVSS v3.1
7.5
EPSS
1%
Percentile
47.8
In the wild
Unconfirmed
What it is

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

virtio: packed: fix unmap leak for indirect desc table

When use_dma_api and premapped are true, then the do_unmap is false.

Because the do_unmap is false, vring_unmap_extra_packed is not called by

detach_buf_packed.

if (unlikely(vq->do_unmap)) {

curr = id;

for (i = 0; i < state->num; i++) {

vring_unmap_extra_packed(vq,

&vq->packed.desc_extra[curr]);

curr = vq->packed.desc_extra[curr].next;

}

}

So the indirect desc table is not unmapped. This causes the unmap leak.

So here, we check vq->use_dma_api instead. Synchronously, dma info is

updated based on use_dma_api judgment

This bug does not occur, because no driver use the premapped with

indirect.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00596 · 47.8th percentile
Weakness
CWE-401 · Missing Release of Memory after Effective Lifetime
Published
2024-05-01T17:15Z
Affected products (3)
ProductVersionsFixed in
linux/linux_kernel≥ 6.6, < 6.6.236.6.23
linux/linux_kernel≥ 6.7, < 6.7.116.7.11
linux/linux_kernel≥ 6.8, < 6.8.26.8.2
References (8)
EPSS history
Timeline
  • 01 MAY 13:04Z
    virtio: packed: fix unmap leak for indirect desc table
    cvelistv5