Menu dostępności

Bug w Google Docs pozwala na podglądanie prywatnych dokumentów

Pół roku temu, 9 lipca 2020 roku, w usługach przekazywania opinii Google została odkryta luka, którą dopiero niedawno Google oficjalnie ogłosiło i załatało. Badaczem podatności odpowiedzialnym za znalezisko jest Sreeram KL, który w ramach programu Google Vulnerability Reward otrzymał narodę 3133 USD.
Podatność mogła być wykorzystywana przez cyberprzestępców do potencjalnej kradzieży zrzutów ekranu poufnych dokumentów Google Docs tylko przez osadzanie linków do nich w złośliwej witrynie.

Wiele produktów Google, w tym Dokumenty, jest wyposażonych w opcję „Prześlij opinię” lub „Pomoc w ulepszaniu Dokumentów”, która umożliwia użytkownikom przesyłanie opinii wraz z opcją dołączenia zrzutu ekranu – usługa, która jest automatycznie ładowana do zgłoszenia w celu wyróżnienia określonych problemów.

Jednak zamiast powielać tę samą funkcjonalność w swoich usługach, funkcja „feedback” jest wdrażana w głównej witrynie Google („www.google.com”) i integrowana z innymi domenami za pośrednictwem elementu iframe, który ładuje zawartość wyskakującego okienka z „feedback.googleusercontent.com.”


Na czym polega problem?

Wyobraźmy sobie, że korzystamy z Dokumentów Google i zamierzamy przesłać opinie. W tym celu należy kliknąć opcję „Pomoc” -> „Prześlij opinię”. Następnie zobaczymy wyskakujący iframe i magicznie ładujący zrzut ekranu dokumentu, nad którym pracowaliśmy. Ponieważ źródło iframe (www.google.com) różni się pochodzeniem w dokumentach Google (docs.google.com), aby pomyślnie wyrenderować zrzut ekranu, musi istnieć komunikacja między źródłami. PostMessage, wkracza do gry! Przepływ pracy jest taki, że dokumenty Google wysyłają wartości RGB wszystkich swoich pikseli do głównej ramki iframe www.google.com za pośrednictwem PostMessage, która przekierowuje te wartości RGB do jego iframe feedback.googleusercontent.com, który następnie renderuje obraz z przesłanych pikseli i odsyła swój kod URI zakodowany w base64 do głównego elementu iframe. Wszystko widać na poniższym obrazku.

Po zakończeniu tego procesu musimy napisać opis opinii, a po kliknięciu wyślij opis wraz ze zdjęciem (data-uri) jest wysyłany za pomocą PostMessage na adres https://www.google.com.

Jednak „łowca bugów” Sreeram zidentyfikował błąd w sposobie przekazywania takich wiadomości do „feedback.googleusercontent.com”, umożliwiając w ten sposób atakującemu zmianę ramki na dowolną, zewnętrzną witrynę internetową, a następnie kradzież i przejęcie zrzutów ekranu z dokumentów, które były przeznaczone do przesłania na serwery Google.

Wada wynika z braku nagłówka X-Frame-Options w domenie Google Docs, co umożliwiło zmianę docelowego pochodzenia wiadomości i wykorzystanie komunikacji między źródłami między stroną a zawartą w niej ramką.


Na czym polega problem?

Chociaż atak wymaga pewnej formy interakcji użytkownika – np. kliknięcia przycisku „Wyślij opinię”, exploit może z łatwością wykorzystać tę słabość do przechwycenia adresu URL przesłanego zrzutu ekranu i przeniesienia go do złośliwej witryny.

Można to osiągnąć, osadzając plik Dokumentów Google w ramce iFrame w fałszywej witrynie internetowej i przechwycić wyskakującą ramkę z informacją zwrotną w celu przekierowania zawartości do domeny wybranej przez atakującego.

Rada dla deweloperów pod kątem bezpieczeństwa jest prosta – Zawsze określaj dokładne miejsce docelowe wiadomości, kiedy używasz PostMessage i nie stosuj znaku „*” do wysyłania danych do innych okien. Złośliwa witryna może zmienić lokalizację okna bez Twojej wiedzy, a co za tym idzie, przechwycić przekazywaną wiadomość.

Popularne

Ukryty most: jak błąd w Cloudflare ACME omijał zapory i odsłaniał serwery

Ukryty most: jak błąd w Cloudflare ACME omijał zapory i odsłaniał serwery

Automatyczne zarządzanie certyfikatami SSL/TLS stanowi dziś podstawę bezpiecznej komunikacji w Internecie. Kiedy więc specjaliści od cyberbezpieczeństwa z FearsOff odkryli poważną wadę w implementacji tego mec...
Uwaga na PDFSider – nowy zaawansowany malware używany przez grupy ransomware

Uwaga na PDFSider – nowy zaawansowany malware używany przez grupy ransomware

Nowo zidentyfikowana rodzina złośliwego oprogramowania o zaawansowanych możliwościach jest wykorzystywana w atakach ukierunkowanych (APT) – również przez wiele grup ransomware. Zagrożenie zostało...
Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

W dzisiejszym artykule opisujemy pewien problem istniejący w firmach i organizacjach, związany z tożsamościami nieludzkimi (non-human identities), czyli inaczej – tożsamościami niezwiązanymi z pracow...
Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie adresów URL ogranicza zawartość stron internetowych, do których użytkownicy mają dostęp. Odbywa się to poprzez blokowanie określonych adresów URL przed załadowaniem. Firmy wdrażają filtrowanie...
Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

W dzisiejszym odcinku hakowania pokażemy stary i sprawdzony, choć nieco zmodyfikowany sposób na przejęcie pełnej kontroli w Windows i to jeszcze przed zalogowaniem się do systemu (na ekranie powitalnym). Za je...