CVE-2024-30085 — 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:P/RL:O/RC:C
EPSS Score
Affected Products
| Product | KB Article | Severity | Impact | Restart Required |
|---|---|---|---|---|
| Windows 10 Version 1809 for 32-bit Systems | 5039217 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for ARM64-based Systems | 5039217 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for x64-based Systems | 5039217 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for 32-bit Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for ARM64-based Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for x64-based Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for 32-bit Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for ARM64-based Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for x64-based Systems | 5039211 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 version 21H2 for ARM64-based Systems | 5039213 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 version 21H2 for x64-based Systems | 5039213 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 22H2 for ARM64-based Systems | 5039212 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 22H2 for x64-based Systems | 5039212 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for ARM64-based Systems | 5039212 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for x64-based Systems | 5039212 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 | 5039217 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 (Server Core installation) | 5039217 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2022 5039227 (Security Update) 5039330 (Security Hotpatch Update) Important Elevation of Privilege 5037782 5037848 Base: 7.8 Temporal: 7.0 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C 10.0.20348.2527 10.0.20348.2522 Yes 5039227 Windows Server 2022 (Server Core installation) 5039227 (Security Update) 5039330 (Security Hotpatch Update) Important Elevation of Privilege 5037782 5037848 Base: 7.8 Temporal: 7.0 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C 10.0.20348.2527 10.0.20348.2522 Yes 5039227 Windows Server 2022, 23H2 Edition (Server Core installation) | 5039236 (Security Update) |
Important | Elevation of Privilege | Yes |
Patches
| Article | Type | Restart |
|---|---|---|
5039217 |
Security Update | Yes |
5039211 |
Security Update | Yes |
5039213 |
Security Update | Yes |
5039212 |
Security Update | Yes |
5039236 |
Security Update | Yes |
Patch Diff
Heap-based buffer overflow in cldflt.sys HsmIBitmapNORMALOpen. Allocates 0x1000-byte HsBm paged pool buffer then copies user-controlled reparse data (HSM_DATA BtRp bitmap element) without bounds check. memcpy_size derives from 16-bit Length field in cloud filter reparse point structure. Trigger: CfRegisterSyncRoot + FSCTL_SET_REPARSE_POINT_EX with IO_REPARSE_TAG_CLOUD_6, then reopen file. Full exploit: two-trigger WNF corruption + ALPC handle table spray + PipeAttribute arbitrary read + token privilege overwrite. CVSS 7.8 local EoP to SYSTEM.
| Function | Address | Change | Note |
|---|---|---|---|
HsmIBitmapNORMALOpen |
|
code (bounds check added before memcpy) | Added cmp r14d, 0x1000 check before memcpy of user-controlled reparse data into 0x1000-byte HsBm paged pool allocation. Pre-patch: no size validation, allowing overflow. Post-patch: rejects memcpy_size > 0x1000 with STATUS_BUFFER_OVERFLOW error. |
Attack Path
Local EoP from an unprivileged cloud sync root to SYSTEM via a paged pool overflow in cldflt.sys
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
Gwangun Jung( @pr0ln ) and Junoh Lee( @bbbig12 ) at Theori( @theori_io ) working with Trend Micro Zero Day Initiative
Alex Birnberg