Linux: ovpn: replace bind when clearing stale local source
What fixes it
- 72bd1bea37ea2c8553938f086bf48ccd2147dfe1LinuxCVE List
- 7d8104988f423572df1f3347ce578037b1043f34LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
ovpn: replace bind when clearing stale local source
The UDP output fallback clears bind->local in place when the remembered source address is no longer usable. The bind is RCU-published and read locklessly by concurrent TX, so an IPv6 reader can observe a torn address.
Retry the route lookup with source address autoselection without modifying the bind. After a successful lookup, revalidate the bind and route key under peer->lock, reset the dst cache, and best-effort publish a replacement bind with a wildcard local address.
Do not cache the resolved dst when clearing the local source. Replacing the source invalidates all per-CPU cache entries, while dst_cache_set_ip4 and dst_cache_set_ip6 update only the current CPU slot. The current packet can still use the resolved route; if bind allocation fails, a later cache miss retries the repair.
Text from CVE List
Affected versions 8
- Linuxaffected: 08857b5ec5d91d83e69e40a36554a8c7557b7301 before c44a04722f7dae9a45a101b8e100931ab59f1c18CVE List
- Linuxaffected: 08857b5ec5d91d83e69e40a36554a8c7557b7301 before 72bd1bea37ea2c8553938f086bf48ccd2147dfe1CVE List
- Linuxaffected: 08857b5ec5d91d83e69e40a36554a8c7557b7301 before 7d8104988f423572df1f3347ce578037b1043f34CVE List
- Linuxaffected: 6.16CVE List
- Linuxunaffected: all versions before 6.16CVE List
- Linuxunaffected: 6.18.55 through 6.18.*CVE List
- Linuxunaffected: 7.2.9 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List