Wiele luk w zabezpieczeniach SAML odkrytych w Oracle WebLogic Server przez Security Researchers w Pulse Security

Bezpieczeństwo / Wiele luk w zabezpieczeniach SAML odkrytych w Oracle WebLogic Server przez Security Researchers w Pulse Security 3 minuty czytania

Wyrocznia



Oznaczono dwie luki CVE-2018-2998 i CVE-2018-2933 zostały odkryte przez Denisa Andzakovica z PulseSecurity, który wykorzystuje Oracle WebLogic Server SAML i WLS Core Components, aby uzyskać dostęp do danych i modyfikować je w ograniczonym stopniu.

W mechanizmie uwierzytelniania dostawcy usług SAML Oracle WebLogic wykryto dwie luki. Wstawiając komentarz XML do SAMLNameIDnapastnik może zmusić dostawcę usługi SAML do zalogowania się jako inny użytkownik. Ponadto WebLogic nie wymaga podpisanych potwierdzeń SAML w konfiguracji domyślnej. Pomijając fragmenty podpisów z potwierdzenia SAML, osoba atakująca może stworzyć dowolne potwierdzenie SAML i ominąć mechanizm uwierzytelniania.



Denis Andzakovic - Pulse Security



Stwierdzono, że Oracle Fusion Middleware 12c WebLogic Server w wersji 12.2.1.3.0 jest podatny na te luki, chociaż stwierdzono, że problem dotyczy również trzech innych wersji: 10.3.6.0, 12.1.3.0 i 12.2.1.2.



W macierz oceny ryzyka opublikowane przez Oracle, luka CVE-2018-2998 została oceniona pod kątem lokalnego wykorzystania komponentu SAML. Według CVSS w wersji 3.0 , podatności tej przyznano bazowy wynik 5,4 na 10, oceniając, że ma ogólnie niski czynnik ryzyka manipulacji. W tej samej ocenie podatność CVE-2018-2933 została oceniona w celu wykorzystania komponentów WLS Core z lokalnych urządzeń serwerowych. Luce przyznano nieco niższy wynik bazowy 4,9 z możliwych 10. Firma Oracle opublikowała dokument o identyfikatorze 2421480.1 dla swoich użytkowników z instrukcjami dotyczącymi ograniczenia tej luki. Ten dokument jest dostępny dla kont administratorów Oracle po zalogowaniu.

Język Oracle Security Assertions Markup Language (SAML) opisuje strukturę, która ułatwia udostępnianie informacji uwierzytelniających na wielu urządzeniach w tej samej sieci, umożliwiając jednemu urządzeniu współdziałanie z innym. Wykonuje uwierzytelnianie i autoryzację użytkowników: czy ich poświadczenia są uzasadnione i czy mają wymagane uprawnienia do wykonywania żądanych działań. Najczęściej ten protokół jest używany do konfigurowania logowania jednokrotnego dla użytkowników, a dostawcy SAML zarządzają serwerem lub urządzeniem administratora, które przydziela te poświadczenia. Po uwierzytelnieniu i autoryzacji asercja SAML w języku XML umożliwia wykonanie zadania użytkownika. SAML 2.0 jest standardem dla tego procesu uwierzytelniania i autoryzacji na komputerach od 2005 roku i jest to standard stosowany przez serwery Oracle WebLogic w tworzonych przez nie aplikacjach.

Pracując ramię w ramię z luką wykrytą w podstawowych komponentach serwera WebLogic, stwierdzono, że obie luki wykorzystują fakt, że WebLogic nie wymaga domyślnie podpisanych potwierdzeń. Luki manipulowały mechanizmem uwierzytelniania i autoryzacji, wstawiając dowolny komentarz XML do tagu identyfikatora nazwy, zmuszając system do zezwalania na logowanie na konto innego użytkownika bez unieważniania podpisu potwierdzenia SAML, ponieważ serwer weryfikuje tylko ciąg następujący po komentarzu, jak pokazano poniżej.



attackeradmin

W ustawieniach konfiguracji serwera administratora, jeśli plik SingleSignOnServicesMBean.WantAssertionsSigned atrybut jest wyłączony lub nie jest wymagany, tak jak w przypadku domyślnym, podpis nie jest weryfikowany, a uwierzytelnianie można ominąć, aby umożliwić komuś zalogowanie się jako dowolny wybrany użytkownik. Hakerzy mogą wykorzystać tę lukę, aby uzyskać dostęp do potężnych kont w systemie, aby zakłócić ustawienia systemu, wyodrębnić dane lub uszkodzić serwery. W tej domyślnej konfiguracji, która nie wymaga podpisów, następujący kod (skrócony ze względu na czytelność) udostępniony przez Pulse Security pokazuje, jak haker może zalogować się jako „administrator”:

REDACTED REDACTED admin WLS_SP urn: oasis: names: tc: SAML: 2.0: ac: classes: PasswordProtectedTransport

Aby poradzić sobie z tą i poprzednią luką odkrytą wraz z nią, firma Oracle zwróciła się do użytkowników o zaktualizowanie odpowiedniego komponentu Oracle w swoim produkcie o aktualizację Critical Patch for Oracle Fusion Middleware z lipca 2018 r.