CVE-2025-32722 — Windows Storage Port Driver Information Disclosure Vulnerability
Executive Summary
Improper access control in Windows Storage Port Driver allows an authorized attacker to disclose information locally.
Overview
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:C
EPSS Score
Affected Products
| Product | KB Article | Severity | Impact | Restart Required |
|---|---|---|---|---|
| Windows 10 for 32-bit Systems | 5060998 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 for x64-based Systems | 5060998 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 1607 for 32-bit Systems | 5061010 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 1607 for x64-based Systems | 5061010 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 1809 for 32-bit Systems | 5060531 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 1809 for x64-based Systems | 5060531 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 21H2 for 32-bit Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 21H2 for ARM64-based Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 21H2 for x64-based Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 22H2 for 32-bit Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 22H2 for ARM64-based Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 10 Version 22H2 for x64-based Systems | 5060533 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 11 Version 22H2 for ARM64-based Systems | 5060999 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 11 Version 22H2 for x64-based Systems | 5060999 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 11 Version 23H2 for ARM64-based Systems | 5060999 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 11 Version 23H2 for x64-based Systems | 5060999 (Security Update) |
Important | Information Disclosure | Yes |
| Windows 11 Version 24H2 for ARM64-based Systems 5060842 (Security Update) 5060841 (SecurityHotpatchUpdate) Important Information Disclosure 5058411 5058497 Base: 5.5 Temporal: 4.8 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:C 10.0.26100.4349 10.0.26100.4270 Yes None Windows 11 Version 24H2 for x64-based Systems 5060842 (Security Update) 5060841 (SecurityHotpatchUpdate) Important Information Disclosure 5058411 5058497 Base: 5.5 Temporal: 4.8 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:C 10.0.26100.4349 10.0.26100.4270 Yes None Windows Server 2012 | 5061059 (Monthly Rollup) |
Important | Information Disclosure | Yes |
| Windows Server 2012 (Server Core installation) | 5061059 (Monthly Rollup) |
Important | Information Disclosure | Yes |
| Windows Server 2012 R2 | 5061018 (Monthly Rollup) |
Important | Information Disclosure | Yes |
| Windows Server 2012 R2 (Server Core installation) | 5061018 (Monthly Rollup) |
Important | Information Disclosure | Yes |
| Windows Server 2016 | 5061010 (Security Update) |
Important | Information Disclosure | Yes |
| Windows Server 2016 (Server Core installation) | 5061010 (Security Update) |
Important | Information Disclosure | Yes |
| Windows Server 2019 | 5060531 (Security Update) |
Important | Information Disclosure | Yes |
| Windows Server 2019 (Server Core installation) | 5060531 (Security Update) |
Important | Information Disclosure | Yes |
| Windows Server 2022 5060526 (Security Update) 5060525 (SecurityHotpatchUpdate) Important Information Disclosure 5058385 5058500 Base: 5.5 Temporal: 4.8 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:C 10.0.20348.3807 10.0.20348.3745 Yes None Windows Server 2022 (Server Core installation) 5060526 (Security Update) 5060525 (SecurityHotpatchUpdate) Important Information Disclosure 5058385 5058500 Base: 5.5 Temporal: 4.8 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N/E:U/RL:O/RC:C 10.0.20348.3807 10.0.20348.3745 Yes None Windows Server 2022, 23H2 Edition (Server Core installation) | 5060118 (Security Update) |
Important | Information Disclosure | Yes |
Patches
| Article | Type | Restart |
|---|---|---|
5060998 |
Security Update | Yes |
5061010 |
Security Update | Yes |
5060531 |
Security Update | Yes |
5060533 |
Security Update | Yes |
5060999 |
Security Update | Yes |
5061059 |
Monthly Rollup | Yes |
5061018 |
Monthly Rollup | Yes |
5060118 |
Security Update | Yes |
Patch Diff
Improper access control (CWE-284) in the Windows Storage Port Driver storport.sys storage-diagnostic IOCTL path, local kernel-memory-address information disclosure (Important, Information Disclosure, AV:L/PR:L/UI:N, C:H/I:N/A:N, CVSS 5.5). storport exposes a storage-diagnostic IOCTL handled by RaUnitStorageDiagnosticIoctl, which builds a diagnostic buffer (RaBuildDiagnosticBufferForMiniport) whose contents include kernel-space memory addresses. PRE: the handler served that diagnostic buffer to any authorized (local, low-privileged) caller with no privilege check, leaking kernel addresses usable to defeat KASLR for follow-on exploitation (per the MSRC FAQ: 'disclosure of certain memory address within kernel space'). Diff of storport.sys 10.0.22621.5415 -> .5547 (Jun 10 2025, KB5060999, Win11 22H2/23H2) confirms the fix: gated behind CFR flag Feature_1890851130, RaUnitStorageDiagnosticIoctl now calls a NEW RaidCallerIsAdmin() before producing the diagnostic buffer and bails out for non-admin callers. RaidCallerIsAdmin captures the caller's subject/security context (SeCaptureSubjectContext, SeLockSubjectContext) and calls SeTokenIsAdmin, then releases the context - so the kernel-address-bearing diagnostic data is only returned to administrators. No memory-corruption primitive is involved; this is purely a missing access-control check on an information-returning IOCTL.
| Function | Address | Change | Note |
|---|---|---|---|
RaUnitStorageDiagnosticIoctl |
code change |
code (adds admin-only gate before returning the diagnostic buffer, CFR-gated) | Post (Feature_1890851130__private_IsEnabledDeviceUsage): calls RaidCallerIsAdmin() and only proceeds to RaBuildDiagnosticBufferForMiniport / RaidDiagnosticIoctlStatusToNtStatus when the caller is admin; non-admin callers return without the (kernel-address-bearing) diagnostic buffer. Pre: no caller privilege check on this path. |
RaidCallerIsAdmin |
new function |
added (admin check helper) | New. SeCaptureSubjectContext + SeLockSubjectContext, then SeTokenIsAdmin(token), then SeUnlockSubjectContext + SeReleaseSubjectContext; returns whether the caller's token is an administrator. Used to gate the storage-diagnostic IOCTL. |
Feature_1890851130 |
gate |
added (CFR gate) | CFR flag gating the new admin check on the storage-diagnostic IOCTL; the original unchecked path ships when the flag is disabled. |
Attack Path
A low-privileged local caller invokes storport's storage-diagnostic IOCTL and receives kernel memory addresses
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.