CVE-2026-97472

Summary

In the Linux kernel, the following vulnerability has been resolved:

ipv6: addrconf: fix temp address generation after prefix deprecation

When a router temporarily deprecates an IPv6 prefix (either by sending a Router Advertisement with Preferred Lifetime = 0 or by letting the lifetime expire) and later restores it, the kernel permanently loses its ability to generate temporary privacy addresses (RFC 8981) for that prefix.

This happens because the address worker attempts to generate a replacement temporary address when the current one nears expiration. As the base prefix is deprecated already, the generation fails after marking the temporary address as already having spawned a replacement (ifp->regen_count++).

When the router eventually restores the prefix, the temporary address becomes active again. However, once it naturally expires, the address worker sees this temporary address already tried to generate one and skips the regeneration.

Fix the issue by resetting the regen_count check of the latest temp address generated for the prefix updated by the incoming RA.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < b00f7c1da82a809156f785ed37536c2d2584927daffected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < 6da8ba900b85e6478e211427630c67595fb707a4affected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < 4f7d2a8dc364c4e55d0a1533451339008512933faffected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < f601ec5c92b3260c742f27a5d2fd289e30ae798faffected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < bff7b87dfa28a1502c18d0c6f1fadda5162fa854affected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < 4df5597c65446135362f72880995e8920f058fa0affected
LinuxLinux76f793e3a47139d340185cbc1a314740c09b13d3 < e20d8922aa8fe441d291364c96c2179a005b79eaaffected
LinuxLinux3.2affected
LinuxLinux0 < 3.2unaffected
LinuxLinux5.10.271 <= 5.10.*unaffected
LinuxLinux5.15.222 <= 5.15.*unaffected
LinuxLinux6.1.189 <= 6.1.*unaffected
LinuxLinux6.6.158 <= 6.6.*unaffected
LinuxLinux6.12.111 <= 6.12.*unaffected
LinuxLinux6.18.53 <= 6.18.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References