Important CVSS 7 EPSS 0.00198 🔬 Patch diffed 2026-06 archive

Executive Summary

Concurrent execution using shared resource with improper synchronization ('race condition') in Function Discovery Service (fdwsd.dll) allows an authorized attacker to elevate privileges locally.

Overview

7
CVSS HIGH
Important
MS Severity
Not Exploited
MS Exploit Status
Less Likely
MS Exploit Likelihood
Category Elevation of Privilege
Released Jun 9 2026
Last Updated Jun 9 2026
Publicly Disclosed No
CISA KEV Not Listed
Known Exploits None Known
EPSS Score 0.00198 — 0.0982 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.00198
probability of exploitation in the next 30 days
0.0982 percentile - updated 2026-08-14
View on FIRST.org

Affected Products

30 affected products
Product KB Article Severity Impact Restart Required
Windows 10 Version 1607 for 32-bit Systems 5094122 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1607 for x64-based Systems 5094122 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1809 for 32-bit Systems 5094123 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 1809 for x64-based Systems 5094123 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for 32-bit Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for ARM64-based Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for x64-based Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for 32-bit Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for ARM64-based Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for x64-based Systems 5094127 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for ARM64-based Systems 5093998 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for x64-based Systems 5093998 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for ARM64-based Systems 5094126 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for x64-based Systems 5094126 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for ARM64-based Systems 5094126 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for x64-based Systems 5094126 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 26H1 for ARM64-based Systems 5095051 (Security Update) Important Elevation of Privilege Yes
Windows 11 version 26H1 for x64-based Systems 5095051 (Security Update) Important Elevation of Privilege Yes
Windows Server 2012 5094042 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 (Server Core installation) 5094042 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 R2 5094041 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2012 R2 (Server Core installation) 5094041 (Monthly Rollup) Important Elevation of Privilege Yes
Windows Server 2016 5094122 (Security Update) Important Elevation of Privilege Yes
Windows Server 2016 (Server Core installation) 5094122 (Security Update) Important Elevation of Privilege Yes
Windows Server 2019 5094123 (Security Update) Important Elevation of Privilege Yes
Windows Server 2019 (Server Core installation) 5094123 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 5094128 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 (Server Core installation) 5094128 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 5094125 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 (Server Core installation) 5094125 (Security Update) Important Elevation of Privilege Yes

Patches

10 patches
Article Type Restart
5094122 Security Update Yes
5094123 Security Update Yes
5094127 Security Update Yes
5093998 Security Update Yes
5094126 Security Update Yes
5095051 Security Update Yes
5094042 Monthly Rollup Yes
5094041 Monthly Rollup Yes
5094128 Security Update Yes
5094125 Security Update Yes

Patch Diff

ghidriff · fdwsd.dll (KB5094126)

Race condition (CWE-362) leading to use-after-free (CWE-416) in the Windows Function Discovery WSD provider fdwsd.dll CWSDiscoveryProvider, local EoP to SYSTEM (AC:H race). fdwsd.dll implements the WS-Discovery provider for the Function Discovery service; a CWSDiscoveryProvider object holds shared state (including a client certificate context and discovery members) that WSD discovery callbacks (IsInterestedInDevice / IsInterestedInMex) access on discovery events. PRE: access to that shared provider state was not synchronized, so a discovery callback could use the provider's state (or its certificate context) concurrently with another thread modifying it or with the provider being destroyed - a race that yields a use-after-free of the provider state / certificate. Because the service runs as SYSTEM/LocalService and the provider is driven by network-triggered discovery events, winning the race is a local EoP primitive. Diff of fdwsd.dll 10.0.26100.8521 -> .8655 (Jun 9 2026, KB5094126) confirms the fix: CWSDiscoveryProvider gains a CRITICAL_SECTION member (at object+0x128); the destructor now nulls the shared member (+0x98) under the lock, IsInterestedInDevice/IsInterestedInMex take the critical section around access to the shared state, and GetClientCertificate returns a private duplicate via CertDuplicateCertificateContext under the lock instead of handing out the shared certificate pointer - serializing access and giving callers their own reference so the shared object cannot be freed while in use.

Pre-patch version 10.0.26100.8521 Download
Post-patch version 10.0.26100.8655 Download
Function Address Change Note
CWSDiscoveryProvider::~CWSDiscoveryProvider code change code (teardown under critical section) Post: EnterCriticalSection(this+0x128); nulls the shared member (this+0x98)=0; LeaveCriticalSection - so teardown can't race a concurrent callback.
CWSDiscoveryProvider::IsInterestedInDevice / IsInterestedInMex code change code (callback access serialized) Post: take the critical section (this+0x128) around access to the shared provider state during discovery-event evaluation.
CWSDiscoveryProvider::GetClientCertificate code change code (returns a duplicated cert under lock) Post: under the critical section, returns CertDuplicateCertificateContext(...) so callers get their own reference instead of the shared certificate context.
CRITICAL_SECTION @ +0x128 struct change added New per-provider lock serializing destructor and discovery-callback access to shared state.
View full diff report View RCA report

Attack Path

WSD discovery callbacks use a CWSDiscoveryProvider's shared state concurrently with its teardown, causing a UAF

Attack path for CVE-2026-42836 WSD discovery callbacks use a CWSDiscoveryProvider's shared state concurrently with its teardown, causing a UAF 01 — ENTRY A CWSDiscoveryProvider handles WS-Discovery events for Function Discovery fdwsd.dll (SYSTEM/LocalService) invokes IsInterestedInDevice/IsInterestedInMex on discovery events over shared provider state. AV:L/PR:L/AC:H (race). 02 — CONTROLLED INPUT Drives discovery callbacks to race provider teardown/modification Callbacks access the shared state (and certificate context) with no lock. 03 — MISSING CHECK Unsynchronized access races destruction -> use-after-free (CWE-362 -> CWE-416) A callback uses provider state/certificate while another thread frees/destroys it. 04 — PATH Freed provider state/certificate is dereferenced The race leaves a callback operating on freed memory in the service. 05 — PRIMITIVE Use-after-free in the discovery service -> EoP to SYSTEM The Jun 2026 fix adds a CRITICAL_SECTION (+0x128), serializes callbacks/teardown, and duplicates the certificate for callers.

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.

Exploits & PoC

Detection Rules

Acknowledgments

AIフィジカルインターフェイス二号機