Etyczni hakerzy pomogli Microsoft załatać jedną z podatności usługi Azure

Badacze z Wiz odkryli błąd bezpieczeństwa i powiedzieli, że błąd – który nazwali BingBang – był spowodowany błędną konfiguracją autoryzacji przez Microsoft dla własnych aplikacji multi-tenant w AAD.

Aplikacje korzystające z AAD mogą być skonfigurowane jako single-tenant lub multi-tenant. Aplikacje typu multi-tenant pozwalają na logowanie się z potencjalnie każdego użytkownika Azure. Obowiązkiem dewelopera jest przeprowadzenie dodatkowych kontroli autoryzacji i podjęcie decyzji, którzy użytkownicy powinni mieć dostęp do aplikacji.

Jednak jak zauważył jeden z badaczy, Hillai Ben-Sasson, w serii tweetów dotyczących ścieżki ataku, “pojedyncze pole wyboru jest wszystkim, co dzieli aplikację od stania się ‘multi-tenant’.” Na łamach bloga opisał to zaś jako “podręcznikowy przykład zamieszania związanego z Shared Responsibility”.

“Ta skomplikowana architektura nie zawsze jest oczywista dla programistów, a odpowiedzialność za walidację tokenów użytkowników końcowych jest niejasna” – napisał Ben-Sasson. “W rezultacie błędy w konfiguracji i walidacji są dość powszechne”.

W rzeczywistości, 25 procent wszystkich aplikacji multi-tenant, które zespół Wiz przeskanował, było podatnych na ten rodzaj obejścia uwierzytelniania, jak zostało to powiedziane.

Zespół “zauważył kilka” źle skonfigurowanych aplikacji zarządzanych przez Microsoft, w tym jedną o nazwie Bing Trivia. Badacze stworzyli nowe konto i byli w stanie zalogować się do Bing Trivia, gdzie znaleźli system zarządzania treścią (CMS) i zmienili zapytanie “najlepsze ścieżki dźwiękowe” – zmieniając pierwszą pozycję, Dune (2021), na ulubioną przez zespół, Hackers (1995). Zmieniony wynik natychmiast pojawił się na Bingu.

“To udowodniło, że możemy kontrolować wyniki wyszukiwania Binga, a jak później potwierdziliśmy, kontrola ta objęła również zawartość strony głównej Binga” – powiedział Ben-Sasson.

Po zmianie wyników wyszukiwania badacze chcieli sprawdzić, czy możliwe jest wykorzystanie tej słabości bezpieczeństwa do przeprowadzenia ataków typu cross-site scripting (XSS), które polegałyby na uruchomieniu przez złośliwych użytkowników złośliwego kodu skryptowego w przeglądarce ofiary poprzez wstrzyknięcie danych do zaufanej strony Microsoftu. Kod ten mógłby, na przykład, potencjalnie uzyskać dostęp do konta ofiary i przenieść się na nie, gdyby został pomyślnie wykonany w jej przeglądarce, gdy odwiedziła ona zatrutą przez zespół stronę.

Wiz zauważył, że sekcja “Work” Binga pozwala użytkownikom przeszukiwać ich dane Office 365 (obecnie znane jako Microsoft 365) i że sekcja ta opierała się na Office 365 API. “Jeden konkretny punkt końcowy tworzył tokeny JWT dla Office 365 API, więc wygenerowaliśmy nowy payload XSS za pośrednictwem tego punktu końcowego” – napisał Ben-Sasson.

Oprócz Bing Trivia, Wiz znalazł inne wewnętrzne aplikacje zarządzane przez Microsoft z podobnymi błędnymi konfiguracjami.

Badacze zgłosili swoje odkrycia do Microsoftu, który wydał poprawki dla wszystkich tych aplikacji i przyznał Wizowi 40 000 dolarów bug bounty. Zespół twierdzi, że zamierza przekazać nagrodę na szczytny cel.