CVE-2025-66568 PUBLISHED

ruby-saml Libxml2 Canonicalization errors can bypass Digest/Signature validation

Assigner: GitHub_M
Reserved: 04.12.2025 Published: 09.12.2025 Updated: 09.12.2025

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.

Metrics

CVSS Vector: 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
CVSS Score: 9.3

Product Status

Vendor SAML-Toolkits
Product ruby-saml
Versions
  • Version < 1.18.0 is affected

References

Problem Types

  • CWE-347: Improper Verification of Cryptographic Signature CWE