CVE-2026-53292: Linux Phonet Socket Kernel Panic Vulnerability
A vulnerability in the Linux kernel's Phonet networking subsystem can crash a system when a local user sends data through a Phonet socket that has never been properly bound. The vulnerability exists because the kernel attempts to automatically bind an unbound socket, but when that binding fails, the code incorrectly assumes the socket was already bound to an address and crashes instead of handling the error gracefully. This is a local denial-of-service issue accessible to unprivileged users.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 5.5 MEDIUM · CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses (CWE)
- CWE-617
- Affected products
- 2 configuration(s)
- Published / Modified
- 2026-06-26 / 2026-07-08
NVD description (verbatim)
In the Linux kernel, the following vulnerability has been resolved: net: phonet: do not BUG_ON() in pn_socket_autobind() on failed bind syzbot reported a kernel BUG triggered from pn_socket_sendmsg() via pn_socket_autobind(): kernel BUG at net/phonet/socket.c:213! RIP: 0010:pn_socket_autobind net/phonet/socket.c:213 [inline] RIP: 0010:pn_socket_sendmsg+0x240/0x250 net/phonet/socket.c:421 Call Trace: sock_sendmsg_nosec+0x112/0x150 net/socket.c:797 __sock_sendmsg net/socket.c:812 [inline] __sys_sendto+0x402/0x590 net/socket.c:2280 ... pn_socket_autobind() calls pn_socket_bind() with port 0 and, on -EINVAL, assumes the socket was already bound and asserts that the port is non-zero: err = pn_socket_bind(sock, ..., sizeof(struct sockaddr_pn)); if (err != -EINVAL) return err; BUG_ON(!pn_port(pn_sk(sock->sk)->sobject)); return 0; /* socket was already bound */ However pn_socket_bind() also returns -EINVAL when sk->sk_state is not TCP_CLOSE, even when the socket has never been bound and pn_port() is still 0. In that case the BUG_ON() fires and panics the kernel from a user-triggerable path. Treat the "bind returned -EINVAL but pn_port() is still 0" case as a regular error and propagate -EINVAL to the caller instead of crashing. Existing callers already translate a non-zero return from pn_socket_autobind() into -ENOBUFS/-EAGAIN, so returning -EINVAL here only changes behaviour from panic to a normal errno.
2 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-53292 is a denial-of-service vulnerability in net/phonet/socket.c within the Linux kernel's Phonet protocol implementation. The pn_socket_autobind() function calls pn_socket_bind() with port 0 and assumes that any -EINVAL return means the socket was already bound. However, pn_socket_bind() also returns -EINVAL when the socket state is not TCP_CLOSE, even for never-bound sockets where pn_port() is still 0. The function then executes BUG_ON(!pn_port(...)), which triggers a kernel panic when pn_port() is zero. The issue is classified as CWE-617 (Reachable Assertion), and the fix replaces the panic-inducing assertion with proper error propagation.
Business impact
This vulnerability enables local denial-of-service attacks against systems running affected Linux kernels. Any local user can trigger a kernel panic by sending a message through a Phonet socket in the right state, causing system crashes and service unavailability. Organizations relying on Phonet for telephony or legacy communication protocols on Linux systems could face unexpected downtime. However, since Phonet is not widely deployed in modern production environments, the practical impact is limited unless the organization explicitly uses Phonet-based solutions.
Affected systems
The vulnerability affects Linux kernel versions that contain the vulnerable code in net/phonet/socket.c. The vulnerability is triggered during pn_socket_sendmsg() execution, so any system with Phonet protocol support enabled and accessible to local users is potentially affected. This includes custom kernels with Phonet enabled and certain specialized embedded or legacy systems. Most mainstream Linux distributions may have Phonet compiled as a module or disabled, reducing exposure.
Exploitability
Exploitability is straightforward from a local context. The attack requires only local access and unprivileged user privileges. No special capabilities, network access, or authentication are required. An attacker can trigger the panic by calling sendto() on a Phonet socket (AF_PHONET) in a specific state, making this a trivial denial-of-service from any local user account. The barrier to exploitation is low, though the attack surface depends on whether Phonet is enabled and accessible on the target system.
Remediation
The fix modifies pn_socket_autobind() to treat the case where pn_socket_bind() returns -EINVAL but pn_port() is still 0 as a legitimate error condition rather than an assertion failure. Instead of crashing, the function now returns -EINVAL to the caller, where existing error handling code converts it to -ENOBUFS or -EAGAIN. Users should apply kernel security updates once available from their distribution. For systems where Phonet is not used, disabling the Phonet module in the kernel configuration eliminates exposure.
Patch guidance
Update the Linux kernel to the version containing the fix for CVE-2026-53292. Verify the patch against your distribution's security advisory, as version numbers vary by vendor (Red Hat, Canonical, SUSE, etc.). Alternatively, if Phonet protocol support is not required on your systems, rebuild the kernel with CONFIG_NET_PHONET=n or CONFIG_NET_PHONET=m (and do not load the module). Test the kernel update in a non-production environment first to ensure compatibility with your workloads.
Detection guidance
Monitor kernel logs and syslog for BUG_ON() assertion failures specifically in pn_socket_autobind() or the Phonet socket code. Look for log entries showing 'kernel BUG at net/phonet/socket.c:213' or similar. Kernel crash dumps (vmcore/kdump) that reference pn_socket_sendmsg() or pn_socket_autobind() in the call stack indicate exploitation. Intrusion detection systems can monitor for abnormal Phonet socket operations from unprivileged processes, though this requires AF_PHONET socket syscall auditing.
Why prioritize this
This vulnerability merits prioritization based on ease of local exploitation and direct kernel panic capability, despite limited exposure due to Phonet's niche deployment. Systems with Phonet enabled and local user access should be patched urgently. However, organizations running mainstream Linux distributions without explicit Phonet requirements can deprioritize this unless their environment analysis confirms Phonet is active. The CVSS 5.5 (Medium) score appropriately reflects the local-only attack vector and availability impact.
Risk score, explained
The CVSS 3.1 score of 5.5 (MEDIUM) reflects: Attack Vector Local (AV:L) - requires local access; Attack Complexity Low (AC:L) - trivial to trigger; Privileges Required Low (PR:L) - unprivileged user can exploit; User Interaction None (UI:N) - no user action needed; Confidentiality None (C:N); Integrity None (I:N); Availability High (A:H) - kernel panic causes service unavailability. The score appropriately weights the severity of denial-of-service against the local-only attack surface.
Frequently asked questions
Is Phonet commonly used in modern Linux deployments?
Phonet is a legacy protocol used primarily for old Nokia telephony hardware and specialized telecommunication systems. Most modern Linux distributions ship with Phonet disabled or as an optional module. Mainstream cloud platforms, servers, and consumer Linux systems typically do not have Phonet enabled, which significantly limits the real-world impact of this vulnerability.
Can this vulnerability be exploited remotely?
No. The vulnerability requires local access to the system and local user privileges. It cannot be exploited over a network. Remote attackers would need to first gain local code execution through another vulnerability to exploit this issue.
What happens if Phonet is disabled on my system?
If Phonet is not compiled into the kernel (CONFIG_NET_PHONET is not set) or the module is not loaded, this vulnerability is not exploitable. You can verify Phonet status by checking if the module is loaded: lsmod | grep phonet. If the output is empty, Phonet is not active.
Does this vulnerability allow privilege escalation or data theft?
No. The vulnerability only causes a kernel panic (denial of service). It does not result in unauthorized access, privilege escalation, or data exfiltration. The impact is strictly availability-related.
This analysis is based on publicly available information about CVE-2026-53292 as of the publication date. Patch version numbers and availability dates should be verified against official Linux distribution security advisories. Organizations should conduct their own risk assessment based on their specific kernel versions, Phonet deployment status, and local access policies. This document does not constitute legal advice or a guarantee of security. Test all patches in non-production environments before deployment. Source: NVD (public-domain), retrieved 2026-08-05. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-46220MEDIUMLinux AMDGPU Kernel Panic DoS Vulnerability
- CVE-2026-46287MEDIUMLinux txgbe Driver RTNL Locking Defect
- CVE-2026-52961MEDIUMLinux Kernel Ceph Filesystem Race Condition Causing Kernel Panic
- CVE-2026-53039MEDIUMLinux OCFS2 Local Denial of Service via Unvalidated Group Add
- CVE-2026-53169MEDIUMLinux Ethos-U NPU Driver DoS via Unimplemented Command
- CVE-2026-53285MEDIUMAMD DCN32 Linux Kernel Phantom Plane Memory Allocation Crash
- CVE-2026-53319MEDIUMLinux Kernel Writeback Throttling Spurious Warning Vulnerability
- CVE-2026-46117HIGHLinux RDMA/mana Kernel Privilege Escalation via Invalid Queue Pair Configuration