CVE-2021-31969 — Windows Cloud Files Mini Filter Driver Elevation of Privilege Vulnerability
Executive Summary
None
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 1809 for 32-bit Systems | 5003646 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for ARM64-based Systems | 5003646 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for x64-based Systems | 5003646 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1909 for 32-bit Systems | 5003635 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1909 for ARM64-based Systems | 5003635 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1909 for x64-based Systems | 5003635 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 2004 for 32-bit Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 2004 for ARM64-based Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 2004 for x64-based Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 20H2 for 32-bit Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 20H2 for ARM64-based Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H1 for 32-bit Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H1 for ARM64-based Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H1 for x64-based Systems | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 | 5003646 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 (Server Core installation) | 5003646 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server, version 2004 (Server Core installation) | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server, version 20H2 (Server Core Installation) | 5003637 (Security Update) |
Important | Elevation of Privilege | Yes |
Patches
| Article | Type | Restart |
|---|---|---|
5003646 |
Security Update | Yes |
5003635 |
Security Update | Yes |
5003637 |
Security Update | Yes |
Patch Diff
Integer underflow in cldflt.sys HsmpRpiDecompressBuffer leading to controlled paged pool overflow from 0x20-byte allocation. cstmDataSize (WORD) controls allocation size (cstmDataSize + 8). No minimum check allows value 0, causing allocatedSize - 12 to underflow to 0xFFFFFFF4 for RtlDecompressBuffer. LZNT1 header can be set to uncompressed, making the call behave as memcpy with attacker-controlled size and content. Patch adds if (cstmDataSize >= 4) guard. Related: CVE-2023-36036 (same function, missing max check, exploited ITW).
| Function | Address | Change | Note |
|---|---|---|---|
HsmpRpiDecompressBuffer |
|
code (minimum size check added) | Added check that cstmDataSize >= 4 before computing allocatedSize = cstmDataSize + 8. Prevents unsigned integer underflow when (allocatedSize - 12) is passed as UncompressedBufferSize to RtlDecompressBuffer. |
Attack Path
Local EoP via an integer underflow in HsmpRpiDecompressBuffer turning RtlDecompressBuffer into an unbounded copy
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
Anonymous working with Trend Micro Zero Day Initiative
Keqi Hu