mbed TLS up to 3.6.3 mbedtls_lms_verify missing cryptographic step

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
3.4$0-$5k0.00

Summaryinfo

A vulnerability marked as problematic has been reported in mbed TLS up to 3.6.3. The affected element is the function mbedtls_lms_verify. The manipulation leads to missing cryptographic step. This vulnerability is traded as CVE-2025-49600. It is possible to launch the attack on the physical device. There is no exploit available. It is suggested to upgrade the affected component.

Detailsinfo

A vulnerability was found in mbed TLS up to 3.6.3 and classified as problematic. This issue affects the function mbedtls_lms_verify. The manipulation with an unknown input leads to a missing cryptographic step vulnerability. Using CWE to declare the problem leads to CWE-325. The product does not implement a required step in a cryptographic algorithm, resulting in weaker encryption than advertised by the algorithm. Impacted is integrity. The summary by CVE is:

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.

The advisory is shared at github.com. The identification of this vulnerability is CVE-2025-49600 since 06/06/2025. The exploitation is known to be difficult. An attack has to be approached locally. No form of authentication is needed for a successful exploitation. Technical details are known, but no exploit is available. MITRE ATT&CK project uses the attack technique T1600 for this issue.

Upgrading to version 3.6.4 eliminates this vulnerability.

The vulnerability is also documented in the vulnerability database at EUVD (EUVD-2025-20080). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Productinfo

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 3.4
VulDB Meta Temp Score: 3.4

VulDB Base Score: 2.0
VulDB Temp Score: 1.9
VulDB Vector: 🔒
VulDB Reliability: 🔍

CNA Base Score: 4.9
CNA Vector (MITRE): 🔒

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍

Exploitinginfo

Class: Missing cryptographic step
CWE: CWE-325
CAPEC: 🔒
ATT&CK: 🔒

Physical: Yes
Local: Yes
Remote: No

Availability: 🔒
Status: Not defined

EPSS Score: 🔒
EPSS Percentile: 🔒

Price Prediction: 🔍
Current Price Estimation: 🔒

0-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: mbed TLS 3.6.4

Timelineinfo

06/06/2025 CVE reserved
07/04/2025 +28 days Advisory disclosed
07/04/2025 +0 days VulDB entry created
06/06/2026 +337 days VulDB entry last update

Sourcesinfo

Advisory: github.com
Status: Confirmed

CVE: CVE-2025-49600 (🔒)
GCVE (CVE): GCVE-0-2025-49600
GCVE (VulDB): GCVE-100-314969
EUVD: 🔒

Entryinfo

Created: 07/04/2025 18:49
Updated: 06/06/2026 04:01
Changes: 07/04/2025 18:49 (62), 07/04/2025 19:12 (1), 06/06/2026 04:01 (1)
Complete: 🔍
Cache ID: 216::103

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you know our Splunk app?

Download it now for free!