What’s Vulnerable › Vulnerabilities
CVE-2022-39299: Signature bypass via multiple root elements in Passport-SAML
- Severity: high (CVSS 8.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 4.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2022-10-12 · updated 2026-06-17
- Weakness: CWE-347
Description
Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. A remote attacker may be able to bypass SAML authentication on a website using passport-saml. A successful attack requires that the attacker is in possession of an arbitrary IDP signed XML element. Depending on the IDP used, fully unauthenticated attacks (e.g without access to a valid user) might also be feasible if generation of a signed message can be triggered. Users should upgrade to passport-saml version 3.2.2 or newer. The issue was also present in the beta releases of `node-saml` before version 4.0.0-beta.5. If you cannot upgrade, disabling SAML authentication may be done as a workaround.
Affected products
- node-saml passport-saml: before 3.2.2; 4.0.0-beta1, 4.0.0-beta2, 4.0.0-beta3, 4.0.0-beta4 — fixed in 3.2.2
How to fix
Upgrade to a fixed version: node-saml passport-saml 3.2.2. Check the vendor advisory for mitigations.
References
- http://packetstormsecurity.com/files/169826/Node-saml-Root-Element-Signature-Bypass.html
- https://github.com/node-saml/passport-saml/commit/8b7e3f5a91c8e5ac7e890a0c90bc7491ce33155e
- https://github.com/node-saml/passport-saml/security/advisories/GHSA-m974-647v-whv7
- http://packetstormsecurity.com/files/169826/Node-saml-Root-Element-Signature-Bypass.html
- https://github.com/node-saml/passport-saml/commit/8b7e3f5a91c8e5ac7e890a0c90bc7491ce33155e
- https://github.com/node-saml/passport-saml/security/advisories/GHSA-m974-647v-whv7
Get alerted when CVE-2022-39299 or the next vulnerability affects your stack