Złośliwy program nieznanego autora infekuje wybrane komputery od 2008

dodał 24 listopada 2014 o 14:04 w kategorii Złośniki  z tagami:
Złośliwy program nieznanego autora infekuje wybrane komputery od 2008

Odkryty niedawno koń trojański stosuje oryginalne metody szyfrowania i komunikacji, infekcja przebiega w pięciu etapach a sam program posiada kilkadziesiąt modułów funkcjonalnych. Kto i po co stworzył tak skomplikowane narzędzie inwigilacji?

Regin, bo tak został nazwany opisywany w artykule koń trojański, swoim poziomem skomplikowania kwalifikuje się do tej samej rodziny zagrożeń co Stuxnet, Flame, Duqu czy Turla/Snake. Regularnie rozwijany od wielu lat, tworzony przez wysoce wyspecjalizowany zespół fachowców, kradnie informacje z bardzo wąsko wyselekcjonowanej grupy komputerów na całym świecie.

Przebieg infekcji

Nie wiadomo, w jaki sposób program dostaje się do komputerów. W jednym tylko przypadku udało się ustalić, że infekcja zaczęła się od procesu Yahoo! Messenger. Po instalacji uruchamiane jest kolejno 5 poziomów implementacji złośliwego kodu, z których każdy oprócz pierwszego jest zaszyfrowany wewnątrz swojego poprzednika. Wszystkie moduły infekujące są zaszyfrowane oraz zapisane w nieznanym wcześniej formacie przypominającym trochę system plików FAT.

Schemat architektury

Schemat architektury

W pierwszym kroku instalowane są złośliwe sterowniki jądra systemu. Ich zadaniem jest wczytanie plików kroku drugiego – również sterowników jądra systemu. Pliki kroku drugiego ukrywają działanie sterownika z etapu pierwszego i same wczytują dane etapu trzeciego. Monitorują także działanie całego programu by nie dopuścić do uruchomienia zbyt wielu jego kopii naraz. Dopiero na trzecim etapie infekcji zaczyna swoje działanie właściwy koń trojański. Pliki tego etapu kontrolują cały mechanizm działania programu, stanowiąc „warstwę abstrakcji” i obsługują wewnętrzne protokoły komunikacji. Odpowiadają m. in. za pakowanie i odpakowywanie, operacje szyfrowania, podstawy obsługi sieci oraz wczytywanie modułów etapu czwartego. Moduły czwartego etapu obsługują wczytywanie i uruchamianie głównych funkcji programu, ukrytych na etapie piątym. Badacze potwierdzili istnienie kilku tuzinów modułów.

Wyspecjalizowane moduły

Charakterystyczną cechą programu jest jego modułowa konstrukcja. Badacze podkreślają, że prawie każda ofiara otrzymywała inny zestaw modułów, co wskazuje, że twórcy programu duży nacisk kładli na specjalizację i dostosowywanie swojego narzędzia do indywidualnych potrzeb w każdym ataku. Oprócz modułów standardowo spotykanych w infekcjach APT (zrzuty ekranu, kontrola myszy i klawiatury, przechwytywanie haseł, monitorowanie ruchu sieciowego, analiza procesów i pamięci komputera) Regin posiada także wiele modułów o bardzo dużym poziomie specjalizacji. Przykłady podane przez badaczy to:

  • analizowanie logów serwera Microsoft IIS,
  • zbieranie ruchu administracyjnego do kontrolera stacji bazowej sieci komórkowej,
  • analizowanie poczty z bazy danych Microsoft Exchange
  • narzędzia do analizy śledczej systemu plików NTFS, w tym odzyskiwania skasowanych danych.

Co również ciekawe, program większość wykradzionych danych przechowuje w pamięci, nie zapisując ich na dysku, co znacznie utrudnia analizę jego celów i poniesionych strat. Badacze w większości przypadków nie znaleźli żadnych śladów po wykradzionych informacjach – od momentu ich przechwycenia do momentu przesłania poza sieć ofiary dane musiały być cały czas przechowywane oraz przetwarzane w pamięci RAM komputera.

Komunikacja z C&C

Komunikacja z serwerami C&C jest dość rozbudowana. Może być inicjowana zarówno przez serwer, jak i przez zainfekowany komputer. Sygnał o konieczności komunikacji z C&C może być wysłany jednym kanałem, a sama komunikacja odbywać się może inną metodą. Również komputery znajdujące się w sieci lokalnej, zainfekowane przez Regina, mogą działać jako proxy dla innych infekcji, istnieje także opcja komunikacji P2P. Odkryto do tej pory co najmniej 4 kanały komunikacji:

  • ICMP – dane mogą być przesyłane w pakietach przypominających pingi, a suma kontrolna liczona jest na bazie wartości 31337 a w pakietach znajduje się wiele razy powtarzany ciąg „shit” używany do weryfikacji danych
  • UDP, TCP – surowe pakiety z danymi
  • HTTP – dane chowane są w zmiennych udających ciasteczka np. SESSID, PHPSESSID czy LASTVISIT

