Important CVSS 9.8 EPSS 0.0061 🔬 Patch diffed 2026-07 archive

Executive Summary

Use after free in Windows SMB Server Network Transport Driver (srvnet.sys) allows an unauthorized attacker to execute code over a network.

Overview

9.8
CVSS CRITICAL
Important
MS Severity
Not Exploited
MS Exploit Status
Exploitation Unlikely
MS Exploit Likelihood
Category Remote Code Execution
Released Jul 14 2026
Last Updated Jul 14 2026
Publicly Disclosed No
CISA KEV Not Listed
Known Exploits None Known
EPSS Score 0.0061 — 0.46185 percentile
NVD CVSS 9.8 CRITICAL — differs from MSRC

CVSS Vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
ATTACK VECTOR
Network
ATTACK COMPLEXITY
Low
PRIVILEGES REQUIRED
None
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.5

EPSS Score

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

Affected Products

27 affected products
Product KB Article Severity Impact Restart Required
Windows 10 Version 1607 for 32-bit Systems 5099535 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 1607 for x64-based Systems 5099535 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 1809 for 32-bit Systems 5099538 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 1809 for x64-based Systems 5099538 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 21H2 for 32-bit Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 21H2 for ARM64-based Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 21H2 for x64-based Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 22H2 for 32-bit Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 22H2 for ARM64-based Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 10 Version 22H2 for x64-based Systems 5099539 (Security Update) Important Remote Code Execution Yes
Windows 11 Version 24H2 for ARM64-based Systems 5101650 (Security Update) Important Remote Code Execution Yes
Windows 11 Version 24H2 for x64-based Systems 5101650 (Security Update) Important Remote Code Execution Yes
Windows 11 Version 25H2 for ARM64-based Systems 5101650 (Security Update) Important Remote Code Execution Yes
Windows 11 Version 25H2 for x64-based Systems 5101650 (Security Update) Important Remote Code Execution Yes
Windows 11 Version 26H1 for ARM64-based Systems 5101649 (Security Update) Important Remote Code Execution Yes
Windows 11 version 26H1 for x64-based Systems 5101649 (Security Update) Important Remote Code Execution Yes
Windows Server 2012 5099445 (Monthly Rollup) Important Remote Code Execution Yes
Windows Server 2012 (Server Core installation) 5099445 (Monthly Rollup) Important Remote Code Execution Yes
Windows Server 2012 R2 5099444 (Monthly Rollup) Important Remote Code Execution Yes
Windows Server 2012 R2 (Server Core installation) 5099444 (Monthly Rollup) Important Remote Code Execution Yes
Windows Server 2016 5099535 (Security Update) Important Remote Code Execution Yes
Windows Server 2016 (Server Core installation) 5099535 (Security Update) Important Remote Code Execution Yes
Windows Server 2019 5099538 (Security Update) Important Remote Code Execution Yes
Windows Server 2019 (Server Core installation) 5099538 (Security Update) Important Remote Code Execution Yes
Windows Server 2022 5099540 (Security Update) Important Remote Code Execution Yes
Windows Server 2025 5099536 (Security Update) Important Remote Code Execution Yes
Windows Server 2025 (Server Core installation) 5099536 (Security Update) Important Remote Code Execution Yes

Patches

9 patches
Article Type Restart
5099535 Security Update Yes
5099538 Security Update Yes
5099539 Security Update Yes
5101650 Security Update Yes
5101649 Security Update Yes
5099445 Monthly Rollup Yes
5099444 Monthly Rollup Yes
5099540 Security Update Yes
5099536 Security Update Yes

Patch Diff

ghidriff · srvnet.sys (KB5101650)

Use-after-free (CWE-416) in the Windows SMB Server Network Transport driver srvnet.sys endpoint/connection lifecycle, unauthenticated remote code execution over the network. srvnet.sys is the SMB server's kernel network transport; SMB endpoints/connections are torn down by SrvNetTdiCloseConnection / SrvNetCloseConnectionWithLock / SrvNetDeregisterClient while network data is delivered to them by the TDI receive handlers (SrvNetTdiReceiveHandler / SrvNetCommonReceiveHandler / SrvNetTdiReceiveCompletion). PRE: an SMB endpoint object could be closed and freed while a receive handler was still processing an in-flight receive on it - a race between connection teardown and network receive that yields a use-after-free of the endpoint. Because srvnet processes attacker-supplied SMB traffic over the network without authentication, the freed-object reuse is a remote code-execution primitive (AV:N; AC:H reflects winning the race). Diff of srvnet.sys 10.0.26100.8521 -> .8875 (Jul 14 2026, KB5101650) confirms the fix: gated behind CFR flag Feature_3107684665, the endpoint gains rundown protection (a rundown ref at endpoint+0x288) - SrvNetAllocateEndpointCommon calls ExInitializeRundownProtection on the new endpoint, the receive handlers ExAcquireRundownProtection before using the endpoint (and ExReleaseRundownProtection after), and SrvNetTdiCloseConnection calls ExWaitForRundownProtectionRelease + ExRundownCompleted before teardown - so the endpoint cannot be freed while a receive is in flight, closing the race/UAF.

Pre-patch version 10.0.26100.8521 Download
Post-patch version 10.0.26100.8875 Download
Function Address Change Note
SrvNetAllocateEndpointCommon code change code (rundown protection initialized on the endpoint, CFR-gated) Post (Feature_3107684665): ExInitializeRundownProtection(endpoint + 0x158/0x288) when allocating the endpoint.
SrvNetTdiReceiveHandler / SrvNetCommonReceiveHandler code change code (receive acquires rundown protection, CFR-gated) Post: ExAcquireRundownProtection(endpoint + 0x288) before processing the receive (and ExReleaseRundownProtection after), so the endpoint is kept alive while a receive is in flight.
SrvNetTdiCloseConnection code change code (teardown waits for rundown release, CFR-gated) Post: ExWaitForRundownProtectionRelease(endpoint + 0x288) then ExRundownCompleted(endpoint + 0x288) before tearing down, so close blocks until all in-flight receives release their reference.
SrvNetCloseConnectionWithLock / SrvNetDeregisterClient / SrvNetUnpublishClientSlot / SrvNetEndpointReopenTdiConnections code change code (endpoint lifecycle updated) Related endpoint close/deregister/reopen paths updated to the rundown-protected lifecycle.
Feature_3107684665 gate added (CFR gate) Primary CFR flag gating the rundown-protected endpoint lifecycle (Feature_1180933432 also present); the original unprotected path still ships when disabled.
View full diff report View RCA report

Attack Path

An SMB endpoint is closed/freed while a network receive is still processing it, causing a UAF

Attack path for CVE-2026-57089 An SMB endpoint is closed/freed while a network receive is still processing it, causing a UAF 01 — ENTRY Remote attacker sends SMB traffic to the server srvnet.sys delivers network receives to the SMB endpoint via SrvNetTdiReceiveHandler / SrvNetCommonReceiveHandler. AV:N/PR:N/AC:H (race). 02 — CONTROLLED INPUT Races connection teardown against an in-flight receive SrvNetTdiCloseConnection / SrvNetDeregisterClient frees the endpoint while a receive is still processing it. 03 — MISSING CHECK Endpoint freed while a receive handler uses it (CWE-416) No synchronization between teardown and in-flight receive -> use-after-free of the endpoint object. 04 — PATH Freed endpoint is dereferenced in the kernel SMB transport Controlling the freed/reused allocation from network input is exploitable. 05 — PRIMITIVE Use-after-free in the network-facing SMB transport -> RCE The Jul 2026 fix (Feature_3107684665) adds rundown protection: receives acquire it, close waits for release before freeing.

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

Microsoft