Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en el algoritmo AES_CBC_HMAC_SHA2 (A128CBC-HS256, A192CBC-HS384, A256CBC-HS512) en jose (CVE-2021-29443)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
16/04/2021
Última modificación:
23/04/2021

Descripción

jose es una biblioteca npm que proporciona una serie de operaciones criptográficas. En versiones vulnerables el algoritmo AES_CBC_HMAC_SHA2 (A128CBC-HS256, A192CBC-HS384, A256CBC-HS512), el descifrado siempre ejecutaba tanto la verificación de etiquetas HMAC como el descifrado CBC, si cualquiera de los dos presentaba un fallo, "JWEDecryptionFailed" sería lanzado. Una posible diferencia observable en el tiempo cuando un error de padding podría ocurrir al descifrar el texto cifrado crea un padding oracle y un adversario podría ser capaz de hacer uso de ese oracle para descifrar datos sin conocer la clave de descifrado al emitir un promedio de 128*b llamadas padding oracle (donde b es el número de bytes en el bloque de texto cifrado). Todas las versiones de lanzamiento principales han recibido un parche que garantiza que la etiqueta HMAC se verifique antes de llevar a cabo el descifrado CBC. Las versiones fijas son ^1.28.1 || ^2.0.5 || superiores o iguales a 3.11.4. Los usuarios deben actualizar su dependencia versiones v1.x hasta ^1.28.1, su dependencia versiones v2.x hasta ^ 2.0.5 y su dependencia versiones v3.x hasta ^3.11.4. Gracias a Jason de Microsoft Vulnerability Research (MSVR) por mencionar este tema y a Eva Sarafianou (@esarafianou) por ayudar a calificar este aviso

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:jose_project:jose:*:*:*:*:*:node.js:*:* 1.0.0 (incluyendo) 1.28.1 (excluyendo)
cpe:2.3:a:jose_project:jose:*:*:*:*:*:node.js:*:* 2.0.0 (incluyendo) 2.0.5 (excluyendo)
cpe:2.3:a:jose_project:jose:*:*:*:*:*:node.js:*:* 3.0.0 (incluyendo) 3.11.4 (excluyendo)