Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-64043

CVE-2026-64043: Linux Kernel Race Condition Vulnerability

CVE-2026-64043 is a race condition vulnerability in the Linux kernel's ovpn interface that allows netdevice hang during peer addition. This post covers the technical details, affected versions, and mitigation steps.

Published:

CVE-2026-64043 Overview

CVE-2026-64043 is a race condition vulnerability in the Linux kernel's OpenVPN Data Channel Offload (ovpn) module. The flaw exists between the interface deletion path and the peer addition path exposed through netlink. When the ovpn_dellink() routine releases existing peers and queues the netdevice for deregistration, an incoming CMD_PEER_NEW netlink message can add a new peer that acquires a fresh reference to the netdev. The netdevice then hangs and cannot be unregistered because the kernel assumed all peers had already been released.

Critical Impact

A local user with netlink access can trigger a netdevice unregistration hang by racing peer creation against ovpn interface deletion, resulting in a stuck kernel resource.

Affected Products

  • Linux kernel builds shipping the ovpn (OpenVPN Data Channel Offload) module prior to the fix
  • Stable kernel branches referenced by the upstream commits 097d62df3831, 982422b11e6f, and de9fec2a6645
  • Distribution kernels that backported the ovpn netlink peer management code without the race fix

Discovery Timeline

  • 2026-07-19 - CVE-2026-64043 published to NVD
  • 2026-07-19 - Last updated in NVD database

Technical Details for CVE-2026-64043

Vulnerability Analysis

The defect is a race condition [CWE-362] in the ovpn netlink control plane. The ovpn_dellink() function tears down an existing ovpn interface by releasing all peers and queueing the netdevice for deregistration. During a narrow window between peer teardown and final unregistration, a concurrent CMD_PEER_NEW netlink message can invoke ovpn_peer_add() and take a new reference on the netdev. Because the deregistration path assumes zero remaining peers, the newly added peer holds a reference that no cleanup routine will drop, and the netdevice stalls indefinitely.

The fix relocates peer teardown into ndo_uninit(), which runs after the netdevice has been removed from the netdev list. ovpn_peer_add() also now inspects the netdev reg_state while holding netdev_lock and bails out when the state is not REGISTERED. The empty ovpn_dellink() is removed. The epssScore for CVE-2026-64043 is 0.198%.

Root Cause

The root cause is missing synchronization between the interface deletion routine and netlink peer creation. ovpn_dellink() released peers and queued deregistration without preventing new peers from being added during the interim, and ovpn_peer_add() did not validate the netdev registration state before acquiring a reference.

Attack Vector

Exploitation requires local access with permission to send netlink messages to the ovpn family. A caller repeatedly triggers ovpn interface deletion while a second caller issues CMD_PEER_NEW messages against the same interface. Successfully racing the two operations leaves the netdev in a hung state, resulting in a denial of service against kernel networking resources. Remote exploitation is not applicable because the trigger requires local netlink access.

No verified public proof-of-concept code is available. See the upstream commits 097d62df3831, 982422b11e6f, and de9fec2a6645 for the fix details.

Detection Methods for CVE-2026-64043

Indicators of Compromise

  • Kernel log warnings referencing unregister_netdevice: waiting for <ifname> to become free associated with ovpn interfaces
  • Stuck ovpn netdevices that resist ip link delete and remain visible in /sys/class/net/ after deletion attempts
  • Workqueue backlog on the netdev cleanup path with references to the ovpn module

Detection Strategies

  • Audit AUDIT_NETLINK records for high-frequency CMD_PEER_NEW messages issued against ovpn interfaces that are also being deleted
  • Correlate RTM_DELLINK events on ovpn devices with subsequent ovpn netlink family commands from unprivileged or unexpected processes
  • Monitor kernel ring buffer output through dmesg or journalctl -k for repeated unregister-waiting messages tied to ovpn

Monitoring Recommendations

  • Track running kernel versions across Linux fleets and flag hosts on ovpn-enabled kernels that have not received the fix commits
  • Alert on processes invoking iproute2 or custom netlink clients that combine link delete and ovpn peer commands in rapid succession
  • Watch for network interface counts that fail to decrease after deletion, which indicates hung netdevices

How to Mitigate CVE-2026-64043

Immediate Actions Required

  • Update Linux kernels to a stable release that includes commits 097d62df3831, 982422b11e6f, and de9fec2a6645
  • Restrict access to the ovpn netlink family to trusted administrators by tightening CAP_NET_ADMIN assignments and namespace boundaries
  • Inventory hosts using the in-kernel ovpn Data Channel Offload and prioritize patching those systems

Patch Information

The upstream fix moves peer release into ndo_uninit() and adds a reg_state != REGISTERED guard in ovpn_peer_add() under netdev_lock. Apply the vendor kernel update that incorporates the three referenced stable commits, then reboot to load the corrected module. See git.kernel.org commit 097d62df3831 for the mainline change.

Workarounds

  • Disable or unload the ovpn kernel module on hosts where OpenVPN Data Channel Offload is not required
  • Serialize administrative operations so that ovpn interface deletion cannot overlap with peer creation on the same interface
  • Constrain unprivileged user namespaces that could grant CAP_NET_ADMIN inside a namespace hosting ovpn devices
bash
# Verify whether the ovpn module is loaded and unload it if unused
lsmod | grep '^ovpn'
sudo modprobe -r ovpn

# Prevent automatic loading until the kernel is patched
echo 'blacklist ovpn' | sudo tee /etc/modprobe.d/disable-ovpn.conf

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.