Important CVSS 5.5 EPSS 0.00992 🔬 Patch diffed 2025-06 archive

Executive Summary

Improper access control in Windows Storage Port Driver allows an authorized attacker to disclose information locally.

Overview

5.5
CVSS MEDIUM
Important
MS Severity
Not Exploited
MS Exploit Status
Less Likely
MS Exploit Likelihood
Category Information Disclosure
Released Jun 10 2025
Last Updated Jun 10 2025
Publicly Disclosed No
CISA KEV Not Listed
Known Exploits None Known
EPSS Score 0.00992 — 0.59535 percentile
NVD CVSS 5.5 MEDIUM — matches MSRC

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
ATTACK VECTOR
Local
ATTACK COMPLEXITY
Low
PRIVILEGES REQUIRED
Low
USER INTERACTION
None
SCOPE
Unchanged
CONFIDENTIALITY
High
INTEGRITY
None
AVAILABILITY
None
EXPLOIT CODE MATURITY
Unproven
REMEDIATION LEVEL
Official Fix
REPORT CONFIDENCE
Confirmed
Temporal Score: 4.8

EPSS Score

0.00992
probability of exploitation in the next 30 days
0.59535 percentile - updated 2026-08-14
View on FIRST.org

Affected Products

25 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

8 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

ghidriff · storport.sys (KB5060999)

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.

Pre-patch version 10.0.22621.5415 Download
Post-patch version 10.0.22621.5547 Download
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.
View full diff report View RCA report

Attack Path

A low-privileged local caller invokes storport's storage-diagnostic IOCTL and receives kernel memory addresses

Attack path for CVE-2025-32722 A low-privileged local caller invokes storport's storage-diagnostic IOCTL and receives kernel memory addresses 01 — ENTRY Low-privileged local user issues the storage-diagnostic IOCTL to storport storport.sys handles it in RaUnitStorageDiagnosticIoctl. AV:L / PR:L / UI:N. 02 — CONTROLLED INPUT Request the diagnostic buffer for a storage unit/miniport RaBuildDiagnosticBufferForMiniport assembles a diagnostic buffer whose fields include kernel-space memory addresses. 03 — MISSING CHECK No privilege check on the returning path (CWE-284) Pre-patch the handler returned the diagnostic buffer to any authorized caller, disclosing kernel addresses (KASLR bypass primitive). 04 — IMPACT Kernel-address disclosure to a non-admin caller The leaked kernel memory addresses can be leveraged to locate kernel structures for follow-on exploitation (Important, 5.5, C:H/I:N/A:N).

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