ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. An authentication bypass vulnerability was found in ruby-saml prior to versions 1.12.4 and 1.18.0 due to a parser differential. ReXML and Nokogiri parse XML differently, the parsers can generate entirely different document structures from the same XML input. That allows an attacker to be able to execute a Signature Wrapping attack. This issue may lead to authentication bypass. Versions 1.12.4 and 1.18.0 contain a patch for the issue.
CVE-2025-25292
This critical-severity CVE scores 9.8 under NVD CVSS v3. EPSS exploit probability: 4.1%, top 11% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High exploitation likelihood — EPSS 64%
A fix is available — apply it.
- CVSS v3
- 9.8
- EG Score
- 9.8(medium)
- EPSS
- 99.1%
- KEV
- Not listed
Published
March 12, 2025
Last Modified
November 3, 2025
Advisory Details (10)
Auto-updated May 31, 2026GHSL-2024-329_GHSL-2024-330: Authentication bypasses in ruby-saml - CVE-2025-25291, CVE-2025-25292 | GitHub Security Lab
https://securitylab.github.com/advisories/GHSL-2024-329_GHSL-2024-330_ruby-samlSAML roulette: the hacker always wins | PortSwigger Research
https://portswigger.net/research/saml-roulette-the-hacker-always-winsSignature Wrapping Attack issue on ruby-saml · Advisory · omniauth/omniauth-saml · GitHub
https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-hw46-3hmr-x9xvSAML authentication bypass due to namespace handling (parser differential) · Advisory · SAML-Toolkits/ruby-saml · GitHub
https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-754f-8gm6-c4r21.18.0 (Mar 12, 2025)
Patch available: SAML-Toolkits/ruby-saml v1.18.0
https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.01.12.4 (Mar 12, 2025)
Patch available: SAML-Toolkits/ruby-saml v1.12.4
https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4commit e9c1cdbd0f9a (SAML-Toolkits/ruby-saml)
Patch available: SAML-Toolkits/ruby-saml v1.18.0 (contains commit e9c1cdbd0f9a)
https://github.com/SAML-Toolkits/ruby-saml/commit/e9c1cdbd0f9afa467b585de279db0cbd0fb8ae97commit e76c5b36bac4 (SAML-Toolkits/ruby-saml)
Patch available: SAML-Toolkits/ruby-saml v1.12.4 (contains commit e76c5b36bac4)
https://github.com/SAML-Toolkits/ruby-saml/commit/e76c5b36bac40aedbf1ba7ffaaf495be63328cd9Sign in as anyone: Bypassing SAML SSO authentication with parser differentials - The GitHub Blog
https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentialsGitLab release notes | GitLab Docs
https://about.gitlab.com/releases/2025/03/12/patch-release-gitlab-17-9-2-releasedVendor Advisories for CVE-2025-25292(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Patch Availability(1)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| ubuntu | ruby-saml (1.11.0-1ubuntu0.1+esm1) @ focal | 2026-05-30 | ubuntu |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(1 across 1 ecosystem)
RubyGems(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| ruby-saml | 0.0.5 ... 1.9.0 (81 versions) | 1.12.4 | — |
Weakness Classification(2)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
All Vendor Advisories
(1)
Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.
Data Freshness Timeline
(refreshed 5× in last 7d / 32× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-07 07:51 UTCOSV refresh
- 2026-07-06 02:22 UTCEPSS rescore
- 2026-07-06 02:22 UTCEPSS rescore
- 2026-07-04 06:30 UTCEPSS rescore
- 2026-07-01 15:06 UTCEPSS rescore
- 2026-06-28 04:55 UTCEPSS rescore
- 2026-06-28 04:55 UTCEPSS rescore
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-23 21:32 UTCEPSS rescore
- 2026-06-23 21:32 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-18 18:44 UTCOSV refresh
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-17 17:52 UTCEPSS rescore
- 2026-06-16 17:52 UTCEPSS rescore
- 2026-06-16 17:52 UTCEPSS rescore
- 2026-06-15 17:48 UTCEPSS rescore
- 2026-06-14 23:17 UTCEPSS rescore
- 2026-06-13 22:59 UTCEPSS rescore
- 2026-06-12 23:11 UTCEPSS rescore
Show 27 moreShow fewer
- 2026-06-11 13:59 UTCEPSS rescore
- 2026-06-10 22:18 UTCEPSS rescore
- 2026-06-10 13:22 UTCEPSS rescore
- 2026-06-08 14:16 UTCEPSS rescore
- 2026-06-08 14:16 UTCEPSS rescore
- 2026-06-07 15:24 UTCEPSS rescore
- 2026-06-07 15:24 UTCEPSS rescore
- 2026-06-06 13:47 UTCEPSS rescore
- 2026-06-06 13:47 UTCEPSS rescore
- 2026-06-05 22:46 UTCEPSS rescore
- 2026-06-05 22:46 UTCEPSS rescore
- 2026-06-05 06:10 UTCEPSS rescore
- 2026-06-05 06:10 UTCEPSS rescore
- 2026-06-04 13:11 UTCEPSS rescore
- 2026-06-04 13:11 UTCEPSS rescore
- 2026-06-02 20:12 UTCEPSS rescore
- 2026-06-02 20:12 UTCEPSS rescore
- 2026-06-01 13:51 UTCEPSS rescore
- 2026-06-01 13:51 UTCEPSS rescore
- 2026-05-31 22:30 UTCEPSS rescore
- 2026-05-31 22:30 UTCEPSS rescore
- 2026-05-31 00:16 UTCEPSS rescore
- 2026-05-31 00:16 UTCEPSS rescore
- 2026-05-30 09:37 UTCEG score recompute
- 2026-05-30 09:37 UTCVendor advisory
- 2026-05-29 16:50 UTCOSV refresh
- 2026-05-29 13:44 UTCEPSS rescore
Frequently asked(5)
What is CVE-2025-25292?
When was CVE-2025-25292 disclosed?
Is CVE-2025-25292 actively exploited?
What is the CVSS score of CVE-2025-25292?
How do I remediate CVE-2025-25292?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2025-25292
Is Your Infrastructure Affected by CVE-2025-25292?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.