l2tp: close all race conditions in l2tp_tunnel_register() (Linux Linux)

CVE-2023-53020
MEDIUM 4.7

At a glance

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

Description

In the Linux kernel, the following vulnerability has been resolved: l2tp: close all race conditions in l2tp_tunnel_register() The code in l2tp_tunnel_register() is racy in several ways: 1. It modifies the tunnel socket _after_ publishing it. 2. It calls setup_udp_tunnel_sock() on an existing socket without locking. 3. It changes sock lock class on fly, which triggers many syzbot reports. This patch amends all of them by moving socket initialization code before publishing and under sock lock. As suggested by Jakub, the l2tp lockdep class is not necessary as we can just switch to bh_lock_sock_nested().

Weaknesses (CWE)

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

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:HCISA-ADP
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)
CVSS 3.1MEDIUM 4.7CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · 134c704f-9b21-4f2e-91b3-4a467353bcc0 (Secondary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 37159ef2c1ae1e696b24b260b241209a19f92c60 < 2d77e5c0ad79004b5ef901895437e9cce6dfcc7e ; affected 37159ef2c1ae1e696b24b260b241209a19f92c60 < 77e8ed776cdb1a24b2aab8fe7c6f1f154235e1ce ; affected 37159ef2c1ae1e696b24b260b241209a19f92c60 < cef0845b6dcfa2f6c2c832e7f9622551456c741d ; affected 37159ef2c1ae1e696b24b260b241209a19f92c60 < 0b2c59720e65885a394a017d0cf9cab118914682
Linux · Linuxaffected 3.6 ; unaffected 0 < 3.6 ; unaffected 5.10.166 ≤ 5.10.* ; unaffected 5.15.91 ≤ 5.15.* ; unaffected 6.1.9 ≤ 6.1.* ; unaffected 6.2 ≤ *

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