Important CVSS 7.8 EPSS 0.05426 🔬 Patch diffed 2026-01 archive

Executive Summary

Improper handling of insufficient permissions or privileges in Windows Error Reporting allows an authorized attacker to elevate privileges locally.

Overview

7.8
CVSS HIGH
Important
MS Severity
Not Exploited
MS Exploit Status
More Likely
MS Exploit Likelihood
Category Elevation of Privilege
Released Jan 13 2026
Last Updated Jan 13 2026
Publicly Disclosed No
CISA KEV Not Listed
Known Exploits None Known
EPSS Score 0.05426 — 0.91999 percentile
NVD CVSS 7.8 HIGH — matches MSRC

CVSS Vector

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

EPSS Score

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

Affected Products

17 affected products
Product KB Article Severity Impact Restart Required
Windows 10 Version 21H2 for 32-bit Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for ARM64-based Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 21H2 for x64-based Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for 32-bit Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for ARM64-based Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 10 Version 22H2 for x64-based Systems 5073724 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for ARM64-based Systems 5073455 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 23H2 for x64-based Systems 5073455 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for ARM64-based Systems 5074109 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 24H2 for x64-based Systems 5074109 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for ARM64-based Systems 5074109 (Security Update) Important Elevation of Privilege Yes
Windows 11 Version 25H2 for x64-based Systems 5074109 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 5073457 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022 (Server Core installation) 5073457 (Security Update) Important Elevation of Privilege Yes
Windows Server 2022, 23H2 Edition (Server Core installation) 5073450 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 5073379 (Security Update) Important Elevation of Privilege Yes
Windows Server 2025 (Server Core installation) 5073379 (Security Update) Important Elevation of Privilege Yes

Patches

6 patches
Article Type Restart
5073724 Security Update Yes
5073455 Security Update Yes
5074109 Security Update Yes
5073457 Security Update Yes
5073450 Security Update Yes
5073379 Security Update Yes

Patch Diff

ghidriff · wersvc.dll (KB5074109)

Unvalidated elevated process launch (CWE-280) in the Windows Error Reporting service wersvc.dll, local EoP. CWerService::SvcElevatedLaunch is a legacy handler that starts a process with elevated privileges on behalf of a WER client, taking the image path, command line and handles straight from the client's _WERSVC_MSG request (param_1). After obtaining the requester handle via OpenSenderProcessThread, it copies user-controlled handle entries from the message buffer (array at +0x40, count at +0xc0) into a local array and passes the message-supplied image (+0x30), command line (+0x38) and handles to ElevatedProcessStart - with no validation of the binary or arguments, so a local attacker crafts the message to launch an arbitrary process elevated -> arbitrary code execution. IN-HOUSE ghidriff of wersvc.dll 10.0.26100.7309 -> .7623 (Jan 13 2026, KB5074109) confirms the fix: rather than add validation, the high-risk legacy elevated-launch is disabled, gated behind CFR flag Feature_2473284922 - when enabled, SvcElevatedLaunch sets param_2+0x28=1 and param_2+0x2c=0xC0000001 (STATUS_UNSUCCESSFUL) and returns without calling OpenSenderProcessThread/ElevatedProcessStart; the original launch survives only on the feature-disabled else branch, removing the attack surface. Note: our x64 24H2 diff shows Feature_2473284922, differing from the circulated screenshots' Feature_2741720378 (build/arch difference); the disable-the-feature mechanism is identical. We ship what our diff shows.

Pre-patch version 10.0.26100.7309 Download
Post-patch version 10.0.26100.7623 Download
Function Address Change Note
CWerService::SvcElevatedLaunch code change code (legacy elevated launch disabled, CFR-gated) Pre: unconditionally OpenSenderProcessThread -> copy user handles from _WERSVC_MSG -> ElevatedProcessStart(image=+0x30, cmdline=+0x38, handles=+0x40) with no validation. Post (Feature_2473284922 enabled): sets param_2+0x28=1, param_2+0x2c=0xC0000001 (STATUS_UNSUCCESSFUL) and returns without launching; original path only on the feature-disabled else.
Feature_2473284922 gate added (CFR gate) CFR flag gating the disable of the legacy elevated-launch path; the original ElevatedProcessStart path still ships in .7623 on the disabled branch.
View full diff report View RCA report Download PoC

Attack Path

WER service starts an elevated process from an unvalidated client request message

Attack path for CVE-2026-20817 WER's elevated-launch ALPC message takes its command line from a client-supplied file mapping 01 — ENTRY Any low-privileged user connects to \WindowsErrorReportingServicePort The ALPC port is reachable without elevation; the Windows Error Reporting Service runs as SYSTEM. 02 — CONTROLLED INPUT Attacker sends MessageFlags = 0x50000000 with a File Mapping handle The command line is read as wide chars out of the client-supplied mapping - the client owns that memory. 03 — PATH CWerService::SvcElevatedLaunch handles the message It reads the command line from the mapping and passes it onward. 04 — MISSING CHECK No validation that the caller is entitled to specify an elevated command line The service treats a client-provided string as its own launch arguments. 05 — PRIMITIVE CreateProcessAsUserW runs WerFault.exe as SYSTEM with attacker arguments A direct ALPC-to-SYSTEM primitive - no memory corruption required.

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

Acknowledgments

Ruslan Sayfiev with GMO Cybersecurity by Ierae
Denis Faiustov with GMO Cybersecurity by Ierae