CVE-2025-66568
CriticalSummary
The ruby-saml library implements the client side of a SAML authorization. Versions up to and including 1.12.4 are vulnerable to authentication bypass through the libxml2 canonicalization process used by Nokogiri for document transformation, which allows an attacker to execute a Signature Wrapping attack. When libxml2's canonicalization is invoked on an invalid XML input, it may return an empty string rather than a canonicalized node. ruby-saml then proceeds to compute the DigestValue over this empty string, treating it as if canonicalization succeeded. This issue is fixed in version 1.18.0.
Risk Assessment
An attacker can bypass SAML authentication, leading to unauthorized access to systems and data.
Recommendation
Update ruby-saml to version 1.18.0 or later, which includes the fix.
Other vulnerabilities in ruby-saml
See all- CVE-2016-5697High
Ruby-saml before version 1.3.0 allows attackers to perform XML signature wrapping attacks via unspecified vectors.
- CVE-2025-66567Critical
The ruby-saml library up to version 1.12.4 contains an authentication bypass vulnerability due to an incomplete fix for CVE-2025-25292. Differences in XML parsing between ReXML and Nokogiri allow an attacker to perform a Signature Wrapping attack. The issue is fixed in version 1.18.0.
Original NVD description (English source)
The ruby-saml library implements the client side of an SAML authorization. Versions up to and including 1.12.4, are vulnerable to authentication bypass through the libxml2 canonicalization process used by Nokogiri for document transformation, which allows an attacker to execute a Signature Wrapping attack. When libxml2’s canonicalization is invoked on an invalid XML input, it may return an empty string rather than a canonicalized node. ruby-saml then proceeds to compute the DigestValue over this empty string, treating it as if canonicalization succeeded. This issue is fixed in version 1.18.0.

