7.8

CVE-2024-49982

aoe: fix the potential use-after-free problem in more places

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

aoe: fix the potential use-after-free problem in more places

For fixing CVE-2023-6270, f98364e92662 ("aoe: fix the potential
use-after-free problem in aoecmd_cfg_pkts") makes tx() calling dev_put()
instead of doing in aoecmd_cfg_pkts(). It avoids that the tx() runs
into use-after-free.

Then Nicolai Stange found more places in aoe have potential use-after-free
problem with tx(). e.g. revalidate(), aoecmd_ata_rw(), resend(), probe()
and aoecmd_cfg_rsp(). Those functions also use aoenet_xmit() to push
packet to tx queue. So they should also use dev_hold() to increase the
refcnt of skb->dev.

On the other hand, moving dev_put() to tx() causes that the refcnt of
skb->dev be reduced to a negative value, because corresponding
dev_hold() are not called in revalidate(), aoecmd_ata_rw(), resend(),
probe(), and aoecmd_cfg_rsp(). This patch fixed this issue.
Daten sind bereitgestellt durch National Vulnerability Database (NVD)
LinuxLinux Kernel Version >= 5.10.214 < 5.10.227
LinuxLinux Kernel Version >= 5.15.153 < 5.15.168
LinuxLinux Kernel Version >= 6.1.83 < 6.1.113
LinuxLinux Kernel Version >= 6.6.23 < 6.6.55
LinuxLinux Kernel Version >= 6.7.11 < 6.8.2
LinuxLinux Kernel Version >= 6.9 < 6.10.14
LinuxLinux Kernel Version >= 6.11 < 6.11.3
LinuxLinux Kernel Version4.19.311
LinuxLinux Kernel Version5.4.273
LinuxLinux Kernel Version6.12 Updaterc1
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.26% 0.169
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
nvd@nist.gov 7.8 1.8 5.9
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE-416 Use After Free

The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

https://git.kernel.org/stable/c/07b418d50ccbbca7e5d87a3a0d41d436cefebf79
Patch
https://git.kernel.org/stable/c/12f7b89dd72b25da4eeaa22097877963cad6418e
https://git.kernel.org/stable/c/6d6e54fc71ad1ab0a87047fd9c211e75d86084a3
Patch
https://git.kernel.org/stable/c/8253a60c89ec35c8f36fb2cc08cdf854c7a3eb58
Patch
https://git.kernel.org/stable/c/89d9a69ae0c667e4d9d028028e2dcc837bae626f
Patch
https://git.kernel.org/stable/c/a786265aecf39015418e4f930cc1c14603a01490
https://git.kernel.org/stable/c/acc5103a0a8c200a52af7d732c36a8477436a3d3
Patch
https://git.kernel.org/stable/c/bc2cbf7525ac288e07d465f5a1d8cb8fb9599254
Patch
https://git.kernel.org/stable/c/f63461af2c1a86af4217910e47a5c46e3372e645
Patch
https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html
https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html