Missing Cryptographic Step
CVE-2025-49600
Summary
In MbedTLS 3.3.0 through 3.6.3.1, "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.
- HIGH
- PHYSICAL
- HIGH
- CHANGED
- NONE
- NONE
- NONE
- NONE
CWE-325 - Missing Cryptographic Step
The product does not implement a required step in a cryptographic algorithm, resulting in weaker encryption than advertised by the algorithm.
Advisory Timeline
- Published