{"id":"CVE-2026-23278","state":"PUBLISHED","title":"netfilter: nf_tables: always walk all pending catchall elements","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: nf_tables: always walk all pending catchall elements\n\nDuring transaction processing we might have more than one catchall element:\n1 live catchall element and 1 pending element that is coming as part of the\nnew batch.\n\nIf the map holding the catchall elements is also going away, its\nrequired to toggle all catchall elements and not just the first viable\ncandidate.\n\nOtherwise, we get:\n WARNING: ./include/net/netfilter/nf_tables.h:1281 at nft_data_release+0xb7/0xe0 [nf_tables], CPU#2: nft/1404\n RIP: 0010:nft_data_release+0xb7/0xe0 [nf_tables]\n [..]\n __nft_set_elem_destroy+0x106/0x380 [nf_tables]\n nf_tables_abort_release+0x348/0x8d0 [nf_tables]\n nf_tables_abort+0xcf2/0x3ac0 [nf_tables]\n nfnetlink_rcv_batch+0x9c9/0x20e0 [..]","publishedAt":"2026-03-20T08:08:58.566Z","updatedAt":"2026-10-30T12:23:54.849Z","severity":{"score":7.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"25aa2ad37c2162be1c0bc4fe6397f7e4c13f00f8","status":"affected","lessThan":"ae8f3cedc5f5653a5bed45c5ed016fe156e2af55","versionType":"git"},{"version":"d60be2da67d172aecf866302c91ea11533eca4d9","status":"affected","lessThan":"c4d4e86fda707d89eaba80e343321737375f8582","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"4830fb44d12f586f3f544609e086933649a9175a","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"eb0948fa13298212c5f8b30ee48efdae4389ab09","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"de47a88c6b807910f05703fb6605f7efdaa11417","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"77c26b5056d693ffe5e9f040e946251cdb55ae55","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"7cb9a23d7ae40a702577d3d8bacb7026f04ac2a9","versionType":"git"},{"version":"bc9f791d2593f17e39f87c6e2b3a36549a3705b1","status":"affected","versionType":"git"},{"version":"3c7ec098e3b588434a8b07ea9b5b36f04cef1f50","status":"affected","versionType":"git"},{"version":"a136b7942ad2a50de708f76ea299ccb45ac7a7f9","status":"affected","versionType":"git"},{"version":"dc7cdf8cbcbf8b13de1df93f356ec04cdeef5c41","status":"affected","versionType":"git"},{"version":"5.15.121","status":"affected","lessThan":"5.15.224","versionType":"semver"},{"version":"6.1.36","status":"affected","lessThan":"6.1.177","versionType":"semver"},{"version":"4.19.316","status":"affected","lessThan":"4.20","versionType":"semver"},{"version":"5.4.262","status":"affected","lessThan":"5.5","versionType":"semver"},{"version":"5.10.188","status":"affected","lessThan":"5.11","versionType":"semver"},{"version":"6.3.10","status":"affected","lessThan":"6.4","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/netfilter/nf_tables_api.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.4","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.4","versionType":"semver"},{"version":"5.15.224","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.177","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.144","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.78","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.19","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19.9","status":"unaffected","lessThanOrEqual":"6.19.*","versionType":"semver"},{"version":"7.0","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/netfilter/nf_tables_api.c"]}],"references":["https://git.kernel.org/stable/c/ae8f3cedc5f5653a5bed45c5ed016fe156e2af55","https://git.kernel.org/stable/c/c4d4e86fda707d89eaba80e343321737375f8582","https://git.kernel.org/stable/c/4830fb44d12f586f3f544609e086933649a9175a","https://git.kernel.org/stable/c/eb0948fa13298212c5f8b30ee48efdae4389ab09","https://git.kernel.org/stable/c/de47a88c6b807910f05703fb6605f7efdaa11417","https://git.kernel.org/stable/c/77c26b5056d693ffe5e9f040e946251cdb55ae55","https://git.kernel.org/stable/c/7cb9a23d7ae40a702577d3d8bacb7026f04ac2a9","https://cert-portal.siemens.com/productcert/html/ssa-784472.html"],"weaknesses":["CWE-416"],"ingestedAt":"2026-10-30T12:40:04.423Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/23xxx/CVE-2026-23278.json","commit":"db8103c5921aac81d5d90efcf3745980dafabf49","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-23278","state":"PUBLISHED","datePublished":"2026-03-20T08:08:58.566Z","dateUpdated":"2026-10-30T12:23:54.849Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-01-13T15:37:45.991Z"},"containers":{"cna":{"title":"netfilter: nf_tables: always walk all pending catchall elements","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: nf_tables: always walk all pending catchall elements\n\nDuring transaction processing we might have more than one catchall element:\n1 live catchall element and 1 pending element that is coming as part of the\nnew batch.\n\nIf the map holding the catchall elements is also going away, its\nrequired to toggle all catchall elements and not just the first viable\ncandidate.\n\nOtherwise, we get:\n WARNING: ./include/net/netfilter/nf_tables.h:1281 at nft_data_release+0xb7/0xe0 [nf_tables], CPU#2: nft/1404\n RIP: 0010:nft_data_release+0xb7/0xe0 [nf_tables]\n [..]\n __nft_set_elem_destroy+0x106/0x380 [nf_tables]\n nf_tables_abort_release+0x348/0x8d0 [nf_tables]\n nf_tables_abort+0xcf2/0x3ac0 [nf_tables]\n nfnetlink_rcv_batch+0x9c9/0x20e0 [..]"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"25aa2ad37c2162be1c0bc4fe6397f7e4c13f00f8","status":"affected","lessThan":"ae8f3cedc5f5653a5bed45c5ed016fe156e2af55","versionType":"git"},{"version":"d60be2da67d172aecf866302c91ea11533eca4d9","status":"affected","lessThan":"c4d4e86fda707d89eaba80e343321737375f8582","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"4830fb44d12f586f3f544609e086933649a9175a","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"eb0948fa13298212c5f8b30ee48efdae4389ab09","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"de47a88c6b807910f05703fb6605f7efdaa11417","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"77c26b5056d693ffe5e9f040e946251cdb55ae55","versionType":"git"},{"version":"628bd3e49cba1c066228e23d71a852c23e26da73","status":"affected","lessThan":"7cb9a23d7ae40a702577d3d8bacb7026f04ac2a9","versionType":"git"},{"version":"bc9f791d2593f17e39f87c6e2b3a36549a3705b1","status":"affected","versionType":"git"},{"version":"3c7ec098e3b588434a8b07ea9b5b36f04cef1f50","status":"affected","versionType":"git"},{"version":"a136b7942ad2a50de708f76ea299ccb45ac7a7f9","status":"affected","versionType":"git"},{"version":"dc7cdf8cbcbf8b13de1df93f356ec04cdeef5c41","status":"affected","versionType":"git"},{"version":"5.15.121","status":"affected","lessThan":"5.15.224","versionType":"semver"},{"version":"6.1.36","status":"affected","lessThan":"6.1.177","versionType":"semver"},{"version":"4.19.316","status":"affected","lessThan":"4.20","versionType":"semver"},{"version":"5.4.262","status":"affected","lessThan":"5.5","versionType":"semver"},{"version":"5.10.188","status":"affected","lessThan":"5.11","versionType":"semver"},{"version":"6.3.10","status":"affected","lessThan":"6.4","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/netfilter/nf_tables_api.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.4","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.4","versionType":"semver"},{"version":"5.15.224","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.177","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.144","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.78","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.19","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19.9","status":"unaffected","lessThanOrEqual":"6.19.*","versionType":"semver"},{"version":"7.0","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/netfilter/nf_tables_api.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/ae8f3cedc5f5653a5bed45c5ed016fe156e2af55"},{"url":"https://git.kernel.org/stable/c/c4d4e86fda707d89eaba80e343321737375f8582"},{"url":"https://git.kernel.org/stable/c/4830fb44d12f586f3f544609e086933649a9175a"},{"url":"https://git.kernel.org/stable/c/eb0948fa13298212c5f8b30ee48efdae4389ab09"},{"url":"https://git.kernel.org/stable/c/de47a88c6b807910f05703fb6605f7efdaa11417"},{"url":"https://git.kernel.org/stable/c/77c26b5056d693ffe5e9f040e946251cdb55ae55"},{"url":"https://git.kernel.org/stable/c/7cb9a23d7ae40a702577d3d8bacb7026f04ac2a9"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"nf_tables catchall element walk breaks early, leaving second catchall element's chain references improperly toggled during abort. Leads to chain use-count underflow and UAF. Deterministic logic error reachable via unprivileged user namespaces."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-30T12:23:54.849Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15.121","versionEndExcluding":"5.15.224"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1.36","versionEndExcluding":"6.1.177"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.6.144"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.12.78"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.18.19"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.19.9"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"7.0"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.19.316"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.262"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.188"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3.10"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"affected":[{"vendor":"Siemens","product":"SIMATIC S7-1500 TM MFP - GNU/Linux subsystem","defaultStatus":"unknown","versions":[{"version":"0","status":"affected","lessThan":"*","versionType":"custom"}]}],"references":[{"url":"https://cert-portal.siemens.com/productcert/html/ssa-784472.html"}],"providerMetadata":{"shortName":"siemens-SADP","orgId":"0b142b55-0307-4c5a-b3c9-f314f3fb7c5e","dateUpdated":"2026-10-15T01:13:35.216Z"},"x_adpType":"supplier"},{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-23278","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T15:07:21.674772Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-416","lang":"en","type":"CWE","description":"CWE-416 Use After Free"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T18:35:41.455Z"}}]}}}