CVE-2025-47949samlify signature wrapping, forge SAML as any user
What broke
samlify below 2.10.0 did not correctly bind the XML signature to the assertion it later consumed. An attacker can wrap a valid signature around a new SAML response and authenticate as any user, including admins (CWE-347). Fixed in samlify 2.10.0.
Why it matters
The 2025 SAML story is not "Ruby is bad." It is that the most widely copied SSO libraries, in Ruby and in Node, failed the same signature-wrapping test. If your SP is a Node service using samlify (or a SaaS that embeds it), the blast radius matches ruby-saml. authentik later shipped its own ACS wrapping fix in 2025.12.5 / 2026.2.3 / 2026.5.1, which is the same pattern in a different codebase.
What to do
- Upgrade samlify to 2.10.0 or later. Check lockfiles, not just package.json ranges.
- Rotate IdP signing keys after the upgrade if the ACS was public.
- Inventory Node SPs the same way you inventory Rails SPs.
npm ls samlifyin every SSO-facing service.
After you patch
A SAML bypass means the service provider accepted an assertion it should have rejected, so anyone who exploited it authenticated as a real user and left a normal-looking log line.
- Revoke every session issued by the affected service provider, then rotate its session signing keys. Patching stops new forgeries and does nothing about sessions already minted.
- Audit administrative accounts and group memberships for changes during the exposure window. Signing in as an administrator is the point of this class, and adding a second account is the standard persistence step.
- Rotate the identity provider signing certificate if the flaw involved signature validation, and confirm the service provider pins the expected certificate rather than trusting anything in the assertion.
- Check your own implementation for the same class: exact-match comparison on verification results, rejection of unexpected signature algorithms, and audience and recency checks on every assertion. See SAML 2.0 and SAML vs OIDC.
Sources
Related identity CVEs
Related on Start with Identity
- CVEGitHub Enterprise Server SAML XML signature wrapping
A third 2024 GHES SAML path. An attacker with network access could wrap a signature and provision a privileged user. Same product, same year, same lesson: do no
- CVEHaloITSM SAML signature wrapping, log in as any user
HaloITSM accepted a wrapped SAML assertion. An attacker with one valid signature could impersonate any user, including admins. Critical. Another 2024 reminder t
- CVEruby-saml companion signature-wrapping bypass
The pair to CVE-2025-25291. A second signature-wrapping path in ruby-saml lets an attacker forge assertions and impersonate any user. The March 2025 patch was l
- Blog39% of identity CVEs are on CISA KEV, and edge appliances hold 62% of the exploited ones
SWI's Identity Vulnerability Report 2026 checked 137 identity CVEs against CISA's Known Exploited Vulnerabilities catalog and NVD. 53 are exploited, most of the
- PodcastAuth0
The late Vittorio Bertocci's interviews with the authors of OAuth, OpenID Connect, FIDO, and SAML. Ended in 2022, and still the best audio archive on identity s
- BlogExploited NetScaler SAML zero-day forces a second upgrade after the September patch
CVE-2026-88779 crashes NetScaler ADC and Gateway appliances configured as a SAML service provider or identity provider. Exploited before the fix, on CISA KEV si
Technique
This CVE is an instance of Federation trust abuse and SAML forgery. A service provider that accepts a SAML assertion it should have rejected treats a forged identity as authenticated, because the failure sits in signature validation code, not in cryptography.