MEDIUM 5.5

CVE-2026-53214: Linux Kernel IPv6 Null Pointer Dereference in cleanup_prefix_route()

A null pointer dereference vulnerability exists in the Linux kernel's IPv6 address configuration handling. When the kernel removes an IPv6 address, it attempts to clean up associated routing table entries. In certain conditions, it can reference a sentinel entry (a placeholder used internally) that lacks a valid routing table pointer, causing the kernel to crash. This affects local users with appropriate privileges and results in a denial-of-service condition. The vulnerability requires local access and appropriate user capabilities to trigger.

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-476
Affected products
8 configuration(s)
Published / Modified
2026-06-25 / 2026-07-02

NVD description (verbatim)

In the Linux kernel, the following vulnerability has been resolved: ipv6: Fix a potential NPD in cleanup_prefix_route() addrconf_get_prefix_route() can return the fib6_null_entry sentinel entry which has a NULL fib6_table pointer. Therefore, before setting the route's expiration time, check that we are not working with this entry, as otherwise a NPD will be triggered [1]. Note that the other callers of addrconf_get_prefix_route() are not susceptible to this bug: 1. addrconf_prefix_rcv(): Requests a route with the 'RTF_ADDRCONF | RTF_PREFIX_RT' flags which are not set on fib6_null_entry. 2. modify_prefix_route(): Fixed by commit a747e02430df ("ipv6: avoid possible NULL deref in modify_prefix_route()"). 3. __ipv6_ifa_notify(): Calls ip6_del_rt() which specifically checks for fib6_null_entry and returns an error. [1] Oops: general protection fault, probably for non-canonical address 0xdffffc0000000006: 0000 [#1] SMP KASAN KASAN: null-ptr-deref in range [0x0000000000000030-0x0000000000000037] [...] Call Trace: <TASK> __kasan_check_byte (mm/kasan/common.c:573) lock_acquire.part.0 (kernel/locking/lockdep.c:5842 (discriminator 1)) _raw_spin_lock_bh (kernel/locking/spinlock.c:182 (discriminator 1)) cleanup_prefix_route (net/ipv6/addrconf.c:1280) ipv6_del_addr (net/ipv6/addrconf.c:1342) inet6_addr_del.isra.0 (net/ipv6/addrconf.c:3119) inet6_rtm_deladdr (net/ipv6/addrconf.c:4812) rtnetlink_rcv_msg (net/core/rtnetlink.c:6997) netlink_rcv_skb (net/netlink/af_netlink.c:2555) netlink_unicast (net/netlink/af_netlink.c:1344) netlink_sendmsg (net/netlink/af_netlink.c:1899) __sock_sendmsg (net/socket.c:802 (discriminator 4)) ____sys_sendmsg (net/socket.c:2698) ___sys_sendmsg (net/socket.c:2752) __sys_sendmsg (net/socket.c:2784) do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)

5 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-53214 is a null pointer dereference (CWE-476) in the Linux kernel's net/ipv6/addrconf.c module, specifically in the cleanup_prefix_route() function. The function calls addrconf_get_prefix_route() which can return the fib6_null_entry sentinel entry—an internal placeholder that has a NULL fib6_table pointer. The vulnerable code path attempts to access and modify this null pointer without validation, leading to a general protection fault. The crash occurs when setting the route's expiration time on this sentinel entry. The vulnerability is triggered through IPv6 address deletion operations, typically via netlink socket calls (inet6_rtm_deladdr). Other callers of addrconf_get_prefix_route() either request routes with flags not present on the sentinel or have separate protections against this condition.

Business impact

This vulnerability enables local denial-of-service attacks against Linux systems, potentially affecting service availability on multi-tenant environments, containers, or systems where unprivileged users can manage network interfaces. Affected systems experience kernel crashes that disrupt network services and require manual intervention to restore. Organizations relying on IPv6 infrastructure for critical services may face unplanned downtime. The impact is limited to local attackers with the ability to invoke IPv6 address configuration changes, reducing the blast radius compared to remote exploits.

Affected systems

The Linux kernel is affected. The vulnerability impacts systems across multiple architectures and distributions that include vulnerable kernel versions. While the specific vulnerable kernel versions are not detailed in the source data, any Linux distribution shipping an affected kernel would be impacted. Organizations should verify their kernel version against vendor advisories from their Linux distribution maintainer.

