CVE-2025-49600

In MbedTLS 3.3.0 before 3.6.4, mbedtls_lms_verify may accept invalid signatures if hash computation fails and internal errors go unchecked, enabling LMS (Leighton-Micali Signature) forgery in a fault scenario. Specifically, unchecked return values in mbedtls_lms_verify allow an attacker (who can induce a hardware hash accelerator fault) to bypass LMS signature verification by reusing stale stack data, resulting in acceptance of an invalid signature. In mbedtls_lms_verify, the return values of the internal Merkle tree functions create_merkle_leaf_value and create_merkle_internal_value are not checked. These functions return an integer that indicates whether the call succeeded or not. If a failure occurs, the output buffer (Tc_candidate_root_node) may remain uninitialized, and the result of the signature verification is unpredictable. When the software implementation of SHA-256 is used, these functions will not fail. However, with hardware-accelerated hashing, an attacker could use fault injection against the accelerator to bypass verification.
Configurations

Configuration 1 (hide)

cpe:2.3:a:arm:mbed_tls:*:*:*:*:*:*:*:*

History

17 Jul 2025, 15:59

Type Values Removed Values Added
References () https://github.com/Mbed-TLS/mbedtls-docs/blob/main/security-advisories/mbedtls-security-advisory-2025-06-3.md - () https://github.com/Mbed-TLS/mbedtls-docs/blob/main/security-advisories/mbedtls-security-advisory-2025-06-3.md - Third Party Advisory
CPE cpe:2.3:a:arm:mbed_tls:*:*:*:*:*:*:*:*
First Time Arm mbed Tls
Arm

08 Jul 2025, 16:18

Type Values Removed Values Added
Summary
  • (es) En MbedTLS 3.3.0 anterior a 3.6.4, mbedtls_lms_verify podía aceptar firmas no válidas si el cálculo del hash fallaba y los errores internos no se verificaban, lo que permitía la falsificación de la firma LMS (Leighton-Micali Signature) en un escenario de fallo. Específicamente, los valores de retorno no verificados en mbedtls_lms_verify permiten a un atacante (que puede inducir un fallo en el acelerador de hash de hardware) omitir la verificación de la firma LMS reutilizando datos obsoletos de la pila, lo que resulta en la aceptación de una firma no válida. En mbedtls_lms_verify, los valores de retorno de las funciones internas del árbol de Merkle create_merkle_leaf_value y create_merkle_internal_value no se verifican. Estas funciones devuelven un entero que indica si la llamada se realizó correctamente. Si se produce un fallo, el búfer de salida (Tc_candidate_root_node) puede permanecer sin inicializar, y el resultado de la verificación de la firma es impredecible. Al implementar SHA-256 en software, estas funciones no fallan. Sin embargo, con el hashing acelerado por hardware, un atacante podría usar la inyección de fallos contra el acelerador para eludir la verificación.

04 Jul 2025, 15:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-07-04 15:15

Updated : 2025-07-17 15:59


NVD link : CVE-2025-49600

Mitre link : CVE-2025-49600

CVE.ORG link : CVE-2025-49600


JSON object : View

Products Affected

arm

  • mbed_tls
CWE
CWE-325

Missing Cryptographic Step