In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: avoid chain re-validation if possible
Hamza Mahfooz reports cpu soft lock-ups in nft_chain_validate():
watchdog: BUG: soft lockup - CPU#1 stuck for 27s! [iptables-nft-re:37547] [..] RIP: 0010:nft_chain_validate+0xcb/0x110 [nf_tables] [..] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_immediate_validate+0x36/0x50 [nf_tables] nft_chain_validate+0xc9/0x110 [nf_tables] nft_table_validate+0x6b/0xb0 [nf_tables] nf_tables_validate+0x8b/0xa0 [nf_tables] nf_tables_commit+0x1df/0x1eb0 [nf_tables] [..]
Currently nf_tables will traverse the entire table (chain graph), starting from the entry points (base chains), exploring all possible paths (chain jumps). But there are cases where we could avoid revalidation.
Consider: 1 input -> j2 -> j3 2 input -> j2 -> j3 3 input -> j1 -> j2 -> j3
Then the second rule does not need to revalidate j2, and, by extension j3, because this was already checked during validation of the first rule. We need to validate it only for rule 3.
This is needed because chain loop detection also ensures we do not exceed the jump stack: Just because we know that j2 is cycle free, its last jump might now exceed the allowed stack size. We also need to update all reachable chains with the new largest observed call depth.
Care has to be taken to revalidate even if the chain depth won't be an issue: chain validation also ensures that expressions are not called from invalid base chains. For example, the masquerade expression can only be called from NAT postrouting base chains.
Therefore we also need to keep record of the base chain context (type, hooknum) and revalidate if the chain becomes reachable from a different hook location.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-develUpgrade kernel-livepatch-6.12.66-88.122Upgrade kernel6.12-headersUpgrade perf6.12Upgrade kernel6.12-debuginfoUpgrade kernel6.12-libbpf-staticUpgrade perf6.12-debuginfoUpgrade kernel6.12Upgrade kernel6.12-toolsUpgrade python3-perf6.12-debuginfoUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-tools-develUpgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.12-modules-extra-commonUpgrade bpftool6.12Upgrade kernel6.12-libbpfUpgrade kernel6.12-modules-extraUpgrade kernel6.12-tools-debuginfoUpgrade kernel6.12-libbpf-develUpgrade bpftool6.12-debuginfo | Apr 7, 2026 | Jan 23, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 12, 2026 | Jan 23, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Jan 23, 2026 |
| Ubuntu | — | Upgrade linux-image-6.17.0-1021-gcpUpgrade linux-image-raspi-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-azure-fde-6.17Upgrade linux-image-genericUpgrade linux-image-gcp-fipsUpgrade linux-image-intel-iotgUpgrade linux-image-raspiUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.8.0-117-genericUpgrade linux-image-nvidia-64k-6.17Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-gkeopUpgrade linux-image-azureUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.8.0-1054-nvidia-64kUpgrade linux-image-6.8.0-116-fipsUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-2045-raspi-realtimeUpgrade linux-image-gcp-64kUpgrade linux-image-6.8.0-1056-raspiUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-aws-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1055-awsUpgrade linux-image-6.8.0-1056-azureUpgrade linux-image-6.8.0-1058-gcp-64kUpgrade linux-image-6.8.0-1054-nvidiaUpgrade linux-image-gcp-64k-6.17Upgrade linux-image-nvidia-64k-hwe-24.04Upgrade linux-image-realtime-6.8.1Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-6.8.0-1055-aws-fipsUpgrade linux-image-xilinx-6.8Upgrade linux-image-gcp-6.17Upgrade linux-image-gke-64kUpgrade linux-image-gkeUpgrade linux-image-aws-fipsUpgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gke-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.17.0-1019-oracleUpgrade linux-image-aws-lts-24.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-nvidia-hwe-24.04Upgrade linux-image-fipsUpgrade linux-image-6.8.0-1058-gcp-fipsUpgrade linux-image-6.8.1-1051-realtimeUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-nvidia-6.17Upgrade linux-image-oracle-64k-6.17Upgrade linux-image-6.8.0-117-lowlatency-64kUpgrade linux-image-6.8.0-117-generic-64kUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-6.17.0-1019-oracle-64kUpgrade linux-image-realtimeUpgrade linux-image-nvidia-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-117-lowlatencyUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.17.0-1021-gcp-64kUpgrade linux-image-6.8.0-1024-nvidia-tegra-rtUpgrade linux-image-6.8.0-1055-ibmUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-6.8.0-1054-gke-64kUpgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-oem-24.04aUpgrade linux-image-azure-fdeUpgrade linux-image-virtualUpgrade linux-image-6.17.0-1030-oemUpgrade linux-image-ibm-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-ibmUpgrade linux-image-azure-fipsUpgrade linux-image-6.17.0-1018-azure-fdeUpgrade linux-image-gkeop-6.8Upgrade linux-image-gcpUpgrade linux-image-fips-6.8Upgrade linux-image-azure-6.17Upgrade linux-image-6.8.0-1054-nvidia-lowlatencyUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1054-gkeUpgrade linux-image-6.8.0-1059-azure-fipsUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.17.0-1018-realtimeUpgrade linux-image-nvidiaUpgrade linux-image-oem-6.17Upgrade linux-image-6.8.0-1059-azureUpgrade linux-image-oem-24.04bUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-1041-gkeopUpgrade linux-image-6.17.0-1031-nvidiaUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-tegraUpgrade linux-image-kvmUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-generic-64kUpgrade linux-image-aws-64k-6.8Upgrade linux-image-6.17.0-1021-azureUpgrade linux-image-oracleUpgrade linux-image-oem-24.04cUpgrade linux-image-generic-64k-6.8Upgrade linux-image-aws-fips-6.8Upgrade linux-image-6.8.0-1054-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1058-gcpUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-realtime-6.17Upgrade linux-image-azure-fips-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1024-nvidia-tegraUpgrade linux-image-6.8.0-1055-aws-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-generic-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-xilinxUpgrade linux-image-6.17.0-1031-nvidia-64kUpgrade linux-image-oem-24.04dUpgrade linux-image-oracle-6.17Upgrade linux-image-ibm-classic | May 25, 2026 | May 19, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub