CVE-2026-62892 — Capability Access Management Service (camsvc) Elevation of Privilege Vulnerability
Executive Summary
Use after free in Capability Access Management Service (camsvc) allows an authorized attacker to elevate privileges locally.
Overview
CVSS Vector
CVSS:3.1/AV:L/AC:H/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 | 5120238 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 1809 for x64-based Systems | 5120238 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for 32-bit Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for ARM64-based Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 21H2 for x64-based Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for 32-bit Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for ARM64-based Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 10 Version 22H2 for x64-based Systems | 5120249 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for ARM64-based Systems | 5120240 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 23H2 for x64-based Systems | 5120240 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 Version 24H2 for ARM64-based Systems 5120994 (Security Hotpatch Update) 5121003 (Security Update) Important Elevation of Privilege 5101650 Base: 7.0 Temporal: 6.1 Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C 10.0.26100.9106 10.0.26100.9168 Yes None Windows 11 Version 24H2 for x64-based Systems 5121003 (Security Update) 5120994 (Security Hotpatch Update) Important Elevation of Privilege 5101650 Base: 7.0 Temporal: 6.1 Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C 10.0.26100.9168 10.0.26000.9106 Yes None Windows 11 Version 25H2 for ARM64-based Systems 5121003 (Security Update) 5120994 (Security Hotpatch Update) Important Elevation of Privilege 5101650 Base: 7.0 Temporal: 6.1 Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C 10.0.26200.9168 10.0.26100.9106 Yes None Windows 11 Version 25H2 for x64-based Systems 5121003 (Security Update) 5120994 (Security Hotpatch Update) Important Elevation of Privilege 5101650 Base: 7.0 Temporal: 6.1 Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C 10.0.26200.9168 10.0.26100.9106 Yes None Windows 11 Version 26H1 for ARM64-based Systems | 5121000 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows 11 version 26H1 for x64-based Systems | 5121000 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 | 5120238 (Security Update) |
Important | Elevation of Privilege | Yes |
| Windows Server 2019 (Server Core installation) | 5120238 (Security Update) |
Important | Elevation of Privilege | Yes |
Patches
| Article | Type | Restart |
|---|---|---|
5120238 |
Security Update | Yes |
5120249 |
Security Update | Yes |
5120240 |
Security Update | Yes |
5121000 |
Security Update | Yes |
Patch Diff
Use-after-free (CWE-416) via a race (AC:H) in the Windows Capability Access Management Service (camsvc) capabilityaccessmanager.dll consent-evaluation path, local EoP to SYSTEM. camsvc mediates app access to protected capabilities (camera/microphone/location) via a per-user CapabilityConsentManager and evaluates consent in CapabilityAccessManager::EvaluateGlobalPrompt / ConsentCheck (reading consent via CapabilityConsentManager::GetUserGlobalConsent / GetUserAppConsent off the manager at this+0x60). PRE: the consent objects returned/used during evaluation were held via raw pointers, so a concurrent operation could free the consent/manager object while another thread was still using it in the evaluation - a use-after-free (race, AC:H). Because camsvc runs as SYSTEM and the consent interface is reachable by a local user, winning the race is a local EoP-to-SYSTEM primitive. Diff of capabilityaccessmanager.dll 10.0.26100.8972 -> .9168 (Aug 11 2026, KB5121003) confirms the fix: gated behind CFR flag Feature_1944813881 (the dominant flag across the change), the consent accessors now return/hold the consent via std::shared_ptr<CapabilityConsentManager> with reference-count management (_Ref_count_base), so a strong reference is held across the evaluation and the object cannot be freed while in use, closing the race/UAF. Note: this Aug update is a broad camsvc rework (99 functions modified across many feature flags); the isolable UAF mechanism is the shared_ptr (reference-counted) ownership of the consent object in the EvaluateGlobalPrompt/ConsentCheck path, stated at confirmed-changed level.
| Function | Address | Change | Note |
|---|---|---|---|
Windows::Internal::CapabilityAccess::Private::CapabilityAccessManager::EvaluateGlobalPrompt |
code change |
code (consent held via shared_ptr during evaluation, CFR-gated) | Post (Feature_1944813881): GetConsentIdFromObjectId then CapabilityConsentManager::GetUserGlobalConsent/GetUserAppConsent(this+0x60,...) now yield a std::shared_ptr<CapabilityConsentManager> assigned via operator= with _Ref_count_base refcounting - a strong reference held across evaluation. |
CapabilityAccessManager::ConsentCheck (and dtor helpers) |
code change |
code (consent lifetime reworked) | Consent-check path and its cleanup reworked to the shared_ptr ownership discipline. |
CapabilityConsentManager::GetUserGlobalConsent / GetUserAppConsent |
code change |
code (return reference-counted consent) | Consent accessors return/participate in shared_ptr ownership so callers hold a strong reference to the consent object while using it. |
Feature_1944813881 |
gate |
added (CFR gate) | Dominant CFR flag (187 refs) gating the reference-counted consent lifetime; the original raw-pointer path still ships when disabled. (Several other camsvc flags present in this broad update.) |
Attack Path
A consent object is freed by a concurrent operation while camsvc is evaluating access, causing a UAF
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
Anonymous
Azure Yang