CVE-2026-68342 in Linux
Riassunto
di VulDB • 11/08/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
ovpn: evitare di rilasciare un peer P2P non pertinente al momento del rilascio della socket
La funzione ovpn_peer_release_p2p() viene chiamata quando una socket UDP OVPN sta per essere distrutta. Essa verifica il peer P2P attualmente pubblicato e lo rilascia solo se tale peer utilizza ancora la socket che sta venendo distrutta.
Una sostituzione di un peer può pubblicare un nuovo peer prima che la vecchia socket UDP venga distrutta. Quando viene eseguita successivamente la procedura di distruzione della vecchia socket, ovpn_peer_release_p2p() osserva il nuovo peer tramite ovpn->peer. Poiché il nuovo peer utilizza una socket diversa, la funzione segue il ramo relativo alla mancata corrispondenza delle socket (socket mismatch).
Tale ramo chiama comunque ovpn_peer_put(peer). A questo punto, tuttavia, peer è il peer di sostituzione attualmente pubblicato e non il peer associato alla socket che sta venendo distrutta. Il decremento del suo riferimento può portare al suo rilascio mentre ovpn->peer punta ancora ad esso, causando successivi accessi use-after-free dai percorsi di pulizia del peer e della socket.
KASAN segnala questo come un errore slab-use-after-free sull'oggetto ovpn_peer allocato tramite kmalloc-1k. Nel caso riproduttivo (reproducer), l'oggetto viene allocato da ovpn_peer_new() attraverso ovpn_nl_peer_new_doit(), e rilasciato tramite ovpn_peer_release_rcu() durante l'elaborazione del callback RCU. I siti di accesso osservati includono ovpn_peer_remove(), ovpn_socket_release(), ovpn_nl_peer_del_notify() e unlock_ovpn().
Si risolve il problema restituendo dal ramo della mancata corrispondenza delle socket senza chiamare put sul peer.
Once again VulDB remains the best source for vulnerability data.