CVE-2026-53134: netfilter: nft_fib: fix stale stack leak via the OIFNAME register
In the Linux kernel, the following vulnerability has been resolved:
netfilter: nftfib: fix stale stack leak via the OIFNAME register
For NFTFIBRESULTOIFNAME the destination register is declared with len = IFNAMSIZ (four 32-bit registers), but on the lookup-fail, RTNLOCAL and oif-mismatch paths nftfib{4,6}eval() only writes one register via "dest = 0". The remaining three registers are left as whatever was on the stack in nftdochain()'s struct nftregs, and a downstream expression that loads the register span can leak that uninitialised kernel stack to userspace.
The NFTAFIBFPRESENT existence check has the same shape: it is only meaningful for NFTFIBRESULTOIF, yet it was accepted for any result type while the eval stores a single byte via nftregstore8(), leaving the rest of the declared span stale.
Fix both:
- replace the bare "dest = 0" in the eval with nftfibstoreresult(), which strscpypad()s the whole IFNAMSIZ for OIFNAME (and is already used on the other early-return path), and
- restrict NFTAFIBFPRESENT to NFTFIBRESULTOIF and declare its destination as a single u8, so the marked span matches the one byte the eval writes.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Linux kernel netfilter: nft_fibto a version that resolves this vulnerability.Patch netfilter: nft_fib: fix stale stack leak via the OIFNAME register - Configuration
In nft_fib{4,6}_eval(), replace the early-leave pattern "*dest = 0" with nft_fib_store_result() so the destination register span is written correctly.
netfilter nft_fib{4,6} eval OIFNAME register initialization = *dest = 0 replaced with nft_fib_store_result() - Configuration
Restrict the NFTA_FIB_F_PRESENT existence check to the result type NFT_FIB_RESULT_OIF only (i.e., apply the check only for NFT_FIB_RESULT_OIF).
netfilter nft_fib{4,6} eval NFTA_FIB_F_PRESENT restriction = NFTA_FIB_F_PRESENT restricted to NFT_FIB_RESULT_OIF - Configuration
For the NFT_FIB_RESULT_OIFNAME path, declare the destination register as a single u8 (matching the one-byte nft_reg_store8() behavior) rather than a span that would allow stale stack bytes to be leaked.
netfilter nft_fib{4,6} eval NFTA_FIB_F_PRESENT destination register declaration = Declare destination as u8 with result OIF semantics
Event History
Frequently Asked Questions
What is the severity of CVE-2026-53134?
The severity of CVE-2026-53134 is classified as medium with a CVSS score of 5.5.
How do I fix CVE-2026-53134?
To fix CVE-2026-53134, you should update your Linux kernel to the latest patched version provided by your distribution.
What could be the impact of CVE-2026-53134 on my system?
The impact of CVE-2026-53134 could potentially lead to a denial of service due to a stale stack leak, affecting system stability.
What systems are affected by CVE-2026-53134?
CVE-2026-53134 affects systems running vulnerable versions of the Linux kernel that utilize the netfilter framework.
Is CVE-2026-53134 publicly known?
Yes, CVE-2026-53134 was publicly announced on June 25, 2026.