PULSE
LIVE21signals / 24h
FEED
ransomincransom reclama a clintonhealthaccess.org · US · Healthcareransomincransom reclama a Oleoductos del Valle · AR · Energy & Utilitiesransomsafepay reclama a pradotuylaw.com · US · Professional Servicesransomsafepay reclama a naskdoorinc.com · US · Manufacturingransomsafepay reclama a new-point.it · IT · Technologyransomsafepay reclama a simonrack.com · ES · Manufacturingransomsafepay reclama a hanan-hov.co.il · IL · Otherransomanubis reclama a BLACKBURN'S · US · Healthcareransomanubis reclama a Cameron Regional Medical Center · US · Healthcareransomsafepay reclama a azn.co.jp · JP · Retail & E-Commerceransomsafepay reclama a southshorerecycling.com · US · Manufacturingransomsafepay reclama a cpu-ag.com · DE · Manufacturingransomsafepay reclama a multiaqua.com · US · Agriculture and Food Productionransomanubis reclama a Winn-Dixie · US · Retail & E-Commerceransomincransom reclama a clintonhealthaccess.org · US · Healthcareransomincransom reclama a Oleoductos del Valle · AR · Energy & Utilitiesransomsafepay reclama a pradotuylaw.com · US · Professional Servicesransomsafepay reclama a naskdoorinc.com · US · Manufacturingransomsafepay reclama a new-point.it · IT · Technologyransomsafepay reclama a simonrack.com · ES · Manufacturingransomsafepay reclama a hanan-hov.co.il · IL · Otherransomanubis reclama a BLACKBURN'S · US · Healthcareransomanubis reclama a Cameron Regional Medical Center · US · Healthcareransomsafepay reclama a azn.co.jp · JP · Retail & E-Commerceransomsafepay reclama a southshorerecycling.com · US · Manufacturingransomsafepay reclama a cpu-ag.com · DE · Manufacturingransomsafepay reclama a multiaqua.com · US · Agriculture and Food Productionransomanubis reclama a Winn-Dixie · US · Retail & E-Commerce
← All CVEs
CVE WatchJul 30, 2026

CVE-2026-64044

In the Linux kernel, the following vulnerability has been resolved: ovpn: respect peer refcount in CMD_NEW_PEER error path ovpn_nl_peer_ne

CVSS

7.8

High

EPSS

0.2%

p7

KEV

Exploit Today

2

0-100

Published: Jul 19, 2026 · Last modified: Jul 30, 2026

EPSS · 30d
0.2%EPSS · 30 days0.2%
2026-07-202026-08-02
Technical description

In the Linux kernel, the following vulnerability has been resolved: ovpn: respect peer refcount in CMD_NEW_PEER error path ovpn_nl_peer_new_doit()'s error path calls ovpn_peer_release() directly rather than ovpn_peer_put(), bypassing the kref. The accompanying comment ("peer was not yet hashed, thus it is not used in any context") holds for UDP but not for TCP. For UDP, the ovpn_socket union uses the .ovpn arm and never points back at a peer; UDP encap_recv looks up peers via the not-yet-populated hashtables, so the new peer is unreachable until ovpn_peer_add() publishes it. For TCP, ovpn_socket_new() sets ovpn_sock->peer and ovpn_tcp_socket_attach() publishes ovpn_sock via rcu_assign_sk_user_data(). From that moment until ovpn_socket_release() detaches in the error path, the TCP fd is fully wired: userspace recvmsg / sendmsg / close / poll on the fd, as well as the strparser-driven ovpn_tcp_rcv() path, can reach the peer through sk_user_data -> ovpn_sock->peer and bump its refcount via ovpn_peer_hold(). ovpn_tcp_socket_wait_finish() (called inside ovpn_socket_release()) drains strparser and the tx work, but does not synchronize with userspace syscall callers that already hold a peer reference. If ovpn_nl_peer_modify() or ovpn_peer_add() returns an error while such a caller is in flight - notably an ovpn_tcp_recvmsg() blocked in __skb_recv_datagram() on peer->tcp.user_queue - the direct ovpn_peer_release() destroys the peer while the caller still holds the reference, and the eventual ovpn_peer_put() from that caller operates on freed memory. Replace the direct destructor call with ovpn_peer_put() so the kref correctly defers destruction until the last reference is dropped. In the common case where no concurrent user is present, behaviour is unchanged: the kref hits zero immediately and ovpn_peer_release_kref() runs the same destructor. With this conversion ovpn_peer_release() has no callers outside peer.c - ovpn_peer_release_kref() in the same translation unit is the only remaining user - so make it static and drop its declaration from peer.h.

Official references
Related CVEs

No related CVEs by CWE or product.