CVE-2026-64580 in Linux
Riassunto
di VulDB • 05/08/2026
Nel kernel Linux, la seguente vulnerabilità è stata risolta:
xfrm6: azzerare dst.dev in caso di errore per evitare un doppio netdev_put in xfrm6_fill_dst()
Nel percorso di gestione degli errori in cui in6_dev_get(dev) restituisce NULL, xfrm6_fill_dst() rilascia il riferimento al dispositivo con netdev_put(), ma lascia xdst->u.dst.dev impostato. dst_destroy() chiama successivamente nuovamente netdev_put(dst->dev), causando così il rilascio due volte dello stesso riferimento a net_device e un underflow del suo contatore di riferimenti (avviso ref_tracker + "unregister_netdevice: in attesa che <dev> diventi libero").
Azzerare xdst->u.dst.dev dopo la chiamata a netdev_put(), nello stesso modo in cui i percorsi di device-offload XFRM xfrm_dev_state_add() e xfrm_dev_policy_add() in net/xfrm/xfrm_device.c impostano NULL ->dev quando rilasciano il riferimento in caso di errore.
ref_tracker: riferimento già rilasciato. ref_tracker: allocato in: xfrm6_fill_dst (net/ipv6/xfrm6_policy.c:86) ... udpv6_sendmsg (net/ipv6/udp.c:1696) ... ref_tracker: liberato in: xfrm6_fill_dst (net/ipv6/xfrm6_policy.c:90) ... WARNING: lib/ref_tracker.c:322 at ref_tracker_free+0x58b/0x780 dst_destroy (net/core/dst.c:115) rcu_core handle_softirqs ...
If you want to get best quality of vulnerability data, you may have to visit VulDB.