CVE-2021-47248CWE-362

CVE-2021-47248

High · published May 21, 2024

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

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

udp: fix race between close() and udp_abort()

Kaustubh reported and diagnosed a panic in udp_lib_lookup().

The root cause is udp_abort() racing with close(). Both

racing functions acquire the socket lock, but udp{v6}_destroy_sock()

release it before performing destructive actions.

We can't easily extend the socket lock scope to avoid the race,

instead use the SOCK_DEAD flag to prevent udp_abort from doing

any action when the critical race happens.

Diagnosed-and-tested-by: Kaustubh Pandey <[email protected]>

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.00190 · 8.2th percentile
Weakness
CWE-362 · Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Published
2024-05-21T19:15Z
Affected products (12)
ProductVersionsFixed in
linux/linux_kernel≥ 4.9, < 4.9.2744.9.274
linux/linux_kernel≥ 4.10, < 4.14.2384.14.238
linux/linux_kernel≥ 4.15, < 4.19.1964.19.196
linux/linux_kernel≥ 4.20, < 5.4.1285.4.128
linux/linux_kernel≥ 5.5, < 5.10.465.10.46
linux/linux_kernel≥ 5.11, < 5.12.135.12.13
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (14)
https://git.kernel.org/stable/c/2f73448041bd0682d4b552cfd314ace66107f1ad · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/5a88477c1c85e4baa51e91f2d40f2166235daa56 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/65310b0aff86980a011c7c7bfa487a333d4ca241 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/8729ec8a2238152a4afc212a331a6cd2c61aeeac · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/a0882f68f54f7a8b6308261acee9bd4faab5a69e · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/a8b897c7bcd47f4147d066e22cc01d1026d7640e · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/e3c36c773aed0fef8b1d3d555b43393ec564400f · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/2f73448041bd0682d4b552cfd314ace66107f1ad · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/5a88477c1c85e4baa51e91f2d40f2166235daa56 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/65310b0aff86980a011c7c7bfa487a333d4ca241 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/8729ec8a2238152a4afc212a331a6cd2c61aeeac · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/a0882f68f54f7a8b6308261acee9bd4faab5a69e · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/a8b897c7bcd47f4147d066e22cc01d1026d7640e · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/e3c36c773aed0fef8b1d3d555b43393ec564400f · af854a3a-2127-422b-91ae-364da2661108
EPSS history
Timeline
  • 21 MAY 14:19Z
    udp: fix race between close() and udp_abort()
    cvelistv5