Loading...
Skip to main content

CVE-2025-29775 — Vulnerability in xml-crypto — CVE Details

CRITICAL

xml-crypto Vulnerable to XML Signature Verification Bypass via DigestValue Comment

Published March 14, 2025Updated September 10, 2026Source: osv

Summary

# Impact An attacker may be able to exploit this vulnerability to bypass authentication or authorization mechanisms in systems that rely on xml-crypto for verifying signed XML documents. The vulnerability allows an attacker to modify a valid signed XML message in a way that still passes signature verification checks. For example, it could be used to alter critical identity or access control attributes, enabling an attacker to escalate privileges or impersonate another user. # Patches All versions <= 6.0.0 are affected. Please upgrade to version 6.0.1. If you are still using v2.x or v3.x please upgrade to the associated patch version. # Indicators of Compromise When logging XML payloads, check for the following indicators. If the payload includes encrypted elements, ensure you analyze the decrypted version for a complete assessment. (If encryption is not used, analyze the original XML document directly). This applies to various XML-based authentication and authorization flows, such as SAML Response payloads. ### Presence of Comments in `DigestValue` A `DigestValue` should **not** contain comments. If you find comments within it, this may indicate tampering. **Example of a compromised `DigestValue`:** ```xml <DigestValue> <!--TBlYWE0ZWM4ODI1NjliYzE3NmViN2E1OTlkOGDhhNmI=--> c7RuVDYo83z2su5uk0Nla8DXcXvKYKgf7tZklJxL/LZ= </DigestValue> ``` ### Code to test Pass in the decrypted version of the document ```js decryptedDocument = ... // yours to implement const digestValues = xpath.select( "//*[local-name()='DigestValue'][count(node()) > 1]", decryptedDocument, ); if (digestValues.length > 0) { // Compromise detected, yours to implement } ```

Advisory Timeline

  • First published March 14, 2025 (577 days ago).
  • Last revised September 10, 2026 — 544 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

npm
Update xml-crypto to 3.2.1 or later
npm install xml-crypto@3.2.1
npm
Update xml-crypto to 2.1.6 or later
npm install xml-crypto@2.1.6
npm
Update xml-crypto to 6.0.1 or later
npm install xml-crypto@6.0.1

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (3)

Affects 1 ecosystem: npm (1).

PackageEcosystemAffectedFixed In
xml-crypto
npm
All versions3.2.1
xml-crypto
npm
All versions2.1.6
xml-crypto
npm
All versions6.0.1

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

  • CWE-347
    Improper Verification of Cryptographic SignatureMITRE

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 9.8 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
—
Confidentiality
—
Integrity
—
Availability
—

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Frequently Asked Questions

What is CVE-2025-29775?
xml-crypto Vulnerable to XML Signature Verification Bypass via DigestValue Comment This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 9.8/10).
How do I check if my project is affected by CVE-2025-29775?
CVE-2025-29775 affects xml-crypto. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2025-29775 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
9.8

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-x3m8-899r-f7c3

Related CVEs

  • CVE-2024-32962
    CRITICAL

    xml-crypto vulnerable to XML signature verification bypass due improper verification of signature/signature spoofing

  • CVE-2025-29774
    CRITICAL

    xml-crypto Vulnerable to XML Signature Verification Bypass via Multiple SignedInfo References

  • CVE-2026-107722
    CRITICAL

    fast-jwt: Incomplete patch of CVE-2026-34950: Non-whitespace key-prefix re-enables RSA→HS256 algorithm confusion

  • CVE-2026-108261
    CRITICAL

    TinaCMS admin preview iframe loads an attacker-controlled origin from the URL fragment

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies