Eludir la verificación en la biblioteca xml-crypto, que tiene un millón de descargas por semana

Se ha descubierto una vulnerabilidad (CVE-2024-32962) en la biblioteca xml-crypto de JavaScript, utilizada como dependencia en 402 proyectos y descargada aproximadamente un millón de veces cada semana, que ha sido clasificada con el nivel máximo de peligrosidad (10 de 10). La biblioteca proporciona funciones para la encriptación y verificación de documentos XML a través de firmas digitales. La vulnerabilidad permite a un atacante certificar un documento falso, que en la configuración predeterminada será verificado exitosamente por la biblioteca, a pesar de que esté firmado con una clave que no es la especificada para la verificación de firmas. El problema se manifiesta a partir de la versión xml-crypto 4.0.0 y fue solucionado sin demasiada publicidad en la versión 6.0.0 de enero.

La vulnerabilidad se debe a que en la configuración predeterminada la biblioteca no autoriza al creador de la firma, sino que solo verifica la validez de la firma misma. En particular, la biblioteca confía en cualquier certificado que esté presente en el documento firmado en el elemento XML KeyInfo, incluso si en la configuración se indica el uso de un certificado específico para verificar las firmas digitales. De esta manera, para una verificación exitosa de un documento modificado, el atacante solo necesita reemplazar la firma digital original por una firma generada con su propia clave privada y colocar el certificado correspondiente a esa clave privada (clave pública) en el elemento KeyInfo.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster