CVE-2026-45918

ovpn: tcp - don't deref NULL sk_socket member after tcp_close()

State
Published
Severity
Not scored
Published
May 27, 2026
Updated
May 27, 2026
Reserved
May 13, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

ovpn: tcp - don't deref NULL sk_socket member after tcp_close()

When deleting a peer in case of keepalive expiration, the peer is removed from the OpenVPN hashtable and is temporary inserted in a "release list" for further processing.

This happens in: ovpn_peer_keepalive_work() unlock_ovpn(release_list)

This processing includes detaching from the socket being used to talk to this peer, by restoring its original proto and socket ops/callbacks.

In case of TCP it may happen that, while the peer is sitting in the release list, userspace decides to close the socket. This will result in a concurrent execution of:

tcp_close(sk) __tcp_close(sk) sock_orphan(sk) sk_set_socket(sk, NULL)

The last function call will set sk->sk_socket to NULL.

When the releasing routine is resumed, ovpn_tcp_socket_detach() will attempt to dereference sk->sk_socket to restore its original ops member. This operation will crash due to sk->sk_socket being NULL.

Fix this race condition by testing-and-accessing sk->sk_socket atomically under sk->sk_callback_lock.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 11851cbd60ea1e5abbd97619d69845ead99303d6 to before f998b2c4bec487063a586695159f9a1856e81c56Affected
  • 11851cbd60ea1e5abbd97619d69845ead99303d6 to before b9142cf4e066c825ec68752a7dcaceda700bbe26Affected
  • 11851cbd60ea1e5abbd97619d69845ead99303d6 to before 94560267d6c41b1ff3fafbab726e3f8a55a6af34Affected
LinuxLinux
  • 6.16Affected
  • before 6.16Not affected
  • 6.18.14 through 6.18.*Not affected
  • 6.19.4 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.