CVE-2026-90099

UNRATEDCVSS · not yet scoredTrending — 3 sources updated this week
—
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • No CVSS published and no exploitation signals yet
CISA-KEV: Not listedEPSS PROB: 0.2%CVSS v2: —Exploit: None knownExposed services: Not assessed

No fix is confirmed yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for the fix.

In the Linux kernel, the following vulnerability has been resolved:

net/sched: account classifier filter allocations to memcg

Allocations in the tc classifier *_change() paths (filter objects, per-CPU counters, and per-filter aux data) use plain GFP_KERNEL without __GFP_ACCOUNT, allowing unprivileged users to pin kernel memory outside memcg charging. The shared tcf_exts_init_ex() action array allocation in cls_api.c was also uncharged; this patch closes it along with the per-classifier filter-object/percpu/aux allocations that remain unaccounted.

Add GFP_KERNEL_ACCOUNT to:

  • the shared tcf_exts_init_ex() action array (cls_api.c), common to every
filter of every classifier (32 pointers, 256 bytes);
  • the filter-object, per-CPU-counter, and per-filter aux allocations in
cls_basic, cls_bpf, cls_cgroup, cls_flow, cls_flower, cls_fw, cls_matchall, cls_route and cls_u32;
  • the u32_init_knode() replace-path knode allocation (cls_u32.c), which
allocates the same struct tc_u_knode + sel.keys on every replace of an existing knode and was missed by the create-path-only conversion.

Also fix the cls_basic error path: basic_change() inserts fnew into the IDR before allocating the per-CPU counter. If alloc_percpu() fails the errout path kfree'd fnew without idr_remove, leaving a dangling pointer in the IDR. With GFP_KERNEL_ACCOUNT the percpu alloc becomes failable on demand (memcg at memory.max), making the dead path attacker-reachable and burning the handle permanently. Add the idr_remove on the percpu failure path, matching the basic_set_parms failure-path pattern.

Note: [email protected] provided a poc for basic_cls, but it was easy to extend to the other classifiers.

Conditions to recreate the bug:

  • CONFIG_NET_SCHED, CONFIG_NET_CLS_* (the classifier being used),
CONFIG_NET_CLS_ACT, CONFIG_MEMCG, CONFIG_USER_NS, CONFIG_NET_NS.
  • Unprivileged user in a fresh user+network namespace (unshare -Urn),
or root with CAP_NET_ADMIN.
  • Create a large number of tc filters (e.g. tc filter add dev lo
ingress ... ...) while watching a memcg-limited cgroup: system slab grows far faster than memory.current, pinning kernel memory outside memcg charging.

CVSS v3
—
EchelonGraph score
Not yet assessedNo source has published severity data for this CVE yet — no CVSS score from NVD or a CNA, no GitHub advisory, and it is not in CISA KEV. This is not a rating of zero; we cannot assess it yet.
EG Score
—
EG Risk
—
EPSS PROB
0.2%
EPSS %ILE
8th
KEV
Not listed

Published

September 17, 2026

Last Modified

September 17, 2026

Vendor Advisories for CVE-2026-90099(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Affected Packages

(3 across 3 ecosystems)
Debian:12(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.1.106-1 ... 7.2~rc7-1~exp1 (358 versions)
  • every version on: no fix on record
—
Debian:13(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.12.100-1 ... 7.2~rc7-1~exp1 (181 versions)
  • every version on: no fix on record
—
Debian:14(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.12.100-1 ... 7.2~rc7-1~exp1 (178 versions)
  • every version up to 7.2.6-1: fixed in 7.2.6-1
—

Data Freshness Timeline

(refreshed 8× in last 7d / 22× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-10-04 23:22 UTCEPSS rescore
  2. 2026-10-02 19:56 UTCGHSA enrichment
  3. 2026-10-01 19:51 UTCEPSS rescore
  4. 2026-09-30 15:04 UTCEPSS rescore
  5. 2026-09-29 19:42 UTCEG score recompute
  6. 2026-09-29 19:42 UTCGHSA enrichment
  7. 2026-09-28 13:52 UTCEPSS rescore
  8. 2026-09-28 13:52 UTCEPSS rescore
  9. 2026-09-27 13:49 UTCEPSS rescore
  10. 2026-09-26 19:26 UTCGHSA enrichment
  11. 2026-09-26 15:59 UTCEPSS rescore
  12. 2026-09-24 14:04 UTCEPSS rescore
  13. 2026-09-23 19:11 UTCGHSA enrichment
  14. 2026-09-23 17:54 UTCEPSS rescore
  15. 2026-09-22 16:01 UTCEPSS rescore
  16. 2026-09-21 21:09 UTCEPSS rescore
  17. 2026-09-20 18:06 UTCEG score recompute
  18. 2026-09-20 18:06 UTCGHSA enrichment
  19. 2026-09-18 19:28 UTCEPSS rescore
  20. 2026-09-17 17:23 UTCNVD update
  21. 2026-09-17 16:50 UTCEG score recompute
  22. 2026-09-17 16:19 UTCMITRE cvelistV5first tracked

Frequently asked(4)

What is CVE-2026-90099?
CVE-2026-90099 is a publicly disclosed vulnerability published on September 17, 2026. In the Linux kernel, the following vulnerability has been resolved: net/sched: account classifier filter allocations to memcg Allocations in the tc classifier *_change() paths (filter objects, per-CPU counters, and per-filter aux data) use plain GFP_KERNEL without GFP_ACCOUNT, allowing unprivileged…
When was CVE-2026-90099 disclosed?
CVE-2026-90099 was first published on September 17, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-90099 actively exploited?
CVE-2026-90099 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.2% probability of exploitation in the next 30 days (8th percentile of EPSS-scored CVEs).
How do I remediate CVE-2026-90099?
No fix for CVE-2026-90099 is confirmed yet. Until one is published, restrict network exposure of the affected system or apply the vendor's mitigation — for example, keep it off the internet or limit it to trusted networks — and watch the vendor's advisory for the fix. The vendor advisories EchelonGraph has for CVE-2026-90099 are linked in the Vendor Advisories panel on this page.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-90099

Explore →

Is Your Infrastructure Affected by CVE-2026-90099?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.