CVE-2024-49114 — 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 | 5048661 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for x64-based Systems | 5048661 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for 32-bit Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for ARM64-based Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for x64-based Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for 32-bit Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for ARM64-based Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for x64-based Systems | 5048652 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 22H2 for ARM64-based Systems | 5048685 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 22H2 for x64-based Systems | 5048685 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for ARM64-based Systems | 5048685 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for x64-based Systems | 5048685 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 24H2 for ARM64-based Systems 5048667 (Security Update) 5048794 (SecurityHotpatchUpdate) Important Elevation of Privilege 5046617 Base: 7.8 Temporal: 6.8 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 10.0.26100.2605 10.0.26100.2528 Yes No None Windows 11 Version 24H2 for x64-based Systems 5048667 (Security Update) 5048794 (SecurityHotpatchUpdate) Important Elevation of Privilege 5046617 Base: 7.8 Temporal: 6.8 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 10.0.26100.2605 10.0.26100.2528 Yes No None Windows Server 2019 | 5048661 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 (Server Core installation) | 5048661 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2022 5048654 (Security Update) 5048800 (SecurityHotpatchUpdate) Important Elevation of Privilege 5046616 5046698 Base: 7.8 Temporal: 6.8 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 10.0.20348.2966 10.0.20348.2908 Yes None Windows Server 2022 (Server Core installation) 5048654 (Security Update) 5048800 (SecurityHotpatchUpdate) Important Elevation of Privilege 5046616 5046698 Base: 7.8 Temporal: 6.8 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 10.0.20348.2966 10.0.20348.2908 Yes None Windows Server 2022, 23H2 Edition (Server Core installation) | 5048653 (Security Update) |
Important | Elevation of Privilege | Yes |
Patches
| Article | Type | Restart |
|---|---|---|
5048661 |
Security Update | Yes |
5048652 |
Security Update | Yes |
5048685 |
Security Update | Yes |
5048653 |
Security Update | Yes |
Patch Diff
Missing synchronization (CWE-820) in the Windows Cloud Files minifilter cldflt.sys placeholder-convert / EA path, local EoP to SYSTEM. cldflt.sys (Cloud Files / on-demand files) converts files to/from placeholders and processes extended-attribute (EA) operations against a per-stream context. PRE: HsmFltProcessConvertPlaceholder performed the placeholder conversion without synchronizing against concurrent sync operations on the same stream (and HsmFltPreSET_EA / QueryIfEAExists likewise accessed stream state unsynchronized), so a concurrent operation could modify the placeholder/stream state mid-convert - a missing-synchronization defect that corrupts stream/placeholder state and is exploitable for local EoP to SYSTEM. Diff of cldflt.sys 10.0.26100.2161 -> .2605 (Dec 10 2024, KB5048667) confirms the fix: gated behind CFR flags Feature_401191227 / Feature_3260711228, HsmFltProcessConvertPlaceholder now fetches the stream context (HsmpGetStreamContext) and takes sync-op rundown protection (HsmpAcquireSyncOpRundownProtection) around the conversion, releasing it (HsmpReleaseSyncOpRundownProtection / FltReleaseContext) afterward, and HsmFltPreSET_EA acquires the stream/handle context before operating - serializing placeholder-convert against concurrent sync/EA operations and closing the missing-synchronization window.
| Function | Address | Change | Note |
|---|---|---|---|
HsmFltProcessConvertPlaceholder |
code change |
code (sync-op rundown protection added, CFR-gated) | Post (Feature_401191227): HsmpGetStreamContext(...) then HsmpAcquireSyncOpRundownProtection(streamCtx) around the placeholder conversion; HsmpReleaseSyncOpRundownProtection + FltReleaseContext afterward - serializes convert against concurrent sync operations. |
HsmFltPreSET_EA |
code change |
code (stream context acquired before EA op, CFR-gated) | Post (Feature_3260711228 / Feature_401191227): HsmpGetStreamHandleContext(...) taken before the SET_EA processing, coordinating EA operations with the stream context lifecycle. |
QueryIfEAExists |
code change |
code (EA existence check updated) | Helper updated alongside the EA/convert synchronization rework. |
Feature_401191227 / Feature_3260711228 |
gate |
added (CFR gate) | CFR flags gating the sync-op rundown protection / stream-context acquisition; the original unsynchronized path still ships when disabled. |
Attack Path
A Cloud Files placeholder conversion runs without synchronization against concurrent stream operations
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
Mateusz Jurczyk with Google Project Zero