Exploitability

Exploitation requires local access and sufficient privileges to invoke IPv6 address deletion operations, typically through netlink socket calls. The vulnerability is not remotely exploitable. The CVSS vector (AV:L/AC:L/PR:L) reflects that exploitation is straightforward once local access and appropriate privileges are obtained—there are no complex attack conditions or user interactions required. An attacker with local user-level capabilities can reliably trigger the crash through standard network configuration interfaces.

Remediation

Apply a kernel update containing the patch that adds null pointer validation in cleanup_prefix_route() before attempting to access the fib6_table pointer. Organizations should verify the specific patched kernel versions from their Linux distribution maintainer. Interim workarounds may include restricting user-level access to IPv6 address configuration commands through privilege escalation controls or network namespace isolation in multi-tenant environments.

Patch guidance

Obtain and deploy the patched Linux kernel version from your distribution maintainer. The patch adds a validation check to ensure cleanup_prefix_route() does not attempt to modify the fib6_null_entry sentinel. Verify the patch against your vendor's official security advisory to confirm the correct kernel version. Following patching, a system reboot is required to load the fixed kernel. Test the patch in a non-production environment first, particularly in containerized or virtualized deployments where IPv6 is actively configured.

Detection guidance

Monitor kernel logs and system messages for 'general protection fault' errors, particularly those referencing net/ipv6/addrconf.c or the cleanup_prefix_route function. Audit netlink traffic for IPv6 address deletion requests (inet6_rtm_deladdr operations) from unexpected or untrusted user accounts. In containerized environments, monitor for unexpected kernel panic events correlated with IPv6 network reconfigurations. Intrusion detection systems should flag repeated kernel crashes originating from IPv6 address management calls, as this may indicate exploitation attempts.

Why prioritize this

While the CVSS score of 5.5 (Medium) reflects the local-only attack vector, organizations with IPv6 deployments should prioritize patching based on their risk tolerance for service disruption. The vulnerability is trivial to exploit locally and affects system stability directly. Multi-tenant environments, container platforms, and systems where unprivileged users manage IPv6 addresses should treat this as higher priority. Single-user or tightly controlled systems may defer patching to routine maintenance windows.

Risk score, explained

The CVSS 3.1 score of 5.5 (Medium) reflects: local attack vector (no remote exploitation), low attack complexity (straightforward trigger), requirement for low privileges (user-level access to network configuration), no confidentiality or integrity impact, but high availability impact due to kernel crash. The score appropriately captures that this is a local denial-of-service vector without data breach potential. Organizational risk should factor in the prevalence of IPv6 in infrastructure and the tolerance for unplanned kernel crashes.

Frequently asked questions

Can this vulnerability be exploited remotely?

No. CVE-2026-53214 requires local access to the system and the ability to invoke IPv6 address configuration changes. It cannot be exploited over a network.

Which IPv6 operations trigger this vulnerability?

The vulnerability is triggered specifically when removing or deleting IPv6 addresses through netlink socket calls. Normal IPv6 traffic or passive IPv6 routing does not trigger the bug—active configuration changes that invoke cleanup_prefix_route() are required.

Does this affect systems that do not use IPv6?

Systems with IPv6 disabled or not configured are not affected, as the vulnerable code path is only invoked during IPv6 address management operations. However, many modern distributions enable IPv6 by default.

What is the fib6_null_entry and why is it problematic here?

The fib6_null_entry is a sentinel (placeholder) object used internally by the kernel's routing table implementation to represent invalid or null routes. Unlike normal route entries, it has a NULL fib6_table pointer. The vulnerable code failed to check for this sentinel before dereferencing the pointer, causing a null pointer crash.

This analysis is based on the vulnerability description and CVSS data provided. Specific affected kernel versions, patch availability dates, and distribution-specific update timelines should be verified against official advisories from your Linux distribution maintainer or kernel.org. The vulnerability has not been added to the CISA KEV catalog as of the published date. Exploitation in real-world attack scenarios may differ from theoretical analysis. Organizations should conduct their own risk assessment based on their IPv6 deployment scope and user privilege model. No proof-of-concept or weaponized code is provided or endorsed by this analysis. Source: NVD (public-domain), retrieved 2026-08-03. Analysis generated by SEC.co (claude-haiku-4-5).