
La vulnerabilidad permite a atacantes no autenticados falsificar payloads y escalar privilegios. Afecta las versiones 10.0.0 a 10.0.6 del paquete NuGet Microsoft.AspNetCore.DataProtection.
Microsoft publicó el 21 de abril la versión .NET 10.0.7 como una actualización fuera de ciclo (out-of-band) para corregir una vulnerabilidad de seguridad en el paquete Microsoft.AspNetCore.DataProtection. La falla, identificada como CVE-2026-40372, recibió una puntuación CVSS 3.1 de 9.1 (Crítica) y permite a atacantes no autenticados escalar privilegios a través de la red mediante la falsificación de payloads criptográficos.
La vulnerabilidad afecta las versiones 10.0.0 a 10.0.6 del paquete NuGet Microsoft.AspNetCore.DataProtection. Según la documentación oficial de .NET 10.0.7, el problema radica en que el encriptador autenticado administrado calculaba su tag de validación HMAC sobre los bytes incorrectos del payload y posteriormente descartaba el hash calculado en ciertos casos. Esta falla en la rutina de validación permite a un atacante falsificar payloads que pasan las verificaciones de autenticidad de DataProtection, así como desencriptar payloads previamente protegidos.
Entre los datos expuestos se encuentran cookies de autenticación, tokens antiforgery, TempData, estado OIDC y otros mecanismos que dependen del sistema de protección de datos de ASP.NET Core. Si un atacante utilizara payloads falsificados para autenticarse como usuario privilegiado durante la ventana vulnerable, podría haber inducido a la aplicación a emitir tokens legítimamente firmados, como refrescos de sesión, claves API o enlaces de restablecimiento de contraseña que permanecerían válidos incluso después de actualizar a 10.0.7, a menos que se rote el anillo de claves de DataProtection.
Microsoft descubrió la vulnerabilidad tras recibir reportes de clientes indicando que el desencriptado fallaba en sus aplicaciones después de instalar la actualización .NET 10.0.6 del Patch Tuesday de abril. La investigación del incidente, documentado inicialmente en el issue #66335 de aspnetcore, reveló que la regresión introducida en el código también exponía esta vulnerabilidad de seguridad.
La compañía compara la severidad de este fallo con MS10-070, que explotaba una condición similar de padding-oracle en la infraestructura de encriptación legacy de ASP.NET.
Los equipos de desarrollo deben actualizar inmediatamente el paquete Microsoft.AspNetCore.DataProtection a la versión 10.0.7. El SDK 10.0.203 y los runtimes asociados están disponibles en el portal de descargas de .NET. Para verificar la instalación, ejecute dotnet --info y confirme que la versión mostrada es 10.0.7. Es necesario reconstruir y redesplegar las aplicaciones utilizando las imágenes o paquetes actualizados. Además, para entornos que hayan estado expuestos, Microsoft recomienda rotar el anillo de claves de DataProtection para invalidar cualquier token que haya podido ser emitido de forma fraudulenta durante el período vulnerable.
FUENTE ORIGINAL
Microsoft .NET Blog↗CURADO POR
Santiago Torres