CVE-2025-66568
KrytyczneStreszczenie
Biblioteka ruby-saml implementuje klienta autoryzacji SAML. Wersje do 1.12.4 włącznie są podatne na obejście uwierzytelniania przez proces kanonizacji libxml2 używany przez Nokogiri do transformacji dokumentów, co pozwala atakującemu na przeprowadzenie ataku Signature Wrapping. Gdy kanonizacja libxml2 jest wywoływana na nieprawidłowym wejściu XML, może zwrócić pusty ciąg zamiast zkanonizowanego węzła. ruby-saml następnie oblicza DigestValue na tym pustym ciągu, traktując to tak, jakby kanonizacja się powiodła. Problem naprawiono w wersji 1.18.0.
Ocena ryzyka
Atakujący może obejść uwierzytelnianie SAML, co prowadzi do nieautoryzowanego dostępu do systemów i danych.
Rekomendacja
Zaktualizuj ruby-saml do wersji 1.18.0 lub nowszej, która zawiera poprawkę.
Inne podatności w ruby-saml
Zobacz wszystkie- CVE-2016-5697Wysokie
Ruby-saml przed wersją 1.3.0 umożliwia atakującym przeprowadzanie ataków związanych z opakowaniem podpisu XML za pomocą nieokreślonych wektorów.
- CVE-2025-66567Krytyczne
Biblioteka ruby-saml do wersji 1.12.4 włącznie zawiera podatność na obejście uwierzytelniania z powodu niepełnej poprawki dla CVE-2025-25292. Różnice w parsowaniu XML między ReXML i Nokogiri pozwalają atakującemu na przeprowadzenie ataku Signature Wrapping. Problem został naprawiony w wersji 1.18.0.
Oryginalny opis (angielski, źródło NVD)
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.

