Aviso de seguridad
Nivel de peligrosidad: Alto
Descripción
JWT es un estándar abierto que define un método para transferir información de forma segura mediante la codificación y firma de datos JSON usados para la autorización y autenticación entre dos partes.
A finales de diciembre de 2022 Okta's Auth0 publicó la versión 9.0.0 de JsonWebToken que corrige la vulnerabilidad de severidad alta, que ha sido identificado como CVE-2022-23529 y permite a un actor malicioso la ejecución remota de código en un servidor, sólo si se permite que entidades no confiables modifiquen el parámetro de recuperación de claves de jwt.verify(), el cual consulta el parámetro secretOrPublicKey en el archivo Léame de la función jwt.verify(). Bajo esta condición la explotación permite escribir archivos arbitrarios en el host y ejecutar código arbitrario de forma remota.
Recursos afectados
Versiones de la biblioteca JsonWebToken 8.5.1 o anteriores.
Solución
Actualizar el paquete JsonWebToken a la versión 9.0.0.
Recomendaciones
Los proyectos de código abierto se utilizan comúnmente como la columna vertebral de muchos servicios y plataformas. Esto también se aplica a la implementación de mecanismos de seguridad confidenciales, como los JWT, que desempeñan un papel muy importante en los procesos de autenticación y autorización. Por lo tanto es necesario revisar las implementaciones para mantener la seguridad y evitar intrusiones en servicios, se recomienda por ello actualizar JWT a la versión 9.0.0.
Referencias
Disclosing a new vulnerability in JWT secret poisoning
Jsonwebtoken has insecure input validation in jwt.verify function
Vulnerabilidad de ejecución remota de código descubierta en la biblioteca JWT