{ "data_version": "4.0", "data_type": "CVE", "data_format": "MITRE", "CVE_data_meta": { "ID": "CVE-2025-25292", "ASSIGNER": "security-advisories@github.com", "STATE": "PUBLIC" }, "description": { "description_data": [ { "lang": "eng", "value": "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." } ] }, "problemtype": { "problemtype_data": [ { "description": [ { "lang": "eng", "value": "CWE-347: Improper Verification of Cryptographic Signature", "cweId": "CWE-347" } ] }, { "description": [ { "lang": "eng", "value": "CWE-436: Interpretation Conflict", "cweId": "CWE-436" } ] } ] }, "affects": { "vendor": { "vendor_data": [ { "vendor_name": "SAML-Toolkits", "product": { "product_data": [ { "product_name": "ruby-saml", "version": { "version_data": [ { "version_affected": "=", "version_value": "< 1.12.4" }, { "version_affected": "=", "version_value": ">= 1.13.0, < 1.18.0" } ] } } ] } } ] } }, "references": { "reference_data": [ { "url": "https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-754f-8gm6-c4r2", "refsource": "MISC", "name": "https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-754f-8gm6-c4r2" }, { "url": "https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-hw46-3hmr-x9xv", "refsource": "MISC", "name": "https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-hw46-3hmr-x9xv" }, { "url": "https://github.com/SAML-Toolkits/ruby-saml/commit/e76c5b36bac40aedbf1ba7ffaaf495be63328cd9", "refsource": "MISC", "name": "https://github.com/SAML-Toolkits/ruby-saml/commit/e76c5b36bac40aedbf1ba7ffaaf495be63328cd9" }, { "url": "https://github.com/SAML-Toolkits/ruby-saml/commit/e9c1cdbd0f9afa467b585de279db0cbd0fb8ae97", "refsource": "MISC", "name": "https://github.com/SAML-Toolkits/ruby-saml/commit/e9c1cdbd0f9afa467b585de279db0cbd0fb8ae97" }, { "url": "https://about.gitlab.com/releases/2025/03/12/patch-release-gitlab-17-9-2-released", "refsource": "MISC", "name": "https://about.gitlab.com/releases/2025/03/12/patch-release-gitlab-17-9-2-released" }, { "url": "https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentials", "refsource": "MISC", "name": "https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentials" }, { "url": "https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4", "refsource": "MISC", "name": "https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4" }, { "url": "https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.0", "refsource": "MISC", "name": "https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.0" }, { "url": "https://portswigger.net/research/saml-roulette-the-hacker-always-wins", "refsource": "MISC", "name": "https://portswigger.net/research/saml-roulette-the-hacker-always-wins" } ] }, "source": { "advisory": "GHSA-754f-8gm6-c4r2", "discovery": "UNKNOWN" } }