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

CVE-2021-47248
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.19 % · percentile 9 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

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 <kapandey@codeaurora.org>

Weaknesses (CWE)

  • CWE-362 — Concurrent Execution using Shared Resource with Improper Synchronization

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1MEDIUM 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 5d77dca82839ef016a93ad7acd7058b14d967752 < e3c36c773aed0fef8b1d3d555b43393ec564400f ; affected 5d77dca82839ef016a93ad7acd7058b14d967752 < a0882f68f54f7a8b6308261acee9bd4faab5a69e ; affected 5d77dca82839ef016a93ad7acd7058b14d967752 < 2f73448041bd0682d4b552cfd314ace66107f1ad ; affected 5d77dca82839ef016a93ad7acd7058b14d967752 < 5a88477c1c85e4baa51e91f2d40f2166235daa56 ; affected 5d77dca82839ef016a93ad7acd7058b14d967752 < 8729ec8a2238152a4afc212a331a6cd2c61aeeac ; affected 5d77dca82839ef016a93ad7acd7058b14d967752 < 65310b0aff86980a011c7c7bfa487a333d4ca241
Linux · Linuxaffected 4.9 ; unaffected 0 < 4.9 ; unaffected 4.9.274 ≤ 4.9.* ; unaffected 4.14.238 ≤ 4.14.* ; unaffected 4.19.196 ≤ 4.19.* ; unaffected 5.4.128 ≤ 5.4.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD