Pegasus nie bez powodu nazywany jest wyrafinowaną cyberbronią i kosztuje miliony dolarów. Jego twórcy włożyli sporo wysiłku w zapewnienie, że będzie skuteczny i stosowali wiele sprytnych sztuczek podczas infekcji. Oto jedna z nich.
Aby wgrać Pegasusa na telefon, trzeba najpierw uzyskać dostęp do urządzenia. Najlepiej atak przeprowadzić zdalnie – to najbezpieczniejsze dla operatora systemu. Wiąże się z tym jednak pewien istotny problem – przy zdalnym ataku często atakujący nie wie, z jakiego urządzenia korzysta ofiara. Wiedza ta jest niezbędna do użycia odpowiedniej metody infekcji, ponieważ często sam atak na telefon trzeba przystosować nie tylko do modelu urządzenia, ale i wersji oprogramowania. Numer telefonu ofiary może być relatywnie łatwy do zdobycia, lecz informacja o producencie i modelu telefonu niekoniecznie. Jak ten problem rozwiązała firma NSO, producent Pegasusa?
Pozew Facebooka i umowa z Ghany
Kilka dni temu firma ENEA, międzynarodowy dostawca usług bezpieczeństwa dla firm telekomunikacyjnych (nie mylić z polskim dostawcą energii elektrycznej o podobnej nazwie), opublikowała wyniki bardzo ciekawej analizy pewnego nietypowego rodzaju ataku. Badacze firmy przyjrzeli się dokumentowi ujawnionemu w pozwie, jaki Facebook (obecnie Meta), złożył przeciwko firmie NSO, producentowi Pegasusa. Jednym z załączników pozwu jest umowa zawarta między NSO a lokalnym pośrednikiem, firmą z Ghany, na dostarczenie platformy Pegasusa do tego kraju.
W sekcji tego dokumentu poświęconej metodom zdalnej instalacji Pegasusa znajduje się fragment opisujący narzędzia „wspomagające” proces infekcji urządzenia. Obok możliwości zarządzania linkami w SMS-ach czy fałszowania nazwy nadawcy wiadomości NSO wskazuje na usługę „MMS Fingerprint”.
Opis tej funkcji informuje, że dzięki niej można zdalnie ujawnić model urządzenia i wersję oprogramowania. Wymaga ona wysłania do celu ataku wiadomości MMS. Wiadomość ta nie musi być przez odbiorcę odczytana, odbiorca nie musi też w nic klikać, lecz wiadomość będzie widoczna jako odebrana na urządzeniu. Metoda ta obsługiwana jest w każdej kategorii urządzeń – zarówno na BlackBerry, jak i na Androidzie czy iOS-ie.
Czym jest MMS Fingerptint?
Badacze z ENEA postanowili przyjrzeć się bliżej tej ciekawie brzmiącej pozycji. Jak za pomocą wiadomości MMS odczytać informacje o telefonie odbiorcy? Zakres informacji pozyskiwanych za pomocą tej metody wskazuje na możliwość zmuszenia telefonu odbiorcy do nawiązania połączenia z serwerem HTTP napastnika i przedstawienia się danymi przeglądarki, zawierającymi często właśnie producenta i model telefonu, a czasem także wersję oprogramowania. Ale jak zmusić do tego telefon MMS-em?
Problem pomogła rozwiązać analiza protokołu MMS. Nie będziemy tu wnikać w szczegóły (chętnych odsyłamy do artykułu źródłowego), ale protokół MMS był wprowadzany w momencie, gdy nie każdy telefon go obsługiwał. Z tego powodu pierwszym krokiem komunikacji MMS jest wysłanie… SMS-a, a konkretnie SMS-a binarnego. Jego zadaniem jest poinformować telefon odbiorcy, że na serwerze dostawcy usługi czeka na niego wiadomość MMS – a nuż będzie mógł ją odebrać.
W tym właśnie SMS-ie nadawca wiadomości zawiera link do jej treści w formie graficznej. Ten plik standardowo powinien być pobrany przez odbiorcę za pomocą żądania HTTP GET z serwera jego dostawcy usługi telekomunikacyjnej. Kiedy jednak badacze z ENEA podstawili w to miejsce swój serwer i skonstruowali odpowiedniego SMS-a binarnego oraz wysłali do testowego telefonu, w odpowiedzi otrzymali połączenie HTTP z nagłówkami. Wyglądało ono tak:
Zgodnie z oczekiwaniami badaczy w nagłówkach znalazła się informacja o modelu urządzenia odbiorcy. Takie dane bez wątpienia pozwalają lepiej przygotować kolejny etap ataku, w którym dochodzi do przełamania zabezpieczeń smartfona i instalacji Pegasusa.
Skąd wiemy, że tak wyglądał rzeczywisty atak? Potwierdzenie znajdziemy w broszurze opisującej działanie Pegasusa, zawierającej poniższy schemat, dokładnie odpowiadający temu przebiegowi ataku:
Chcecie poczytać o tym, co zawierają takie wiadomości SMS czy MMS w środku? Ta prezentacja wygląda całkiem OK, opisywany scenariusz jest na slajdzie 23.
Czy ten atak można ulepszyć?
Badacze zaobserwowali także pojawienie się MMS-a na telefonie ofiary. Kiedy jednak nadali kolejnej wiadomości testowej atrybut „ukryty” (tzw. cichy SMS), ta nie pojawiła się na ekranie. Dlaczego NSO nie używało tej opcji? Badacze spekulują, że być może celem było uniknięcie wykrycia na poziomie sieci telekomunikacyjnej – tzw. ciche SMS-y bywają monitorowane przez dostawców.
ENEA dostarcza rozwiązania umożliwiające firmom telekomunikacyjnym monitorowanie ich sieci – używając tych platform, badacze sprawdzili, że tego typu ataki nie występują obecnie u tych dostawców, których obsługują. Być może twórcy Pegasusa i jego kolegów mają już inne metody identyfikacji telefonów. Warto jednak pamiętać, że SMS-y binarne mają długa historię różnych problemów bezpieczeństwa – jak wiele niezbyt znanych technologii używanych w sieciach komórkowych. Pewną ochroną przed tym atakiem jest wyłączenie pobierania zawartości wiadomości MMS, jednak nie wszystkie telefony oferują taką opcję.
To tylko jedna z ciekawostek związanych z Pegasusem
Chcesz poznać ich dużo, dużo więcej? Już wkrótce opowiem o nich na dwóch webinarach – kliknij w obrazek poniżej i zobacz program obu wydarzeń. A jest o czym opowiadać, jak np. powiązana z tym artykułem historia o tym, jak w ręce dziennikarzy trafiła lista 50 tysięcy numerów telefonów potencjalnych ofiar Pegasusa, od której zaczęła się cała związana z tym afera w Polsce.
Komentarze
„a nuż” – do delikatnej korekty :-) poza tym super!
„a nuż” – jednak prawidłowo, przepraszam! :)
Fajnie, że takie rzeczy wychodzą na jaw i można się o tym dowiedzieć, ale co z tego jak nie można temu zapobiec.
Nie da się zapobiec, bo telefony to kiepsko oprogramowane zabawki, które starają się jedynie (w ograniczonym zakresie, który opłaca się producentowi) udawać profesjonalne czy bezpieczne sprzęty. Możesz zrootować telefon i próbować stosować własne rozwiązania, ale nie unikniesz całej masy problemów związanej z tym, jak skomplikowane są obecnie systemy. Pewnym utrudnieniem dla MMS fingerprint byłaby biała lista, tj. pobieranie wiadomości tylko od numerów, którym nadamy tego typu uprawnienia (taki click-to-play, który trzeba byłoby wykonać raz na kontakt), ale który soft coś takiego implementuje? Weźmy Samsung Messages, duży producent, miliony użytkowników. Jest tylko opcja „Download automatically”, jak wyłączysz, to będziesz musiał potwierdzać pobranie *każdego* MMS-a, bez względu na to, czy od mamy, czy od nieznanego numeru. Uprawnienia z granularyzacją na kontakt – zapomnij, a komu to potrzebne, a dlaczego?
Dlatego jak tylko będę na jakimś ważnym stanowisku to do służbowej komunikacji będę używać… starej Nokii (albo innego starego telefonu działającego na J2ME) – nawet jak są jakiejś exploity na tego typu sprzęt, to nikomu się nie będzie opłacać portować Pegasusa czy podobnych na tak antyczną platformę.
Nie rób tego. Nieziemsko utrudnisz im działania operacyjne jak będziesz słał smsy otwartym tekstem i zdradzał sekrety przez GSM. Jednakże możesz ich dodatkowo zrobić w ciula vocoderem gadając np. z wanny.
Przy dzisiejszym postępie i dostępie do technologii, to powiem ci że gołąb pocztowy jest podatny na exploity, w krócie „jesteśmy zgubieni”
Mam błędny apn podany do mms w nokii, ten do internetu też zresztą.
Drugi nr tylko do internetu, nie podawany nigdzie, niezarejestrowany na mnie.Z firewallem nie wymagającym roota smartfon. Jakbym był kimś ważnym to bym wyjął z niej mikrofon i miał taki dołączany, ale starczy jak mam kamerki zasłonięte.
Stara nokia to jest jednak sztos, bo to małe, fajne i długo trzyma bateria. Nokia może leci bez szyfrowania, ale na podsłuchu ci szybko baterie zje, mikrofon sie zepsuje, anomalie łatwiej wykryć.
Dało się imeie łatwo zmieniać, ale to nielegalne no chyba że jakiś modem gsm na pciex, albo na przedłużaczu usb w paczce po pringelsach se btsa ustrzelisz.
a teraz po tym dziwnym tekscie prosz eo wskazanie jak niby mialyby zostac pobrane dane w przypadku NIE smartfona lecz zwyklej komorki???
I PO co cos instalowac w samym smartfonie,gdy o wiele peiej jest umiescic oprogramowanie w samej centrali sieci,w koputerz ezarzadzajym i miec wtedy dostep do absolitnie wszystkich danych.
Dopoki nie zostanie pokazany kod Pegasusa i jego wiarygodny algorytm,wszystkie podawane informacje sa tylko gdybaniem i wyobrazeniem piszacych.
Wychodzi na to, że jednak tylko rozwiązania sprzętowe mogą nam dziś zapewnić bezpieczną komunikację – tj. prosty telefon GSM z szyfrowaniem End-to-End. Zdaje się, że m.in. polskie wojsko z takich rozwiązań korzysta.