CVE-2026-53262 json
l2tp: pppol2tp: hold reference to session in pppol2tp_ioctl()
published 2026-06-25 4 mo ago modified 2026-10-30 9 d ago also EUVD-2026-39213
- cvss
- 7.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.1%
- EPSS 0.1% chance of exploitation in 30 days, percentile 1%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
l2tp: pppol2tp: hold reference to session in pppol2tp_ioctl()
pppol2tp_ioctl() read sock->sk->sk_user_data directly without any locks or reference counting. If a controllable sleep was induced during copy_from_user() (e.g. via a userfaultfd page fault sleep), a concurrent socket close could trigger pppol2tp_session_close() asynchronously. This frees the l2tp_session structure via the l2tp_session_del_work workqueue. Upon resuming, the ioctl thread dereferences the stale session pointer, resulting in a Use-After-Free (UAF).
Fix this by securely fetching the session reference using the RCU-safe, refcounted helper pppol2tp_sock_to_session(sk) on entry. This locks the session's refcount across the sleep. We structured the function to exit via standard err breaks, guaranteeing that l2tp_session_put() is cleanly called on all return paths to drop the reference.
To preserve existing behavior we validate the session and its magic signature only for the specific L2TP commands that require it. This ensures that generic/unknown ioctls called on an unconnected socket still return -ENOIOCTLCMD and correctly fall back to generic handlers (e.g. in sock_do_ioctl()).
Patch / fix
- Linux Linux 6.1.191, 6.6.160, 6.12.94, 6.18.36, 7.0.13, 7.1
- linux Debian 13 6.12.94-1
- linux Debian 14 7.0.13-1
debian advisories DEBIAN-CVE-2026-53262
- linux Ubuntu 24.04 LTS 6.8.0-146.146
- linux Ubuntu 26.04 LTS 7.0.0-31.31
- linux-aws Ubuntu 24.04 LTS 6.8.0-1066.69
- linux-aws Ubuntu 26.04 LTS 7.0.0-1012.12
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1070.78
- linux-gcp Ubuntu 26.04 LTS 7.0.0-1011.11
- linux-gke Ubuntu 24.04 LTS 6.8.0-1065.73
- linux-gke Ubuntu 26.04 LTS 7.0.0-1006.7
ubuntu advisories UBUNTU-CVE-2026-53262
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-default SLES for SAP 15 SP6, SLES 15 SP6-LTSS, SLE Live Patching 15 SP6 +1 more 6.4.0-150600.23.130.1
- kernel-rt Real Time Module 15 SP7 6.4.0-150700.7.72.1
- kernel-syms-rt Real Time Module 15 SP7 6.4.0-150700.7.72.1
- kernel-source-rt Real Time Module 15 SP7 6.4.0-150700.7.72.1
- kernel-64kb SLE Module for Basesystem 15 SP7 6.4.0-150700.53.78.1
- kernel-syms SLE Module for Development Tools 15 SP7 6.4.0-150700.53.78.1
- kernel-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.53.78.1
- kernel-source SLE Module for Development Tools 15 SP7, SLE Module for Basesystem 15 SP7 6.4.0-150700.53.78.1
suse advisories SUSE-SU-2026:3602-1SUSE-SU-2026:3810-1SUSE-SU-2026:3790-1SUSE-SU-2026:23244-1SUSE-SU-2026:23241-1SUSE-SU-2026:23194-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.36.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.36.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.36.1
opensuse advisories openSUSE-SU-2026:21388-1
- git.kernel.org/stable/c/cc19c164a99ab706d4cb45d3c300b305c16798b5 commit
- git.kernel.org/stable/c/312ecea13b67797747eb9d4b9dab8d3846de6dfb commit
- git.kernel.org/stable/c/78cdfdca88cbf731a92f3b9ee5427c633dd94e28 commit
- git.kernel.org/stable/c/e251d4cdfc725c9e7d686161e3b775a0e7d95053 commit
- git.kernel.org/stable/c/62f327e287cf7b595ae3f73ba72f5cd2a9e9f39f commit
- git.kernel.org/stable/c/a213a8950414c684999dcf03edeea6c46ede172e commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-53262 updated cvss 7.8
kernel: l2tp: pppol2tp: hold reference to session in pppol2tp_ioctl()
-
Red Hat Enterprise Linux 7 kernel-rt, kernel-rt-kvm, kernel-rt-trace, kernel-rt-debug-kvm, kernel-rt-trace-kvm Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-selftests-internal Red Hat Enterprise Linux 10 kernelaffected: workaround, no fix available
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, python-perf, kernel-kdump, kernel-tools, +3 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +82 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 23 d ago
Exploit prediction
0.12% chance of exploitation in the next 30 days, higher than 1% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-416 Use After Free
- Technology feeds
References
- git.kernel.org /stable/c/cc19c164a99ab706d4cb45d3c300b305c16798b5
- git.kernel.org /stable/c/312ecea13b67797747eb9d4b9dab8d3846de6dfb
-
git.kernel.org
/stable/c/78cdfdca88cbf731a92f3b9ee5427c633dd94e28
patch
-
git.kernel.org
/stable/c/e251d4cdfc725c9e7d686161e3b775a0e7d95053
patch
-
git.kernel.org
/stable/c/62f327e287cf7b595ae3f73ba72f5cd2a9e9f39f
patch
-
git.kernel.org
/stable/c/a213a8950414c684999dcf03edeea6c46ede172e
patch
Sources
- CVE List CVE-2026-53262
- NVD CVE-2026-53262
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.