CVE-2026-53262 Details
Description
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()).
A use-after-free vulnerability has been identified in the Linux kernel's handling of L2TP PPPoL2TP sessions within the ioctl function. This issue arises because the ioctl function accesses session data without proper locking or reference counting. If a controllable sleep is introduced during the copy_from_user operation, a concurrent socket closure can trigger the asynchronous removal of the L2TP session. This process frees the session structure, and when the ioctl function resumes, it inadvertently dereferences a stale pointer, leading to a use-after-free condition. The vulnerability has been addressed by modifying the ioctl function to securely retrieve the session reference using a safe, reference-counted helper, ensuring that the session remains valid throughout the operation. Additionally, the patch preserves existing functionality by validating session integrity only for specific L2TP commands that require it, allowing generic ioctls on unconnected sockets to fallback to standard handlers.
Users can apply the latest patches available in the Linux kernel stable tree to address this vulnerability.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/62f327e287cf7b595ae3f73ba72f5cd2a9e9f39f | kernel.org | Patch |
| https://git.kernel.org/stable/c/78cdfdca88cbf731a92f3b9ee5427c633dd94e28 | kernel.org | Patch |
| https://git.kernel.org/stable/c/a213a8950414c684999dcf03edeea6c46ede172e | kernel.org | Patch |
| https://git.kernel.org/stable/c/e251d4cdfc725c9e7d686161e3b775a0e7d95053 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| NVD-CWE-Other | Weakness Not in a Standard CWE Category | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 2.6.35, < 6.12.94 >= 6.13, < 6.18.36 >= 6.19, < 7.0.13 7.1 rc1 7.1 rc2 7.1 rc3 7.1 rc4 7.1 rc5 7.1 rc6 |
CPE
Remediation
| |
Change History
3 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jul 8, 2026 | Initial Analysis | [email protected] |
| Jun 28, 2026 | CVE Modified | kernel.org |
| Jun 25, 2026 | New CVE Received | kernel.org |