CVE-2024-35847CWE-415

CVE-2024-35847

High · published May 17, 2024

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

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

irqchip/gic-v3-its: Prevent double free on error

The error handling path in its_vpe_irq_domain_alloc() causes a double free

when its_vpe_init() fails after successfully allocating at least one

interrupt. This happens because its_vpe_irq_domain_free() frees the

interrupts along with the area bitmap and the vprop_page and

its_vpe_irq_domain_alloc() subsequently frees the area bitmap and the

vprop_page again.

Fix this by unconditionally invoking its_vpe_irq_domain_free() which

handles all cases correctly and by removing the bitmap/vprop_page freeing

from its_vpe_irq_domain_alloc().

[ tglx: Massaged change log ]

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.00247 · 15.1th percentile
Weakness
CWE-415 · Double Free
Published
2024-05-17T19:15Z
Affected products (13)
ProductVersionsFixed in
linux/linux_kernel≥ 4.14, < 4.19.3134.19.313
linux/linux_kernel≥ 4.20, < 5.4.2755.4.275
linux/linux_kernel≥ 5.5, < 5.10.2165.10.216
linux/linux_kernel≥ 5.11, < 5.15.1585.15.158
linux/linux_kernel≥ 5.16, < 6.1.906.1.90
linux/linux_kernel≥ 6.2, < 6.6.306.6.30
linux/linux_kernel≥ 6.7, < 6.8.96.8.9
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
debian/debian_linuxall versions—
References (18)
https://git.kernel.org/stable/c/03170e657f62c26834172742492a8cb8077ef792 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/5b012f77abde89bf0be8a0547636184fea618137 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/5dbdbe1133911ca7d8466bb86885adec32ad9438 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/aa44d21574751a7d6bca892eb8e0e9ac68372e52 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/b72d2b1448b682844f995e660b77f2a1fabc1662 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/c26591afd33adce296c022e3480dea4282b7ef91 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/dd681710ab77c8beafe2e263064cb1bd0e2d6ca9 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/f5417ff561b8ac9a7e53c747b8627a7ab58378ae · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/03170e657f62c26834172742492a8cb8077ef792 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/5b012f77abde89bf0be8a0547636184fea618137 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/5dbdbe1133911ca7d8466bb86885adec32ad9438 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/aa44d21574751a7d6bca892eb8e0e9ac68372e52 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/b72d2b1448b682844f995e660b77f2a1fabc1662 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/c26591afd33adce296c022e3480dea4282b7ef91 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/dd681710ab77c8beafe2e263064cb1bd0e2d6ca9 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/f5417ff561b8ac9a7e53c747b8627a7ab58378ae · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html · af854a3a-2127-422b-91ae-364da2661108
EPSS history
Timeline
  • 17 MAY 14:47Z
    irqchip/gic-v3-its: Prevent double free on error
    cvelistv5