Wpływ podatności w Ruby-SAML, umożliwiającej obejście autoryzacji w GitLab

Opublikowane zostały aktualizacje platformy GitLab do współpracy w wersjach 17.3.3, 17.2.6 i 17.1.8, które eliminują krytyczną lukę umożliwiającą obejście uwierzytelniania opartego na SAML (Security Assertion Markup Language). Problem spowodowany jest luką (CVE-2024-45409) w bibliotekach Ruby, ruby-saml i omniauth-saml, które realizują kliencką część autoryzacji SAML. Luka ta została oceniona na maksymalny poziom niebezpieczeństwa 10 w skali 10. Problem rozwiązano w aktualizacjach pakietów ruby-saml (1.17.0 i 1.12.3) oraz omniauth-saml (2.2.0).

Luka ta wynika z nieprawidłowego przetwarzania selektora XPath, co prowadzi do błędnej weryfikacji podpisu w formacie XML podczas rozpakowywania odpowiedzi z serwera SAML. Nieautoryzowany atakujący, mający dostęp do dowolnego podpisanego dokumentu SAML, może sfałszować dowolną odpowiedź SAML dla dowolnej treści, wykorzystując typowy atak XSW (XML Signature Wrapping).

Esencją ataku jest wzięcie poprawnie podpisanej wiadomości i dodanie do powiązanego dokumentu XML dodatkowej fikcyjnej wiadomości, używając w niej tego samego identyfikatora, co w pierwszej wiadomości (ten identyfikator zostanie zweryfikowany przy rozpakowywaniu pierwszej wiadomości i z powodu błędu zostanie uznany za zweryfikowany także dla drugiej wiadomości). W kontekście serwisów korzystających z SAML do autoryzacji, luka ta pozwala na zalogowanie się do systemu jako dowolny użytkownik.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster