Armia i Służby

Oko Saurona w służbie NSA

  • Ilustracja: ESA/P. Carril

Odkryte tydzień temu złośliwe oprogramowanie o nazwie Projekt Sauron jest kolejnym przykładem zaangażowania państw w działalność szpiegowską w cyberprzestrzeni. Podejrzewa się, że twórcą tego programu jest amerykańska Agencja Bezpieczeństwa Narodowego (National Security Agency).

Złośliwe oprogramowanie zostało odkryte przez pracowników Kasperky Lab, Remsec i Symantec. W swoim raporcie stwierdzili, że jest ono aktywna od 2011 roku oprogramowanie miało posiadać zaawansowane systemy minimalizujące ryzyko wykrycia. Jego twórcy mieli uważnie zbadać inne przypadki cyberszpiegostwa prowadzonego przez państwa w celu dalszej implementacji ich w Projekcie Sauron. Tak aby wykorzystać jak najwięcej zalet i uniknąć błędów popełnionych przez twórców innych wirusów.

Za stworzeniem złośliwego oprogramowania stoją najprawdopodobniej Stany Zjednoczone, ale nie można też wykluczyć któregoś z ich partnerów w ramach Sojuszu  Five Eyes złożonego z Wielkiej Brytanii, Kanady, Australii lub Nowej Zelandii. Świadczy o tym choćby kilka szczegółów.

Analizy technicznej dokonał na blogu lawfareblog Nicholas Weaver. W jego opinii, kod w którym został napisany program świadczy o tym, że Sauron został stworzony dawno temu. Miał on ulegać cały czas ewolucji oraz rozwojowi na dużą skalę. Warto wspomnieć, że to NSA była pierwszą na świecie agencją wywiadowczą tworząca zaawansowane komputerowe programy szpiegowskie. Protokoły użyte w wirusie to m.in.  RC5 i RC6, które zostały pierwszy raz zastosowane odpowiednio w 1994 roku, i w 1998. Ponadto, głównym składnikiem kody Saurona jest Lua, użyta również w robaku szpiegowskim o kryptonimie Flame, którego autorstwo przypisano NSA. Przy czym należy podkreślić, że Lua jest obecnie przestarzałym językiem programowania rozwiniętym w latach 90., a użyta wersja 4.0 w 2000. To właśnie jej elementy tworzą Saurona. Lua swego czasu była bardzo popularnym językiem programowania wśród hakerów. Obecnie jest zastępowana przez potężniejszy i bardziej elastyczny Python. Kolejnym komponentem użytym w oprogramowaniu świadczącym o jego długowieczności jest użyty szyfr strumieniowy Salsa20, który jest postrzegany jako dobry. Jest on jednak również przestarzały i został zastąpiony przez nowszy, pochodzących z 2007 roku. Wydaje się, że NSA po prostu stopniowo modyfikowała Saurona. Skoro wcześniej nie został wykryty, to całkowita zmiana wszystkich jego elementów byłaby bezsensowna i zdecydowanie bardziej kosztowna.  

Jedną z najbardziej imponujących umiejętności, które posiada Projekt Sauron jest zdolność do zbierania informacji z systemów komputerowych odłączonych od Internetu ze względu na wrażliwość ulokowanych na nich danych. W tym celu używano specjalnie przygotowanego urządzenia przenośnego USB posiadającego wirtualne pliki systemowe, które nie były widoczne dla systemu operacyjnego Windows. Dla zainfekowanego komputera, przenośny dysk był postrzegany jako bezpieczny i akceptowany. Zawierał on jednak miejsce na setki megabajtów plików, które miały zostać ściągnięte z zainfekowanego urządzenia. Działała on nawet przeciwko komputerów na którym zainstalowane było oprogramowanie blokujące korzystanie z nieznanych urządzeń przenośnych.

Badający oprogramowanie naukowcy z firmy Kaspersky wciąż nie są w stanie określić precyzyjnie sposobu w jaki aktywowano proces znajdowania i przegrywania plików. Samo istnienie niewidzialnej przestrzeni nie jest jednoznaczne z przejęciem kontroli nad komputerem odłączonym od Internetu. Naukowcy podejrzewają, że ten sposób był używany tylko w rzadkich przypadkach i konieczne było znalezienie podatności typu zero-day, która jednak wciąż przez nich nie została odkryta. Projekt Sauron składał się z 50 modułów, które mogą być zmieniane i dopasowane w zależności od celu. Raz zainstalowany, Projekt Sauron pracował jako uśpiona komórka wykazujące brak jakiekolwiek aktywności i czekając na odpowiednią komendę aktywująca złośliwe oprogramowanie. Taka właśnie metoda działania potwierdza, że Projekt Sauron przebywał w sieciach i serwerach organizacji przez długi okres czasu.

Należy również wskazać, że program też jest bardzo dobrze skonstruowany, co stanowi kolejny dowód, że za jego stworzeniem stała grupa hakerów powiązana z agencją wywiadowczą.  W większości systemów Sauron znajdowały się tylko w pamięci RAM, co zdecydowanie utrudniało jego wykrycie i zanalizowanie. W celu jak najdłuższego przetrwania, Sauron przejmuje władzę nad infrastrukturą kontroli systemów, umożliwiając atakującemu bardzo szybkie zainfekowania prawie wszystkich plików nie pozostawiając prawie żadnych śladów. Ponadto w  zaawansowany sposób program ukrywa aktywność wirusa w sieci. Stosuje wiele narzędzi do skrytego wyprowadzenia danych jak np. zapytania DNS, HTTP czy wiadomości poczty elektronicznej. Wszystkie mechnizmy zostały tak zaprojektowane, żeby przypominały normalny ruch sieciowych w celu zmniejszenia ryzyka wykrycia. Badacze z firmy Kasperky znaleźli tylko jedna słabość Saurona. Program pozostawia tymczasowe pliki, kiedy skrycie wydobywa dany. Z technicznego punktu widzenia, NSA stworzyła bardzo dobry program, przywiązując ogromną rolę do detali.

Sauron jest również bardzo rzadkim programem, który nie będzie wykorzystywany do każdego ataku. Został on znaleziony tylko na najważniejszych systemach komputerowych w Rosji, Iranie, Rwandzie, Chinach, ambasadzie w Brukseli, jednej ze szwedzkiej organizacji. Badający program Symantec zidentyfikował 36 infekcji w 7 różnych organizacjach. Podmiot używający tego oprogramowania wykazywał dużą powściągliwość w wyborze celów. Skupiała się na niewielkiej liczbie celów o wysokim znaczeniu a nie na masowym zbieraniu wszystkich danych.

Widać wyraźnie, że stopień skomplikowania programu wskazuje, że za Sauronem stało państwo. Dodając do tego cele, które z pewnością nie były przypadkowo, z dużą dozą prawdopodobieństwa można powiedzieć, że to NSA stworzyła to złośliwe oprogramowanie.

Czytaj też: Po blisko 5 latach badań zbadano wirusa Sauron

Komentarze