CVE-2026-72429
CriticalCVSS 9.8Exploitation Probability (EPSS)
Low risk10th percentile - higher than 10% of all known CVEs
Summary
In the Linux kernel, in ipv6: ioam, there is a type confusion of dst_entry. IOAM uses a dummy dst_entry (null_dst) to mark that the destination should not be changed, but this dst is stored in the IOAM lwt state and may be passed to dst_cache_set_ip6(), leading to invalid cast and potential invalid memory access.
Risk Assessment
This can lead to invalid memory access, system crashes, or potential privilege escalation in environments with IOAM enabled.
Recommendation
Apply the Linux kernel patch that embeds a full struct rt6_info for the dummy IPv6 route and passes its dst member to the dst APIs.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: ipv6: ioam: fix type confusion of dst_entry IOAM uses a dummy dst_entry(null_dst) to mark that the destination should not be changed after the transformation. This dst is stored in the IOAM lwt state and may be passed to dst_cache_set_ip6(). However, the IPv6 dst cache path eventually calls rt6_get_cookie(), which treats the dst_entry as part of a struct rt6_info. Since the null_dst was embedded directly as a struct dst_entry in struct ioam6_lwt, this resulted in an invalid cast and rt6_get_cookie() reading fields from the wrong object. In practice, the wrong cookie is not used while dst->obsolete is zero, but rt6_get_cookie() may also access per-cpu value when rt->sernum is zero. In this case, rt->sernum aliases ioam6_lwt::cache::reset_ts, which can become zero, making this a potential invalid pointer access. Fix this by embedding a full struct rt6_info for the dummy IPv6 route and passing its dst member to the dst APIs.

