CVE-2026-42980 — NT OS Kernel Elevation of Privilege Vulnerability
Executive Summary
Integer underflow (wrap or wraparound) in Windows NT OS Kernel allows an authorized attacker to elevate privileges locally.
Overview
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
EPSS Score
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
| 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
WMI integer underflow (CWE-191 -> CWE-787): nt!WmipQueryAllDataMultiple (IOCTL 0x22812C) and nt!WmipQuerySingleMultiple (IOCTL 0x228130) subtract an 8-aligned provider-reported size from a 32-bit remaining-output counter without checking it fits. A WMI instance whose serialized size R is not 8-aligned (slop) passes the requiredSize=(DataSize+73)&~7 gate yet wraps the counter (R - ALIGN8(R)); the next WNODE item is then serialized out of bounds past the kernel SystemBuffer, giving a controlled OOB write (used by the public G4sp4rCS exploit to corrupt sprayed npfs data queue entries -> arbitrary read -> SYSTEM token). VERIFIED 2026-07-20: the saturating-subtract fix ships in BOTH builds behind WIL flag Feature_1045423416; KB5101650 is a CFR flag enablement, not a code change — ghidriff shows 0 changes in the WMI path (70,713/70,714 functions matched, 6 unrelated churn).
| Function | Address | Change | Note |
|---|---|---|---|
nt!WmipQuerySingleMultiple |
0x1407a4fc0 (pre-patch); vulnerable sub @ +0x401 |
none (code identical in both builds) — fix enabled via Feature_1045423416 flag flip | IOCTL 0x228130 path; outRemaining -= alignedActualSize underflow; saturating subtract already compiled in pre-patch, dormant behind CFR flag. Verified via GhidraMCP decompilation of 10.0.26100.8737. |
nt!WmipQueryAllDataMultiple |
vulnerable sub @ +0x29a |
none (code identical in both builds) — fix enabled via Feature_1045423416 flag flip | IOCTL 0x22812C path; same unchecked aligned-size subtraction; same flag-gated saturating pattern present pre-patch. Verified via GhidraMCP. |
Feature_1045423416__private_IsEnabledDeviceUsageNoInline / _IsEnabledFallback |
0x14064a9d4 / 0x14064aa0c (pre-patch) |
present in both builds; flag STATE changed by KB5101650 (CFR enablement, data-side) | CFR kill-switch gating both saturating subtractions; state lives in servicing/rollout data outside function-diff scope |
Unrelated churn (6 code-changed) |
|
code | RtlpCheckFunctionPatchAppliedInOriginalImage, FsRtlpRequestShareableOplock, FsRtlpComputeShareableOplockState, SepSecureBootCorrectBcd, NtFilterBootOption, RtlpHpVsSlotCreate; 1 added: Feature_3244801339__private_IsEnabledFallback |
Known Exploits
Acknowledgments
Anonymous