Twórcy Regina sporo energii poświęcili na zapewnienie, że przez dłuższy czas pozostanie on niezauważony. Odnieśli przy tym wymierny sukces – według badaczy najstarsze kopie konia trojańskiego powstały ok. roku 2008, a prawdopodobnie ślady mogą sięgać wcześniejszych lat. Oprócz ukrywania swojej komunikacji program stosuje także liczne sztuczki utrudniające analizę wsteczną oraz niestandardowe szyfrowanie (wariant RC5). Również jego bardzo ograniczona dystrybucja (znane jest tylko ok. 100 przypadków wystąpienia) utrudniała wykrycie zagrożenia.

Kto za tym stoi

Z reguły sprawców łatwo poznać po analizie ich celów. Tym razem chyba nie będzie to takie proste. Na liście zainfekowanych komputerów przeważają te należące do małych firm i osób prywatnych, na drugim miejscu są dostawcy usług telekomunikacyjnych a na trzecim firmy z branży hotelarskiej. Geograficzny rozkład celów jest również ciekawy – Rosja i Arabia Saudyjska stanowią połowę puli, a na kolejnych pozycjach występują Meksyk, Irlandia oraz Indie.

Symantec nie podjął się wskazania sprawców. F-Secure sugeruje, że raczej nie są to Rosja ani Chiny. Najlepiej chyba określił to szef Kaspersky’ego, który zaproponował skuteczne narzędzie do określania autorów złośliwego oprogramowania – wystarczy wyciąć i skleić.

Mechanizm atrybucji

Mechanizm atrybucji

Wiele aspektów działania Regina ciągle pozostaje nieznanych, zatem spodziewamy się kolejnych ciekawych raportów na ten temat.

Aktualizacja 20:30

Pospieszyliśmy się z artykułem, a chwilę temu swój raport na temat Regina opublikował Kaspersky oraz napisał o nim Wired. Poniżej streszczenie najważniejszych punktów tych dwóch nowych publikacji:

  • lista potwierdzonych ofiar tego programu to Komisja Europejska, firma Belgacom (pisaliśmy o tym włamaniu) oraz belgijski profesor kryptografii Jean-Jacques Quisquater
  • lista ofiar rozwiązuje problem atrybucji – dzięki wyciekom Snowdena wiadomo, że Belgacom zaatakowało brytyjskie GCHQ
  • Kaspersky znalazł ofiary również w tak egzotycznych miejscach jak Fidżi czy Kiribati
  • wśród ofiar znajdowały się instytucje naukowe zajmujące się matematyką i kryptografią
  • w 2008 jedną z ofiar był operator sieci komórkowej w Pakistanie, Afganistanie, Iranie lub Syrii, u którego odkryto pełen log wydawanych przez administratora poleceń w języku Ericsson OSS MML
  • w jednym z bliskowschodnich krajów atakujący zainfekowali komputery w kancelarii prezydenta, kilku instytutach badawczych oraz w jednym banku a wszystkie sieci połączyli wspólnymi mechanizmami zarządzania, dającymi im kontrolę nad całą zarażoną infrastrukturą
  • pierwszy komponent Regina trafił do VirusTotal w marcu 2009
  • 2 lata później zaczął go wykrywać Microsoft
  • Regin większość swoich danych chowa w kluczach rejestru Windows lub w wartościach Extended Attributes NTFS
  • niektóre komponenty infekcji podpisane są fałszywymi certyfikatami – by nie wzbudzać podejrzeń program najpierw wstrzykuje certyfikat nadrzędny do systemu, by ten ufał sfałszowanym certyfikatom np. Microsoftu
  • jako że infekcja często obejmuje wiele komputerów w sieci lokalnej, w większości przypadków tylko jeden z nich pełni rolę węzła komunikacyjnego łączącego się z C&C, a pozostałe komputery tworzą z nim sieć P2P

Polecamy lekturę pełnych raportów – ten autorstwa Kaspersky’ego zawiera więcej szczegółów technicznych. Ciekawe tylko, czemu Kaspersky miał gotowy raport, który opublikował dopiero po tym, gdy dzień wcześniej swoje opracowanie wypuścił Symantec…

Źródła: