Skip to main content

Linux Kernel EUVDEUVD-2026-76458

| CVE-2026-89547 HIGH
2026-09-11 Linux GHSA-qf5h-qr5q-g3pc
8.1
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
8.1 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
6.0 MEDIUM

Local root required under memory pressure (AV:L/AC:H/PR:H); primary impact is silent kernel memory corruption (I:H) and instability (A:H), with minor info leak via pool_stats (C:L).

3.1 AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:H/A:H
4.0 AV:L/AC:H/AT:P/PR:H/UI:N/VC:L/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

6
Metadata Corrected
Sep 13, 2026 - 08:40 vuln.today
tag: Code Injection removed
Analysis Generated
Sep 13, 2026 - 08:39 vuln.today
CVSS changed
Sep 13, 2026 - 07:22 NVD
8.1 (HIGH)
Patch available
Sep 11, 2026 - 21:18 EUVD
CVE Published
Sep 11, 2026 - 19:44 cve.org
HIGH 8.1
CVE Published
Sep 11, 2026 - 19:44 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

SUNRPC: Check svc pool percpu counter allocation

__svc_create() initializes three per-pool percpu_counter stats and ignores every return value. On SMP, percpu_counter_init() fails when __alloc_percpu_gfp() cannot satisfy the allocation, leaving the failed counter with fbc->counters == NULL and its embedded raw_spinlock_t, list_head, and count never initialized. __svc_create() returns the half-constructed svc_serv to nfsd, lockd, or the NFS callback service anyway.

Once that service is live, the hot-path increments in svc_xprt_enqueue(), svc_handle_xprt(), and svc_pool_wake_idle_thread() reach a counter whose backing pointer is NULL. The pointer is a per-cpu offset, so the access does not fault: it resolves to offset zero of the current CPU's per-cpu area and silently corrupts whatever variable lives there. A /proc/fs/nfsd/pool_stats read walks the same NULL per-cpu storage and returns garbage, and on CONFIG_DEBUG_SPINLOCK or lockdep it splats on the never-initialized lock.

Creating the broken service requires a percpu allocation failure during RPC server startup, so it is reachable only by a local administrator under memory pressure or fault injection; a remote peer cannot induce the bad state on its own.

Check each percpu_counter_init() return value in __svc_create() and fail when an allocation fails, unwinding the counters already set up in the current pool and in every pool initialized before it. A discrete percpu_counter_destroy() per counter at teardown frees each per-cpu allocation exactly once.

AnalysisAI

Silent kernel memory corruption in the Linux kernel SUNRPC subsystem arises when percpu counter allocation fails undetected during RPC service creation. When percpu_counter_init() fails inside __svc_create(), the function returns a half-initialized svc_serv structure to nfsd, lockd, or the NFS callback service without error; subsequent hot-path increments in svc_xprt_enqueue(), svc_handle_xprt(), and svc_pool_wake_idle_thread() dereference the NULL per-cpu pointer, which resolves to offset zero of the running CPU's per-cpu area and silently overwrites arbitrary kernel memory. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Persist
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Exploitation requires all of the following: (1) local administrator (root) privileges to start or restart the NFS server, lockd, or NFS RPC callback service; (2) a multi-processor (SMP) kernel where per-pool percpu_counter allocations are made individually per pool; (3) a memory allocation failure in `percpu_counter_init()` at the exact moment `__svc_create()` is running - achievable through genuine memory pressure or via kernel fault injection (`CONFIG_FAULT_INJECTION`). … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The input CVSS vector (AV:N/AC:H/PR:N/UI:N, score 8.1) directly contradicts the CVE description, which explicitly states the flaw is 'reachable only by a local administrator under memory pressure or fault injection; a remote peer cannot induce the bad state on its own.' The correct vector is AV:L/AC:H/PR:H, substantially lowering effective risk. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Upgrade to a patched kernel: 6.12.109, 6.18.50, 7.2.4, or any build from 7.3-rc1 onward. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours: Inventory all Linux systems running NFS services (nfsd, lockd, NFS callback service) and confirm availability of vendor-released patches for your kernel versions. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

EUVD-2026-76458 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy