# CVE-2026-23111 — Linux

> As of 2026-09-08, CVE-2026-23111 is a HIGH-severity vulnerability in Linux, CVSS v3.1 7.8, EPSS 0.5% (40.9th percentile). Threadlinqs Intelligence links 1 tracked threat campaign to CVE-2026-23111, most recently “CVE-2026-23111: Linux Kernel nf_tables Use-After-Free Enables Local Privilege Escalation and Container Escape”.

**Last updated:** 2026-09-08

## What is CVE-2026-23111?

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix inverted genmask check in nft_map_catchall_activate() nft_map_catchall_activate() has an inverted element activity check compared to its non-catchall counterpart nft_mapelem_activate() and compared to what is logically required. nft_map_catchall_activate() is called from the abort path to re-activate catchall map elements that were deactivated during a failed transaction. It should skip elements that are already active (they don't need re-activation) and process elements that are inactive (they need to be restored). Instead, the current code does the opposite: it skips inactive elements and processes active ones. Compare the non-catchall activate callback, which is correct: nft_mapelem_activate(): if (nft_set_elem_active(ext, iter->genmask)) return 0; /* skip active, process inactive */ With the buggy catchall version: nft_map_catchall_activate(): if (!nft_set_elem_active(ext, genmask)) continue; /* skip inactive, process active */ The consequence is that when a DELSET operation is aborted, nft_setelem_data_activate() is never called for the catchall element. For NFT_GOTO verdict elements, this means nft_data_hold() is never called to restore the chain->use reference count. Each abort cycle permanently decrements chain->use. Once chain->use reaches zero, DELCHAIN succeeds and frees the chain while catchall verdict elements still reference it, resulting in a use-after-free. This is exploitable for local privilege escalation from an unprivileged user via user namespaces + nftables on distributions that enable CONFIG_USER_NS and CONFIG_NF_TABLES. Fix by removing the negation so the check matches nft_mapelem_activate(): skip active elements, process inactive ones.

The record classifies CVE-2026-23111 under weakness classes [CWE-416](https://intel.threadlinqs.com/cwe/CWE-416), [CWE-672](https://intel.threadlinqs.com/cwe/CWE-672). Its CVSS v3 base vector states that the flaw requires local access to the host, needs low-privilege credentials, needs no user interaction, and has high impact on confidentiality, integrity, availability. 1 affected-product entry is recorded, across 1 vendor, listed below. The identifier was first published 239 days ago.

## Severity and exploitation probability

- **CVSS v3.1 base score:** 7.8 — HIGH (`CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H`)
- **EPSS (FIRST):** 0.5% probability of exploitation in the next 30 days, higher than 40.9% of all scored CVEs
- **CISA KEV:** Not listed in the CISA Known Exploited Vulnerabilities catalog
- **Threadlinqs priority:** 7.5/10 — a Threadlinqs composite of the CVSS base score, the EPSS percentile and public exploit availability
- **Published:** 2026-02-13, last modified 2026-09-08

## Is CVE-2026-23111 being exploited?

Weaponised exploit code for CVE-2026-23111 is publicly available. 11 public proof-of-concept repositories are tracked for this identifier. It currently carries a trending score of 23 in the Threadlinqs vulnerability feed.

- [Knz-source/CVE-2026-23111-POC-noddlenpottato](https://github.com/Knz-source/CVE-2026-23111-POC-noddlenpottato) (github)
- [Baba01hacker666/CVE-2026-23111](https://github.com/Baba01hacker666/CVE-2026-23111) (github)
- [0xBlackash/CVE-2026-23111](https://github.com/0xBlackash/CVE-2026-23111) (github)
- [ishankaru/CVE-2026-23111-nftables-lab](https://github.com/ishankaru/CVE-2026-23111-nftables-lab) (github)
- [bakano98/cve-2026-23111-poc](https://github.com/bakano98/cve-2026-23111-poc) (github)
- [vrtlbob/Linux-Kernel-Vulnerabilities-CVE-2026-23111](https://github.com/vrtlbob/Linux-Kernel-Vulnerabilities-CVE-2026-23111) (github)
- [HORKimhab/CVE-2026-23111](https://github.com/HORKimhab/CVE-2026-23111) (github)
- [criann/check-cve-2026-23111](https://github.com/criann/check-cve-2026-23111) (github)

## Affected products and versions

- [Linux](https://intel.threadlinqs.com/vendors/linux): Linux

## How to fix CVE-2026-23111

No vendor patch reference has been recorded for CVE-2026-23111 in the tracked sources. Follow the references below for a fix, and treat the products listed above as exposed until the vendor states otherwise.

## Threat activity tracking CVE-2026-23111

1 tracked threat in the Threadlinqs corpus references CVE-2026-23111, either in the campaign’s CVE list or as an indicator on the campaign record.

- [CVE-2026-23111: Linux Kernel nf_tables Use-After-Free Enables Local Privilege Escalation and Container Escape](https://intel.threadlinqs.com/threat/TL-2026-0731) — HIGH · 2026-06-09

## Sources

Enriched from CVE.org, FIRST EPSS, GitHub Security Advisories, public proof-of-concept repositories. Last verified by Threadlinqs on 2026-10-10.

**Other references**

- [git.kernel.org](https://git.kernel.org/stable/c/8c760ba4e36c750379d13569f23f5a6e185333f5)
- [git.kernel.org (b9b6573421de51829f7ec1cce76d85f5f6fbbd7f)](https://git.kernel.org/stable/c/b9b6573421de51829f7ec1cce76d85f5f6fbbd7f)
- [git.kernel.org (42c574c1504aa089a0a142e4c13859327570473d)](https://git.kernel.org/stable/c/42c574c1504aa089a0a142e4c13859327570473d)
- [git.kernel.org (1444ff890b4653add12f734ffeffc173d42862dd)](https://git.kernel.org/stable/c/1444ff890b4653add12f734ffeffc173d42862dd)
- [git.kernel.org (8b68a45f9722f2babe9e7bad00aa74638addf081)](https://git.kernel.org/stable/c/8b68a45f9722f2babe9e7bad00aa74638addf081)

_Showing 5 of 6 recorded references._

Canonical: https://intel.threadlinqs.com/cve/CVE-2026-23111
Full detection coverage and IOCs for threats exploiting CVE-2026-23111 via the Threadlinqs MCP server (Purple tier): https://intel.threadlinqs.com/mcp
