Książka sekuraka o bezpieczeństwie aplikacji webowych: -20% z kodem rabatowym: ksiazka-wakacje

Uniwersalny XSS (CVE-2021-34506) w funkcji tłumacza Microsoft Edge

29 czerwca 2021, 20:28 | W biegu | 1 komentarz

Historia zaczyna się dość niewinnie ot, dwóch badaczy bezpieczeństwa (Th3Pr0xyB0y i MrRajputHacker) postanowiło spróbować szczęścia w programie bug bounty serwisu Mail.ru. W dużym uproszczeniu: jest to odpowiednik naszego wp.pl czy Onetu popularna i darmowa skrzynka e-mail zaś sam serwis działa od 2001 roku.

Jak możemy się domyślać, badacze zdecydowali się akurat na ten program ze względu na dobre stawki pieniężne oferowane za znalezione podatności:

Problemem okazała się cyrylica musieli więc skorzystać z funkcji autotłumaczenia, a, jak sami stwierdzili, „większość wtyczek do przeglądarki Firefox, pełniących funkcję tłumacza, zostało usuniętych ze względu na wykryte krytyczne podatności”.

W tym miejscu testerzy bezpieczeństwa doszli do pewnego wniosku wtyczki mają uniwersalny dostęp do dowolnej witryny w przeglądarce. Na przykład jeśli jesteśmy na facebook.com, to rozszerzenie może uzyskać dostęp do pełnego DOM tej strony, plików cookie i wszystkiego, co jest możliwe za sprawą JavaScript.

Od tego momentu badacze za cel obrali program bug bounty firmy Microsoft, a konkretnie Microsoft Edge:

Wybór ten był podyktowany faktem, że MrRajputHacker znalazł już wcześniej kilka podatności w programie bug bounty Microsoftu. Badacze stwierdzili jednak, że zanim przejdą do testowania bezpieczeństwa przeglądarki i jej preinstalowanych wtyczek, spróbują skorzystać z nowej funkcji “Translator by Microsoft” na Mail.ru. Jak się okazało, payloady XSS (np. “>img src=x onerror=alert(1)>), które nie dawały żadnych rezultatów podczas testowania samego Mail.ru, uruchomiły się po przetłumaczeniu strony. Za ten stan rzeczy odpowiadała wadliwa funkcja “startPageTranslation” w preinstalowanej wtyczce Microsoft Edge:

Funkcja nie „odkażała” (sanitise) danych wejściowych, co oznacza, że istotne znaki kontrolne HTML, które pozwalają na wykonanie potencjalnie złośliwego kodu, nie są usuwane. Jako że błąd leży po stronie przeglądarki, to mamy do czynienia z uniwersalnym XSS; dzięki temu atak może zostać przeprowadzony na jakikolwiek serwis internetowy:

Duet badaczy za zidentyfikowanie i zgłoszenie podatności (CVE-2021-34506) otrzymał nagrodę w wysokości 20 000 dolarów, czyli ok. 75 455,00 PLN.

~ Jakub Bielaszewski

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. Imię

    No to niezły backdoor.

    Odpowiedz

Odpowiedz