CVE-2026-23231 Details
Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix use-after-free in nf_tables_addchain() nf_tables_addchain() publishes the chain to table->chains via list_add_tail_rcu() (in nft_chain_add()) before registering hooks. If nf_tables_register_hook() then fails, the error path calls nft_chain_del() (list_del_rcu()) followed by nf_tables_chain_destroy() with no RCU grace period in between. This creates two use-after-free conditions: 1) Control-plane: nf_tables_dump_chains() traverses table->chains under rcu_read_lock(). A concurrent dump can still be walking the chain when the error path frees it. 2) Packet path: for NFPROTO_INET, nf_register_net_hook() briefly installs the IPv4 hook before IPv6 registration fails. Packets entering nft_do_chain() via the transient IPv4 hook can still be dereferencing chain->blob_gen_X when the error path frees the chain. Add synchronize_rcu() between nft_chain_del() and the chain destroy so that all RCU readers -- both dump threads and in-flight packet evaluation -- have finished before the chain is freed.
A use-after-free vulnerability has been identified in the Linux kernel's netfilter component, specifically within the nf_tables subsystem. This issue arises in the nf_tables_addchain() function, which improperly manages the lifecycle of chain objects during the addition process. When nf_tables_register_hook() fails after a chain has been added to the table's chain list, the error handling routine removes the chain from the list and destroys it without allowing for a proper cleanup period. This mismanagement creates two distinct use-after-free scenarios: one in the control plane, where a concurrent chain dump can access a freed chain, and another in the packet path, where packets can still reference a chain that has been deallocated. The vulnerability affects several versions of the Linux kernel.
The vulnerability has been addressed by adding a synchronize_rcu() call between nft_chain_del() and the chain destruction process. This ensures that all RCU readers have completed their operations before the chain is freed, preventing the use-after-free condition.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
CISA-ADP
Assessed Jun 16, 2026References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-416 | Use After Free | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 3.16, < 6.1.165 >= 6.2, < 6.6.128 >= 6.7, < 6.12.75 >= 6.13, < 6.18.14 >= 6.19, < 6.19.4 |
CPE
Remediation
| |
Change History
9 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jul 14, 2026 | CVE Modified | siemens-SADP |
| Jun 17, 2026 | CVE Modified | kernel.org |
| Jun 17, 2026 | CVE Modified | siemens-SADP |
| Jun 17, 2026 | CVE Modified | CISA-ADP |
| Jun 2, 2026 | CVE Modified | siemens-SADP |
| Apr 2, 2026 | CVE Modified | kernel.org |
| Mar 17, 2026 | Initial Analysis | [email protected] |
| Mar 4, 2026 | CVE Modified | kernel.org |
| Mar 4, 2026 | New CVE Received | kernel.org |