Missing Required Cryptographic Step Affecting mbedtls package, versions <3.6.4-r0


Severity

Recommended
low

Based on default assessment until relevant scores are available.

Threat Intelligence

EPSS
0.01% (1st percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-ALPINE321-MBEDTLS-10876089
  • published22 Jul 2025
  • disclosed4 Jul 2025

Introduced: 4 Jul 2025

NewCVE-2025-49600  (opens in a new tab)
CWE-325  (opens in a new tab)

How to fix?

Upgrade Alpine:3.21 mbedtls to version 3.6.4-r0 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream mbedtls package and not the mbedtls package as distributed by Alpine. See How to fix? for Alpine:3.21 relevant fixed versions and status.

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.