Node-SAML SAML Signature Verification Vulnerability
Date: 2025-07
Affected: npm/@node-saml/passport-saml, npm/passport-saml, npm/@node-saml/node-saml
Attack vector: auth-bypass
Category: vulnerability-disclosure
Severity: Critical
CVE: CVE-2025-54369
CVE-2025-54419
CWE: CWE-287
CWE-347
CWE-87
CVSS: 10 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N)

Node-SAML loads the assertion from the (unsigned) original response document. This is different than the parts that are verified when checking signature. This allows an attacker to modify authentication details within a valid SAML assertion. For example, in one attack it is possible to remove any character from the SAML assertion username. To conduct the attack an attacker would need a validly signed document from the identity provider (IdP). In fixing this we made sure to process the SAML assertions from only verified/authenticated contents. This will prevent future variants from coming up. Note: this is distinct from the previous xml-crypto CVEs.


Mitigations:

Architectural layers (MAESTRO):