微软近日披露,上周发布的ASP.NET Core更新包意外在该Web框架的数据保护库中引入了一个严重安全漏洞,并已向开发者发出警告,建议尽快检查相关应用程序。
微软将此问题定性为"回归性缺陷",即某次更新导致此前正常运行的功能出现故障。
此次引入的漏洞编号为CVE-2026-40372,CVSS评分高达9.1,属于严重级别。该漏洞影响通过NuGet包管理器分发的ASP.NET Core数据保护应用程序库,波及Linux、macOS及其他非Windows操作系统,同时也影响开发者通过UseCustomCryptographicAlgorithms API显式启用托管算法的Windows系统。
该漏洞源于.NET 10.0.6版本包中的一个缺陷。该版本于4月14日"补丁星期二"更新中发布,其中ManagedAuthenticatedEncryptor库在计算基于哈希的消息认证码(HMAC)的验证标签时,使用了错误的偏移量。
安全哈希值的错误计算,导致不应被信任的.AspNetCore应用程序Cookie和Token得以通过验证并被系统信任。
微软在GitHub安全公告中指出:"在上述情况下,验证机制的失效可能允许攻击者伪造能够通过数据保护真实性检查的载荷,并解密身份验证Cookie、防伪Token、TempData、OIDC状态等中此前受保护的内容。"
这类长效Token一旦被植入应用程序,将赋予攻击者极为强大的权限。公告进一步警告称:"若攻击者在漏洞窗口期内利用伪造载荷以特权用户身份进行认证,可能诱使应用程序向其颁发合法签名的Token,例如会话刷新令牌、API密钥、密码重置链接等。"
值得注意的是,此次漏洞距ASP.NET去年10月曝出的严重缺陷仅过去六个月。彼时,Kestrel Web服务器组件中的CVE-2025-55315漏洞CVSS评分高达9.9。更令人担忧的是,此次安全公告将当前问题与MS10-070相提并论——后者是针对CVE-2010-3332的紧急补丁,该零日漏洞涉及Windows ASP.NET处理加密错误的方式,曾于2010年引发广泛恐慌。
通常情况下,漏洞发现后的标准处置流程仅需应用更新、临时方案或缓解措施。而此次情况有所不同——服务器构建版本应已自动完成更新,运行时已升级至修复版本10.0.7。
然而,对于使用主流Docker容器平台的开发者而言,情况更为复杂。在此类项目中,数据保护库已被嵌入到构建完成的应用程序中。要彻底解决此问题,需要更新并重新构建所有在4月14日更新之后创建的ASP.NET Core应用程序。
此外,为兼容包括旧版Windows在内的老版操作系统,在netstandard2.0或net462目标框架资产中使用10.0.x版本存在缺陷的NuGet包的开发者同样受到影响。
关于如何判断是否加载了存在漏洞的二进制文件,微软安全公告给出了以下建议:
"检查应用程序日志。升级至10.0.6版本后,若日志中出现用户被频繁登出以及'载荷无效'的反复报错,即为最明显的症状。检查项目文件,查找.csproj文件中是否存在对Microsoft.AspNetCore.DataProtection 10.0.6版本的PackageReference引用(或依赖该版本的包)。此外,也可运行dotnet list package命令查看已解析的包版本。"
综上所述,开发者应重新构建受影响的应用程序以应用修复版本,使所有受影响的身份验证Cookie和Token失效以清除伪造内容,并轮换更新ASP.NET Core数据保护Token。
尽管目前尚无证据显示该漏洞已遭到攻击者利用,但微软建议,出于良好的安全规范,仍应检查是否存在异常登录失败、错误或身份验证失败等情况。
Q&A
Q1:CVE-2026-40372漏洞具体会造成什么危害?
A:CVE-2026-40372是ASP.NET Core数据保护库中的一个严重漏洞,CVSS评分9.1。由于HMAC验证标签计算时使用了错误偏移量,导致不应被信任的Cookie和Token通过了验证。攻击者可借此伪造能通过真实性检查的载荷,解密受保护的身份验证Cookie、防伪Token等内容,甚至在特权用户身份下诱使应用程序颁发合法签名的Token,包括API密钥和密码重置链接等。
Q2:哪些开发者会受到ASP.NET Core数据保护库漏洞的影响?
A:受影响范围较广。使用Linux、macOS等非Windows系统的开发者,以及在Windows上通过UseCustomCryptographicAlgorithms API启用托管算法的开发者均受影响。使用Docker容器平台的开发者尤其需要注意,因为数据保护库已被嵌入构建好的应用中,需重新构建4月14日之后创建的ASP.NET Core应用。此外,使用netstandard2.0或net462目标框架的开发者也在受影响之列。
Q3:如何检测并修复ASP.NET Core数据保护库漏洞?
A:检测方法包括:查看应用日志是否出现用户频繁登出或"载荷无效"报错;检查.csproj项目文件中是否引用了Microsoft.AspNetCore.DataProtection 10.0.6版本;运行dotnet list package命令确认包版本。修复措施包括:更新并重新构建受影响应用至10.0.7版本,使所有受影响的身份验证Cookie和Token失效,并轮换更新ASP.NET Core数据保护Token。
好文章,需要你的鼓励
无人机食品配送服务商Flytrex与全球知名披萨连锁品牌Little Caesars宣布合作,推出全新Sky2无人机,最大载重达4公斤,可一次配送两个大披萨及饮料,满足全家用餐需求。Sky2支持最远6.4公里的配送范围,平均从起飞到送达仅需4.5分钟。首个试点门店已在德克萨斯州怀利市上线,并实现与Little Caesars订单系统的直接集成。
FORTIS是专门测量AI代理"越权行为"的基准测试,研究发现十款顶尖模型普遍选择远超任务需要的高权限技能,端到端成功率最高仅14.3%。
法国社会住房项目ViliaSprint?已正式完工,成为欧洲最大的3D打印多户住宅建筑,共12套公寓,建筑面积800平方米。项目由PERI 3D Construction使用COBOD BOD2打印机完成,整体工期较传统建造缩短3个月,实际打印仅用34天(原计划50天),现场操作人员从6人减至3人,建筑废料率从10%降至5%。建筑采用可打印混凝土,集成光伏板及热泵系统,能源自给率约达60%。
荷兰Nebius团队提出SlimSpec,通过低秩分解压缩草稿模型LM-Head的内部表示而非裁剪词汇,在保留完整词汇表的同时将LM-Head计算时间压缩至原来的五分之一,端到端推理速度超越现有方法最高达9%。