{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-25291","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","state":"PUBLISHED","assignerShortName":"GitHub_M","dateReserved":"2025-02-06T17:13:33.122Z","datePublished":"2025-03-12T20:16:12.181Z","dateUpdated":"2025-11-03T19:44:59.719Z"},"containers":{"cna":{"title":"ruby-saml vulnerable to SAML authentication bypass due to DOCTYPE handling (parser differential)","problemTypes":[{"descriptions":[{"cweId":"CWE-347","lang":"en","description":"CWE-347: Improper Verification of Cryptographic Signature","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-436","lang":"en","description":"CWE-436: Interpretation Conflict","type":"CWE"}]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"HIGH","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":9.3,"baseSeverity":"CRITICAL","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","version":"4.0"}}],"references":[{"name":"https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-4vc4-m8qh-g8jm","tags":["x_refsource_CONFIRM"],"url":"https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-4vc4-m8qh-g8jm"},{"name":"https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-hw46-3hmr-x9xv","tags":["x_refsource_MISC"],"url":"https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-hw46-3hmr-x9xv"},{"name":"https://github.com/SAML-Toolkits/ruby-saml/commit/e76c5b36bac40aedbf1ba7ffaaf495be63328cd9","tags":["x_refsource_MISC"],"url":"https://github.com/SAML-Toolkits/ruby-saml/commit/e76c5b36bac40aedbf1ba7ffaaf495be63328cd9"},{"name":"https://github.com/SAML-Toolkits/ruby-saml/commit/e9c1cdbd0f9afa467b585de279db0cbd0fb8ae97","tags":["x_refsource_MISC"],"url":"https://github.com/SAML-Toolkits/ruby-saml/commit/e9c1cdbd0f9afa467b585de279db0cbd0fb8ae97"},{"name":"https://about.gitlab.com/releases/2025/03/12/patch-release-gitlab-17-9-2-released","tags":["x_refsource_MISC"],"url":"https://about.gitlab.com/releases/2025/03/12/patch-release-gitlab-17-9-2-released"},{"name":"https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentials","tags":["x_refsource_MISC"],"url":"https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentials"},{"name":"https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4","tags":["x_refsource_MISC"],"url":"https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4"},{"name":"https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.0","tags":["x_refsource_MISC"],"url":"https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.0"},{"name":"https://portswigger.net/research/saml-roulette-the-hacker-always-wins","tags":["x_refsource_MISC"],"url":"https://portswigger.net/research/saml-roulette-the-hacker-always-wins"},{"name":"https://securitylab.github.com/advisories/GHSL-2024-329_GHSL-2024-330_ruby-saml","tags":["x_refsource_MISC"],"url":"https://securitylab.github.com/advisories/GHSL-2024-329_GHSL-2024-330_ruby-saml"}],"affected":[{"vendor":"SAML-Toolkits","product":"ruby-saml","versions":[{"version":"< 1.12.4","status":"affected"},{"version":">= 1.13.0, < 1.18.0","status":"affected"}]}],"providerMetadata":{"orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M","dateUpdated":"2025-09-12T19:07:07.030Z"},"descriptions":[{"lang":"en","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 fix the issue."}],"source":{"advisory":"GHSA-4vc4-m8qh-g8jm","discovery":"UNKNOWN"}},"adp":[{"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2025-04-03T20:06:31.066662Z","id":"CVE-2025-25291","options":[{"Exploitation":"poc"},{"Automatable":"yes"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2025-04-03T20:06:50.415Z"}},{"title":"CVE Program Container","references":[{"url":"https://security.netapp.com/advisory/ntap-20250314-0010/"},{"url":"https://news.ycombinator.com/item?id=43374519"},{"url":"https://lists.debian.org/debian-lts-announce/2025/04/msg00011.html"}],"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2025-11-03T19:44:59.719Z"}}]}}