微软安全公告确认,现代化Web应用框架ASP.NET Core的Microsoft.AspNetCore.DataProtection组件10.0.0至10.0.6版本存在权限提升漏洞CVE-2026-40372,CVSS 3.1评分9.1。该漏洞主要影响在Linux或macOS系统上运行、且使用受影响版本DataProtection组件的.NET 10应用程序,Windows平台通常不受影响。微软指出,受影响环境除需升级组件外,若在漏洞期间曾对外提供服务,还必须轮换DataProtection密钥,否则攻击者在此期间获取的合法令牌(Token)仍可能持续有效。
漏洞源于DataProtection组件的密码学签名验证机制存在缺陷。微软说明,攻击者可通过伪造认证Cookie实施权限提升攻击,并可能解密部分受DataProtection保护的数据内容。修复后,带有全零HMAC字节的伪造数据将被拒绝。
主要受影响场景是应用程序通过NuGet包直接引用DataProtection 10.0.6,且运行于Linux或macOS系统。若应用程序实际加载的是ASP.NET Core共享框架内置版本,则不在影响范围内。.NET 8.x与9.x的DataProtection组件同样不受此问题影响,因为该缺陷代码是在.NET 10开发过程中引入,未向旧版本移植。
官方强调,仅升级组件至10.0.7并不足够。若应用程序在漏洞期间对外提供服务,攻击者可能已通过伪造Cookie成功通过验证,并获取系统后续签发的合法令牌,例如API密钥或密码重置链接。由于这些令牌在升级后不会自动失效,受影响环境还需轮换DataProtection密钥。
微软建议按以下三步完成处置:首先,将组件升级至10.0.7并重新部署;其次,轮换DataProtection密钥;最后,排查漏洞期间发放的长效令牌,包括存储在数据库中的API密钥和尚未过期的密码重置链接。这些属于应用层资产,密钥轮换无法使其失效,需由应用程序自行处理。若应用程序在受保护的数据内容中存储了数据库连接字符串或第三方API密钥等长效密钥,也应视为可能已泄露,需尽快在源头更换。