Important CVSS 7 EPSS 0.0032 🔬 Patch diffed 2026-04 archive

Executive Summary

Use after free in Windows Common Log File System Driver allows an authorized attacker to elevate privileges locally.

Overview

7
CVSS HIGH
Important
MS Severity
Not Exploited
MS Exploit Status
More Likely
MS Exploit Likelihood
Category Elevation of Privilege
Released Apr 14 2026
Last Updated Apr 14 2026
Publicly Disclosed No
CISA KEV Not Listed
Known Exploits None Known
EPSS Score 0.0032 — 0.24633 percentile
NVD CVSS 7 HIGH — matches MSRC

CVSS Vector

CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
ATTACK VECTOR
Local
ATTACK COMPLEXITY
High
PRIVILEGES REQUIRED
Low
USER INTERACTION
None
SCOPE
Unchanged
CONFIDENTIALITY
High
INTEGRITY
High
AVAILABILITY
High
EXPLOIT CODE MATURITY
Unproven
REMEDIATION LEVEL
Official Fix
REPORT CONFIDENCE
Confirmed
Temporal Score: 6.1

EPSS Score

0.0032
probability of exploitation in the next 30 days
0.24633 percentile - updated 2026-08-14
View on FIRST.org

Affected Products

31 affected products
Product KB Article Severity Impact Restart Required
Windows 10 Version 1607 for 32-bit Systems 5082198 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1607 for x64-based Systems 5082198 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1809 for 32-bit Systems 5082123 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1809 for x64-based Systems 5082123 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for 32-bit Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for ARM64-based Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for x64-based Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for 32-bit Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for ARM64-based Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for x64-based Systems 5082200 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for ARM64-based Systems 5082052 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for x64-based Systems 5082052 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for ARM64-based Systems 5083769 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for x64-based Systems 5083769 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for ARM64-based Systems 5083769 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for x64-based Systems 5083769 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 26H1 for ARM64-based Systems 5083768 (Security Update) Important Elevation of Privilege Yes
Windows 11 version 26H1 for x64-based Systems 5083768 (Security Update) Important Elevation of Privilege Yes
Windows Server 2012 5082127 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 (Server Core installation) 5082127 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 R2 5082126 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 R2 (Server Core installation) 5082126 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2016 5082198 (Security Update) Important Elevation of Privilege Yes
Windows Server 2016 (Server Core installation) 5082198 (Security Update) Important Elevation of Privilege Yes
Windows Server 2019 5082123 (Security Update) Important Elevation of Privilege Yes
Windows Server 2019 (Server Core installation) 5082123 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 5082142 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 (Server Core installation) 5082142 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022, 23H2 Edition (Server Core installation) 5082060 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 5082063 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 (Server Core installation) 5082063 (Security Update) Important Elevation of Privilege Yes

Patches

11 patches
Article Type Restart
5082198 Security Update Yes
5082123 Security Update Yes
5082200 Security Update Yes
5082052 Security Update Yes
5083769 Security Update Yes
5083768 Security Update Yes
5082127 Monthly Rollup Yes
5082126 Monthly Rollup Yes
5082142 Security Update Yes
5082060 Security Update Yes
5082063 Security Update Yes

Patch Diff

ghidriff · clfs.sys (KB5083769)

Reference-count lifetime-inversion use-after-free (CWE-416) in the Windows CLFS driver clfs.sys CClfsManagedLog::AddNewClient. The function creates a COM-style reference-counted CClfsManagedLogClient, and pre-patch did: allocate + store in *a5, call Initialize (vtable+32) which registers the object EXTERNALLY (kernel structures / observer chains, e.g. InstallLogObserver), then finally AddRef (vtable+0). Because the object is published before any reference is held, its refcount is still 0 when other threads can find it; a concurrent Release drops the count below zero and frees the object, and the original thread's later AddRef touches freed memory -> UAF. The failure path also called the destructor directly (vtable+80, bFinal=1) rather than Release, which only balances the pre-patch ordering. Diff of clfs.sys 10.0.26100.8115 -> .8246 (Apr 14 2026, KB5083769) confirms AddNewClient is the changed function and gains a new CFR gate: gated behind Feature_1664551224, AddRef is moved BEFORE Initialize, and the failure path now calls Release (vtable+8) to balance the earlier AddRef; the list-insertion check became an explicit guard (if (*v18 != i) __fastfail(3u)) and control flow consolidated to a single LABEL_31 exit so the managed-log mutex is released once. All managed-log clients (CreateLogFile) reach this path. Note: our diff shows Feature_1664551224, differing from the circulated screenshots' Feature_1932986680 (build/arch difference); the AddRef-before-Initialize reorder is identical.

Pre-patch version 10.0.26100.8115 Download
Post-patch version 10.0.26100.8246 Download
Function Address Change Note
CClfsManagedLog::AddNewClient code change code (AddRef reordered before Initialize; Release on failure; CFR-gated) Pre: alloc -> Initialize(vtable+32, registers externally) -> AddRef(vtable+0); refcount 0 during external exposure -> concurrent Release frees object -> later AddRef is UAF; failure path called destructor directly (vtable+80,bFinal=1). Post (Feature_1664551224 enabled): AddRef(vtable+0) first, then Initialize; on failure Release(vtable+8) to balance; list-insert guard `if (*v18 != i) __fastfail(3u)`; single LABEL_31 exit (mutex released once).
Feature_1664551224 gate added (CFR gate) CFR flag gating the AddRef-first ordering + Release-on-failure fix; the original ordering still ships when disabled.
View full diff report View RCA report

Attack Path

AddNewClient registers a CLFS managed-log client externally before taking a reference, so a racing Release frees it under the creating thread

Attack path for CVE-2026-32070 AddNewClient registers a CLFS managed-log client externally before taking a reference, so a racing Release frees it under the creating thread 01 — ENTRY Local low-priv caller reaches CClfsManagedLog::AddNewClient (via CreateLogFile) clfs.sys creates a reference-counted CClfsManagedLogClient for every managed-log client. AV:L/PR:L, AC:H (race). 02 — CONTROLLED INPUT AddNewClient allocates the client and calls Initialize before AddRef Initialize (vtable+32) registers the object in externally reachable structures / observer chains while the refcount is still 0. 03 — PATH A second thread discovers the registered client and calls Release With refcount 0, Release drops the count below zero and frees the object. 04 — MISSING CHECK Object exposed externally before a reference is held (CWE-416 lifetime inversion) The creating thread still intends to AddRef and use the object, but it has already been freed by the concurrent Release. 05 — PRIMITIVE Original thread's AddRef touches freed memory -> UAF -> EoP The belated AddRef (and further use) operates on freed pool. The Apr 2026 fix (Feature_1664551224) moves AddRef before Initialize and uses Release on the failure path.

Derived from the patch delta: the checks added by the vendor identify which fields crossed a trust boundary unvalidated. Reachability and privilege are taken from the call chain in the RCA report.

Known Exploits