Los investigadores de Codean Labs han descubierto una vulnerabilidad crítica de seguridad en la biblioteca de cifrado OpenPGP.js, ampliamente utilizada en aplicaciones de comunicación segura. La falla, identificada como CVE-2025-47934, permite a los atacantes falsificar mensajes firmados y cifrados, comprometiendo gravemente la integridad de las comunicaciones seguras.
Análisis Técnico de la Vulnerabilidad
La vulnerabilidad, que afecta a las versiones 5 y 6 de OpenPGP.js, ha recibido una puntuación de gravedad de 8.7 en la escala CVSS. El fallo permite que un atacante, con acceso a una única firma válida y sus datos en texto plano correspondientes, pueda generar mensajes falsificados que el sistema interpretará como legítimamente firmados.
Vector de Ataque y Alcance del Impacto
La explotación se realiza a través de los métodos openpgp.verify y openpgp.decrypt, que procesan incorrectamente mensajes especialmente manipulados. Los atacantes pueden falsificar tanto mensajes con firmas integradas como aquellos que combinan firma y cifrado, representando una amenaza significativa para la seguridad de las comunicaciones.
Sistemas Afectados y Solución
Entre las aplicaciones afectadas se encuentran soluciones populares de seguridad como FlowCrypt, Mymail-Crypt, UDC, Encrypt.to, PGP Anywhere y Passbolt. Los desarrolladores han lanzado parches de seguridad en las versiones 5.11.3 y 6.1.1 para mitigar la vulnerabilidad. Es importante destacar que las versiones 4.x no están afectadas por este problema.
Medidas de Mitigación Recomendadas
Daniel Hugens, líder del equipo de criptógrafos de Proton y desarrollador principal de OpenPGP.js, recomienda implementar un proceso de verificación en dos etapas mientras se aplican las actualizaciones: primero realizar el descifrado sin verificationKeys y posteriormente verificar la firma mediante openpgp.verify de forma independiente.
Este incidente subraya la importancia crítica de mantener actualizadas las bibliotecas criptográficas y realizar auditorías regulares de seguridad. Se insta a todas las organizaciones que utilizan OpenPGP.js a actualizar inmediatamente sus sistemas a las últimas versiones parcheadas y revisar sus implementaciones de verificación de firmas para garantizar la integridad de sus comunicaciones seguras.