xml-crypto Vulnerable to XML Signature Verification Bypass via Multiple SignedInfo References
xml-crypto is an XML digital signature and encryption library for Node.js. An attacker may be able to exploit a vulnerability in versions prior to 6.0.1, 3.2.1, and 2.1.6 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 with a valid account to escalate privileges or impersonate another user. Users of versions 6.0.0 and prior should upgrade to version 6.0.1 to receive a fix. Those who are still using v2.x or v3.x should upgrade to patched versions 2.1.6 or 3.2.1, respectively.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2025-29774
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 17:54 UTC · Revision 1
Source evidence
xml-crypto Vulnerable to XML Signature Verification Bypass via Multiple SignedInfo References
core-osv · Original sourcePublished 14 Mar 2025, 17:05 UTC
xml-crypto is an XML digital signature and encryption library for Node.js. An attacker may be able to exploit a vulnerability in versions prior to 6.0.1, 3.2.1, and 2.1.6 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 with a valid account to escalate privileges or impersonate another user. Users of versions 6.0.0 and prior should upgrade to version 6.0.1 to receive a fix. Those who are still using v2.x or v3.x should upgrade to patched versions 2.1.6 or 3.2.1, respectively.
osv:CVE-2025-29774
Complete source record
{
"id": "dfd2560174a88d1b7fa35c0dcade092423ec75b87e7115f07217d39ce65afe6e",
"url": "https://osv.dev/vulnerability/CVE-2025-29774",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "xml-crypto Vulnerable to XML Signature Verification Bypass via Multiple SignedInfo References",
"summary": "xml-crypto is an XML digital signature and encryption library for Node.js. An attacker may be able to exploit a vulnerability in versions prior to 6.0.1, 3.2.1, and 2.1.6 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 with a valid account to escalate privileges or impersonate another user. Users of versions 6.0.0 and prior should upgrade to version 6.0.1 to receive a fix. Those who are still using v2.x or v3.x should upgrade to patched versions 2.1.6 or 3.2.1, respectively.",
"evidence": "osv:CVE-2025-29774",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2025-29774",
"aliases": [
"CVE-2025-29774",
"GHSA-9p8x-f768-wp2g"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "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"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/node-saml/xml-crypto",
"type": "GIT",
"events": [
{
"introduced": "07110392122a09ad8e783fa40c6580dec8d0e3db"
},
{
"fixed": "d80e5b77ade2f72225a2f324d5b54d20f4f4e396"
},
{
"introduced": "f338e7a99e19afda1946c86078e8a72313f15282"
},
{
"fixed": "92bbddf6b986ab1bfeda6841339161dd599aa31a"
},
{
"introduced": "0"
},
{
"fixed": "5d260884f48e6bc3050a7d14be13c79a5e9acdec"
},
{
"fixed": "28f92218ecbb8dcbd238afa4efbbd50302aa9aed"
},
{
"fixed": "886dc63a8b4bb5ae1db9f41c7854b171eb83aa98"
},
{
"fixed": "8ac6118ee7978b46aa56b82cbcaa5fca58c93a07"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "4.0.0"
},
{
"fixed": "6.0.1"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "3.0.0"
},
{
"fixed": "3.2.1"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "0"
},
{
"fixed": "2.1.6"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "28f92218ecbb8dcbd238afa4efbbd50302aa9aed"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "886dc63a8b4bb5ae1db9f41c7854b171eb83aa98"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "8ac6118ee7978b46aa56b82cbcaa5fca58c93a07"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "5d260884f48e6bc3050a7d14be13c79a5e9acdec"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v2.1.6"
},
{
"range": [
{
"fixed": "92bbddf6b986ab1bfeda6841339161dd599aa31a"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v3.2.1"
},
{
"range": [
{
"fixed": "d80e5b77ade2f72225a2f324d5b54d20f4f4e396"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v6.0.1"
}
]
}
}
],
"versions": [
"v6.0.0",
"v3.2.0",
"v2.1.5",
"v5.1.1",
"v5.1.0",
"v5.0.0",
"v4.1.0",
"v4.0.1",
"v4.0.0",
"v3.1.0",
"v3.0.1",
"v2.1.4",
"v3.0.0",
"v2.1.3",
"v1.5.3",
"v2.1.2",
"v2.1.1",
"v2.1.0",
"v2.0.0",
"v1.5.2",
"v1.5.1",
"v1.5.0",
"v1.4.1",
"v1.4.0",
"v1.3.0",
"v1.2.0",
"v1.1.4",
"v1.1.3",
"v1.1.2",
"v1.1.1",
"v1.1.0",
"v1.0.2",
"v1.0.1",
"v1.0.0",
"v0.9.0",
"0.9.0",
"v0.8.5",
"v0.8.4",
"v0.8.3",
"v0.8.2",
"v0.8.1",
"v0.8.0",
"V1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-29774.json"
}
}
],
"modified": "2026-10-28T02:30:31.187021408Z",
"provider": "osv",
"references": [
"https://github.com/node-saml/xml-crypto/releases/tag/v2.1.6",
"https://github.com/node-saml/xml-crypto/releases/tag/v3.2.1",
"https://github.com/node-saml/xml-crypto/releases/tag/v6.0.1",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/29xxx/CVE-2025-29774.json",
"https://github.com/node-saml/xml-crypto/security/advisories/GHSA-9p8x-f768-wp2g",
"https://nvd.nist.gov/vuln/detail/CVE-2025-29774",
"https://github.com/node-saml/xml-crypto/commit/28f92218ecbb8dcbd238afa4efbbd50302aa9aed",
"https://github.com/node-saml/xml-crypto/commit/886dc63a8b4bb5ae1db9f41c7854b171eb83aa98",
"https://github.com/node-saml/xml-crypto/commit/8ac6118ee7978b46aa56b82cbcaa5fca58c93a07",
"https://workos.com/blog/samlstorm"
],
"provider_metadata": {
"cwe_ids": [
"CWE-347"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/29xxx/CVE-2025-29774.json"
}
},
"related_cves": [
{
"value": "CVE-2025-29774",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 498053,
"published_at": "2025-03-14T17:05:53.943+00:00"
}