Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

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

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

在 Linux 内核中,已修复以下漏洞: ovpn:跳过对已从 by_id 表中移除的对等体的重新哈希操作 在获取 锁之前,通过调用 来解析目标对等体(peer)。在查找操作(仅增加引用计数)与后续获取 之间的时间窗口内,并发的 命令、保活超时或套接字断开连接可能会先获取 ,执行 将该对等体从所有四个哈希表中移除(按 ID、按 VPN 地址 IPv4/IPv6、按传输地址),然后释放锁。随后, 获取 并调用 ,从而将已移除的对等体重新插入到重新哈希表中。 同样的竞态条件也影响“浮动”(float)路径: 仅持有引用

AI Predicted 6.8 Difficulty: Moderate EPSS 0.21% · P11

Possible ATT&CK Techniques 1 AI

T1190 · Exploit Public-Facing Application

Affected Version Matrix 8

VendorProduct Version RangeStatus
Linux Linux 1d36a36f6d5347360ef9681a05f6166683bafd1d< d20c181088984b6eaa8d7fe7cb5ab3510988df59 affected
1d36a36f6d5347360ef9681a05f6166683bafd1d< 66745480298775f188b2f5ad266643e85a90f73b affected
1d36a36f6d5347360ef9681a05f6166683bafd1d< 33ec10567fe14456063daf549fdf1a4f53448e4c affected
6.16 affected
< 6.16 unaffected
6.18.45≤ 6.18.* unaffected
7.1.9≤ 7.1.* unaffected
7.2≤ * unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-74727

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
ovpn: skip rehash for peers already removed from by_id
Source: CVE Program / CVE List V5
Vulnerability Description
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().
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux 1d36a36f6d5347360ef9681a05f6166683bafd1d ~ d20c181088984b6eaa8d7fe7cb5ab3510988df59 -
Linux Linux 6.16 -

II. Public POCs for CVE-2026-74727

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-74727

登录查看更多情报信息。

Patches & Fixes for CVE-2026-74727 (3)

Same Patch Batch · Linux · 2026-08-22 · 150 CVEs total

CVE-2026-74638 drm/v3d: Serialize the scheduler timeout handlers
CVE-2026-74621 net/sched: act_ct: fix sk_buff leak when the header checks reject a packet
CVE-2026-74622 net: atlantic: free RX pages of consumed but not refilled buffers
CVE-2026-74623 net: atlantic: free stranded TX buffers on ring deinit
CVE-2026-74624 netfilter: nf_conntrack: defer invalid log until after unlock
CVE-2026-74625 netfilter: bridge: release template ct on non-IP path
CVE-2026-74627 net: devmem: prevent net-iov / page mixing
CVE-2026-74626 NTB: ntb_netdev: Preserve RX queue depth on allocation failure
CVE-2026-74628 net/x25: fix use-after-free of the socket by its timers
CVE-2026-74629 net/dibs: Correct freeing of dmb_clientid_arr
CVE-2026-74631 net: smc: fix splice entry lifetime imbalance in smc_rx_splice
CVE-2026-74630 ipv6: prevent in6_dev_get() from resurrecting inet6_dev
CVE-2026-74632 mm/huge_memory: fix huge_zero_pfn race
CVE-2026-74633 tracing: Fix NULL pointer dereference in module event cache removal
CVE-2026-74634 ring-buffer: Prevent subbuf order change when resizing is disabled
CVE-2026-74635 fbdev: bitblit: bound-check glyph index in bit_cursor()
CVE-2026-74636 tracing: Fix race between update_event_fields and, event_define_fields
CVE-2026-74637 perf/core: Fix group leader use-after-free after sibling detach
CVE-2026-74639 ALSA: us144mkii: re-anchor capture URBs on resubmission
CVE-2026-74650 staging: rtl8723bs: fix OOB read in WMM_param_handler()

Showing top 20 of 150 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-74727

No comments yet


Leave a comment