Linux kernel netfilter ctnetlink policy range check vulnerability
CVE-2026-31495 Published on April 22, 2026
netfilter: ctnetlink: use netlink policy range checks
In the Linux kernel, the following vulnerability has been resolved:
netfilter: ctnetlink: use netlink policy range checks
Replace manual range and mask validations with netlink policy
annotations in ctnetlink code paths, so that the netlink core rejects
invalid values early and can generate extack errors.
- CTA_PROTOINFO_TCP_STATE: reject values > TCP_CONNTRACK_SYN_SENT2 at
policy level, removing the manual >= TCP_CONNTRACK_MAX check.
- CTA_PROTOINFO_TCP_WSCALE_ORIGINAL/REPLY: reject values > TCP_MAX_WSCALE
(14). The normal TCP option parsing path already clamps to this value,
but the ctnetlink path accepted 0-255, causing undefined behavior when
used as a u32 shift count.
- CTA_FILTER_ORIG_FLAGS/REPLY_FLAGS: use NLA_POLICY_MASK with
CTA_FILTER_F_ALL, removing the manual mask checks.
- CTA_EXPECT_FLAGS: use NLA_POLICY_MASK with NF_CT_EXPECT_MASK, adding
a new mask define grouping all valid expect flags.
Extracted from a broader nf-next patch by Florian Westphal, scoped to
ctnetlink for the fixes tree.
Products Associated with CVE-2026-31495
Want to know whenever a new CVE is published for Linux Kernel? stack.watch will email you.
Affected Versions
Linux:- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 435b576cd2faa75154777868f8cbb73bf71644d3 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 2ef71307c86a9f866d6e28f1a0c06e2e9d794474 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 4f7d25f3f0786402ba48ff7d13b6241d77d975f5 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below fcec5ce2d73a41668b24e3f18c803541602a59f6 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 675c913b940488a84effdeeac5a1cfb657b59804 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below c6cb41eaae875501eaaa487b8db6539feb092292 is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 45c33e79ae705b7af97e3117672b6cd258dd0b1b is affected.
- Version c8e2078cfe414a99cf6f2f2f1d78c7e75392e9d4 and below 8f15b5071b4548b0aafc03b366eb45c9c6566704 is affected.
- Version 2.6.22 is affected.
- Before 2.6.22 is unaffected.
- Version 5.10.253, <= 5.10.* is unaffected.
- Version 5.15.203, <= 5.15.* is unaffected.
- Version 6.1.168, <= 6.1.* is unaffected.
- Version 6.6.131, <= 6.6.* is unaffected.
- Version 6.12.80, <= 6.12.* is unaffected.
- Version 6.18.21, <= 6.18.* is unaffected.
- Version 6.19.11, <= 6.19.* is unaffected.
- Version 7.0, <= * is unaffected.