Atak MarioNET pozwala hakerom kontrolować Twoją przeglądarkę, nawet po opuszczeniu strony ataku

Rozwój technologii sieciowych otworzył nowe możliwości w Internecie. Przeglądarki stały się bardziej zaawansowane, gdy pojawiły się nowe interfejsy API i wprowadzono obsługę niektórych funkcji.

Nowy atak, nazwany MarioNET przez badaczy, którzy go odkryli, podkreśla, że ​​interfejsy API mogą być również nadużywane, jeśli nie zostaną wprowadzone odpowiednie zabezpieczenia (tak jest obecnie).

Atak polega na istniejących interfejsach API HTML5 obsługiwanych przez wszystkie nowoczesne przeglądarki internetowe. Nie wymaga instalacji oprogramowania ani interakcji użytkownika i utrzymuje się nawet po opuszczeniu strony internetowej, na której powstał atak.

Atakujący może nadużywać zasoby komputera do wszelkiego rodzaju działań, w tym ataków DDOS, operacji kopania kryptograficznego lub łamania haseł.

Aktualizacja : Znajdziesz tu głos krytyczny przeciwko scenariuszowi opisanemu w niniejszym dokumencie badawczym. Główną kwestią krytyki jest to, że metoda ataku opiera się na funkcji o nazwie PeriodicSync i że w tym momencie nie jest częścią żadnej specyfikacji. Koniec

MarioNET korzysta z usług pracowników, skryptów, które działają niezależnie od odwiedzanych stron internetowych i w tle, w ataku. Główną ideą stojącą za Service Workers jest przeniesienie niektórych obliczeń do osobnego wątku, aby nie blokował ani nie spowalniał aplikacji lub strony internetowej, z którą użytkownik wchodzi w interakcje.

Cykl życia pracowników serwisu jest całkowicie niezależny od strony, na której zostały utworzone. Pracownicy serwisu nie mają dostępu do modelu DOM (Document Object Model) strony internetowej oraz zmiennych i funkcji strony nadrzędnej.

Korzystanie z pracowników serwisowych izoluje system od strony internetowej, z której pochodzi, zapewnia atakującemu stałą kontrolę i utrudnia użytkownikom wykrycie tego, co się dzieje.

W szczególności nasz system spełnia trzy ważne cele:

(i) izolacja od odwiedzanej strony internetowej, umożliwiająca dokładną kontrolę wykorzystywanych zasobów; (ii) wytrwałość, nieprzerwane kontynuowanie działania w tle, nawet po zamknięciu zakładki nadrzędnej; oraz (iii) unikanie, unikanie wykrycia przez rozszerzenia przeglądarki, które próbują monitorować aktywność strony lub komunikację wychodzącą.

MarioNET rejestruje pracownika serwisu, gdy użytkownik odwiedza stronę internetową, na której mogą się pojawić ataki. Możliwości rozprzestrzeniania ataku obejmują tworzenie złośliwych witryn, hakowanie witryn lub korzystanie z reklam.

Przeglądarki dostarczają użytkownikom niewiele informacji o pracownikach usług; w rzeczywistości przeglądarki nie zwracają uwagi na tworzenie nowych pracowników serwisowych w witrynach. Nie ma alertu, monitu ani nawet opcji wyświetlenia monitu o zgodę użytkownika podczas tworzenia pracowników serwisowych.

Jedynym żądaniem ujawniającym istnienie pracownika serwisu jest początkowe żądanie GET w momencie pierwszej wizyty użytkownika na stronie, kiedy pracownik serwisu zostaje wstępnie zarejestrowany. Chociaż podczas tego żądania GET rozszerzenie monitorowania może obserwować zawartość pracownika serwisu, nadal nie będzie obserwować żadnego podejrzanego kodu - kod, który wykona szkodliwe zadania, jest dostarczany do Sługi dopiero po jego pierwszej komunikacji z Puppeteer, oraz ta komunikacja jest ukryta przed rozszerzeniami przeglądarki

MarioNET szczególnie niepokoi to to, że nadal działa w tle po zamknięciu witryny, z której pochodzi atak. Kontrola kończy się, gdy przeglądarka internetowa jest zamknięta; naukowcy znaleźli również sposób na przezwyciężenie tego, ale wymaga to interakcji użytkownika, ponieważ używa do tego interfejsu API Web Push.

Ochrona

Większość współczesnych przeglądarek zawiera opcje wyświetlania istniejących pracowników serwisowych. Użytkownicy Firefoksa mogą załadować około: serviceworkers lub about: debuggowanie # workers, a użytkownicy Chrome mogą załadować chrome: // serviceworker-internals / w tym celu.

Możesz wyrejestrować dowolnego pracownika serwisu, korzystając z funkcji dostarczonych na tych stronach. Użytkownicy Firefoksa mogą całkowicie wyłączyć pracowników serwisowych.

Pamiętaj, że może to wpłynąć na funkcjonalność witryn, które używają go do legalnych celów. Musisz ustawić preferencję dom.serviceWorkers.enabled na false na about: config.

Niektóre rozszerzenia przeglądarki, np. Service Worker Detector dla Chrome i Firefox, powiadamiają użytkowników, gdy strona internetowa zarejestruje Service Worker.

Teraz ty : czy twórcy przeglądarek powinni wdrożyć dodatkowe zabezpieczenia? (przez ZDNet)