## NPOI 修复关键安全漏洞 CVE-2026-26171 与 CVE-2026-33116，强制升级依赖版本
NPOI 项目核心依赖库 `System.Security.Cryptography.Xml` 存在已知高危漏洞，迫使项目维护者紧急更新其依赖锁定策略。该漏洞影响广泛，因为 NPOI 的 `NPOI.OOXML` 库依赖此包提供数字签名支持。问题核心在于，即使项目指定了最低版本 `>= 8.0.2`，针对 .NET 10 的消费者仍会自动解析到同样存在漏洞的 `10.0.5` 版本，这是 .NET 10 SDK 的默认行为，导致安全补丁无法生效。

为解决此问题，NPOI 维护团队实施了双重修复方案。首先，在 `Directory.Packages.props` 中将中心化版本从 `8.0.2` 提升至已修复的 `8.0.3`，为所有非 .NET 10 的目标框架提供补丁。其次，针对 `net10.0` 目标框架，在 `ooxml/NPOI.OOXML.Core.csproj` 和 `solution/NPOI.Pack.csproj` 中，通过 `VersionOverride="10.0.6"` 显式强制指定依赖版本，确保发布的 NuGet 包中，针对 `net10.0` 的依赖组声明为 `>= 10.0.6`，从而强制使用者避开存在漏洞的 `10.0.5` 版本。

此次修复凸显了现代 .NET 生态中依赖解析的潜在风险，特别是平台特定版本自动匹配机制可能绕过显式安全更新。对于使用 NPOI 进行 Office 文档处理并涉及数字签名的项目，必须确保更新至包含此修复的 NPOI 版本，或手动验证其 `System.Security.Cryptography.Xml` 依赖已升级至安全版本（8.0.3 或 10.0.6），否则应用将暴露在已知漏洞风险之下。
---
- **Source**: GitHub Issues
- **Sector**: The Lab
- **Tags**: CVE-2026-26171, CVE-2026-33116, System.Security.Cryptography.Xml, 安全漏洞, .NET
- **Credibility**: unverified
- **Published**: 2026-04-15 21:22:50
- **ID**: 66253
- **URL**: https://whisperx.ai/en/intel/66253