LiveActive security incident?Get immediate response
CVE Record

CVE-2026-74727: ovpn: skip rehash for peers already removed from by_id

In the Linux kernel, the following vulnerability has been resolved: ovpn: skip rehash for peers already removed from by_id ovpn_nl_peer_set_doit() resolves the target peer via ovpn_peer_get_by_id() before taking ovpn->lock. In the window between the lookup (which only takes a refcount) and the subsequent spin_lock_bh(&ovpn->lock), a concurrent OVPN_CMD_PEER_DEL, keepalive expiry, or socket teardown can take ovpn->lock first, run ovpn_peer_remove() to unhash the peer from all four tables (by_id, by_vpn_addr4/6, by_transp_addr) and release the lock. set_doit then acquires ovpn->lock and calls ovpn_peer_hash_vpn_ip(), which re-inserts the now-removed peer back into the rehashing tables. The same race affects the float path: ovpn_peer_endpoints_update() holds only a refcount and acquires ovpn->lock very late (after async AEAD decrypt and a netlink notification), then rehashes the peer in the by_transp_addr table. The resurrected peer becomes reachable again from the RX lookup (ovpn_peer_get_by_transp_addr) and the TX VPN-IP lookup, even though userspace believes it is gone. Once the data-path refcount drops the peer is freed via call_rcu while the hash entries embedded in it remain linked, opening a UAF window. Bail out of the rehash when hash_entry_id is unhashed, mirroring the sentinel already used by ovpn_peer_remove() to detect the already-removed state. The check is safe under ovpn->lock, which serializes every mutation of hash_entry_id, and is a no-op for the add path because ovpn_peer_add_mp() inserts hash_entry_id before calling ovpn_peer_hash_vpn_ip().

CriticalCVSS 9.8Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

A timing flaw in Linux's ovpn code can accidentally restore a deleted VPN peer to internal lookup tables. The peer may later be freed while those references remain, creating a use-after-free condition. The supplied CVSS assessment indicates potentially severe confidentiality, integrity, and availability impact, although demonstrated outcomes are not provided.

Executive priority

Urgent for systems actively using ovpn. Schedule an expedited vendor-supported kernel update, prioritizing VPN infrastructure exposed to untrusted networks. Systems not using ovpn are less likely to be exposed, but applicability should be documented rather than assumed from package presence alone.

Technical view

Peer lookup occurs before ovpn locking. Concurrent deletion, expiry, or socket teardown can unhash the peer before peer-set or endpoint-float processing later rehashes it. RCU may then free the peer while embedded hash entries remain linked, creating a use-after-free window. The fix skips rehashing when hash_entry_id indicates removal.

Likely exposure

Exposure is limited to Linux systems using the affected ovpn functionality. The bundle lists 6.16, 6.18.45, 7.1.9, 7.2, and an ambiguous "0" as affected version entries, but does not clearly define ranges. Confirm applicability through distribution or kernel-vendor guidance rather than relying solely on these labels.

Exploitation context

The supplied CVSS 9.8 vector describes network reachability, low attack complexity, no required privileges, and no user interaction. Exploitation still depends on the peer-lifecycle race described. The bundle provides no proof of concept or evidence of active exploitation, and the CVE is not identified as being in KEV.

Researcher notes

The described sentinel check is performed under ovpn->lock and prevents removed peers from being rehashed; the add path remains unaffected because it inserts hash_entry_id first. No CWE, exploit artifact, attack telemetry, or precise affected-version range semantics are supplied. The three kernel.org references appear to represent fixes for applicable stable branches.

Mitigation direction

  • Apply the supported vendor kernel update incorporating the applicable referenced stable fix.
  • Reboot affected systems into the updated kernel and verify the running version.
  • If an update is unavailable, obtain supported mitigation guidance from the Linux distribution or kernel vendor.
  • Prioritize systems actively using ovpn, particularly network-reachable VPN infrastructure.

Validation and detection

  • Inventory running Linux kernels and determine which systems actively use ovpn.
  • Compare installed kernel packages with vendor advisories and the referenced stable fix commits.
  • After updating, confirm every system booted into the intended fixed kernel.
  • Regression-test peer deletion, keepalive expiry, socket teardown, and endpoint changes under concurrent activity.
  • Review kernel diagnostics for memory-safety warnings, crashes, or abnormal ovpn peer behavior.
Prepared
Confidence
medium
Sources
5

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2026-74727 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Critical
CVSS
9.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
0ADP providers
4Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
9.8CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H3.95.9Linux

Vulnerability scoring details

Base CVSS 3.1 score

9.8Critical
CVSS 3.1 vector shape for CVE-2026-74727Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux1d36a36f6d5347360ef9681a05f6166683bafd1d, 1d36a36f6d5347360ef9681a05f6166683bafd1d, 1d36a36f6d5347360ef9681a05f6166683bafd1dunaffected
LinuxLinux6.16, 0, 6.18.45, 7.1.9, 7.2affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.