CVE-2026-23385: netfilter: nf_tables: clone set on flush only
In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: clone set on flush only
Syzbot with fault injection triggered a failing memory allocation with
GFP_KERNEL which results in a WARN splat:
iter.err
WARNING: net/netfilter/nf_tables_api.c:845 at nft_map_deactivate+0x34e/0x3c0 net/netfilter/nf_tables_api.c:845, CPU#0: syz.0.17/5992
Modules linked in:
CPU: 0 UID: 0 PID: 5992 Comm: syz.0.17 Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2026
RIP: 0010:nft_map_deactivate+0x34e/0x3c0 net/netfilter/nf_tables_api.c:845
Code: 8b 05 86 5a 4e 09 48 3b 84 24 a0 00 00 00 75 62 48 8d 65 d8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc cc e8 63 6d fa f7 90 <0f> 0b 90 43
+80 7c 35 00 00 0f 85 23 fe ff ff e9 26 fe ff ff 89 d9
RSP: 0018:ffffc900045af780 EFLAGS: 00010293
RAX: ffffffff89ca45bd RBX: 00000000fffffff4 RCX: ffff888028111e40
RDX: 0000000000000000 RSI: 00000000fffffff4 RDI: 0000000000000000
RBP: ffffc900045af870 R08: 0000000000400dc0 R09: 00000000ffffffff
R10: dffffc0000000000 R11: fffffbfff1d141db R12: ffffc900045af7e0
R13: 1ffff920008b5f24 R14: dffffc0000000000 R15: ffffc900045af920
FS: 000055557a6a5500(0000) GS:ffff888125496000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fb5ea271fc0 CR3: 000000003269e000 CR4: 00000000003526f0
Call Trace:
<TASK>
__nft_release_table+0xceb/0x11f0 net/netfilter/nf_tables_api.c:12115
nft_rcv_nl_event+0xc25/0xdb0 net/netfilter/nf_tables_api.c:12187
notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85
blocking_notifier_call_chain+0x6a/0x90 kernel/notifier.c:380
netlink_release+0x123b/0x1ad0 net/netlink/af_netlink.c:761
__sock_release net/socket.c:662 [inline]
sock_close+0xc3/0x240 net/socket.c:1455
Restrict set clone to the flush set command in the preparation phase.
Add NFT_ITER_UPDATE_CLONE and use it for this purpose, update the rbtree
and pipapo backends to only clone the set when this iteration type is
used.
As for the existing NFT_ITER_UPDATE type, update the pipapo backend to
use the existing set clone if available, otherwise use the existing set
representation. After this update, there is no need to clone a set that
is being deleted, this includes bound anonymous set.
An alternative approach to NFT_ITER_UPDATE_CLONE is to add a .clone
interface and call it from the flush set path.
Security readout for executives and security teams
Plain-English summary
A Linux kernel nftables flaw can trigger an internal warning when memory allocation fails during ruleset cleanup. The available record does not establish data compromise, privilege escalation, remote reachability, or service disruption. Impact and severity remain insufficiently characterized.
Executive priority
Treat this as a patch-verification item, not an emergency incident, unless vendor analysis identifies stronger impact. Promptly determine affected kernel deployments and schedule supported updates. Escalate if kernel warnings, instability, or new exploitation evidence appears.
Technical view
Fault injection caused allocation failure and a WARN in nft_map_deactivate during nftables table release. The correction restricts set cloning to flush-set preparation, introduces NFT_ITER_UPDATE_CLONE, and adjusts rbtree and pipapo handling to avoid unnecessary cloning during deletion.
Likely exposure
Exposure is limited to Linux kernels identified as affected in the CVE record and code paths using nf_tables. Distribution backports may change actual status. The sources do not specify required privileges, configurations, or whether the issue is remotely reachable.
Exploitation context
The CVE is not listed as KEV, and the supplied sources provide no evidence of active exploitation or a public weaponized exploit. The observed failure came from syzbot fault injection, which does not by itself demonstrate practical exploitation.
Researcher notes
The reproducer involved GFP_KERNEL allocation failure followed by a warning during netlink socket closure and table release. The patch changes cloning semantics for flush versus delete/update paths. The source bundle lacks CVSS, CWE classification, concrete security impact, exploit prerequisites, and reproducibility details suitable for risk quantification.
Mitigation direction
Apply a vendor-supported kernel containing the referenced fix or an equivalent distribution backport.
Review Linux distribution advisories and package changelogs for CVE-2026-23385 coverage.
Prioritize systems using nftables after confirming their installed kernels are affected.
Use vendor guidance for interim controls if an updated kernel is unavailable.
Validation and detection
Inventory running kernel versions across Linux hosts and compare them with vendor CVE status.
Check package changelogs for CVE-2026-23385 or the referenced stable-kernel commits.
Confirm updated hosts booted into the remediated kernel, not merely installed it.
Monitor kernel logs for nf_tables warnings while avoiding fault-injection testing on production systems.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-23385 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
5Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Mar 25, 2026, 10:28 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.