Komputery ofiar NotPetya mogły być zainfekowane co najmniej od kwietnia

dodał 4 lipca 2017 o 20:22 w kategorii Włamania, Złośniki  z tagami:
Komputery ofiar NotPetya mogły być zainfekowane co najmniej od kwietnia

Dzięki prowadzonym analizom ataku NotPetya na jaw wychodzi coraz więcej ciekawych informacji. Najnowsze doniesienia wskazują, że zaatakowane firmy mogły być zainfekowane przez przestępców już w kwietniu tego roku.

Już pierwszego dnia ataku wyszło na jaw, że ukraińskie firmy, których komputery padły ofiarą NotPetya, zainfekowane zostały poprzez złośliwą aktualizację oprogramowania MEDoc, służącego do prowadzenia ewidencji finansowej i rozliczania podatków. Choć producent oprogramowania używanego przez 400 000 klientów odrzuca zarzuty o nieświadomy udział w ataku, to najnowsze badania firmy ESET wskazują że aktualizacje MEDoc były zainfekowane już od kwietnia a serwer aktualizacji programu był jednocześnie serwerem C&C…

Totalna katastrofa

W obliczu zarzutów wobec producenta MEDoc badacze przyjrzeli się wcześniejszym aktualizacjom tej aplikacji. ESET przeanalizował wszystkie pliki serwowane w roku 2017 i odkrył, że przynajmniej trzy z dystrybuowanych aktualizacji posiadały dodatkowy, sprytnie ukryty kod, działający jako specjalnie w tym celu skonstruowana tylna furtka. Chodzi o wersje:

  • 01.175-10.01.176, wydaną 14. kwietnia 2017,
  • 01.180-10.01.181, wydaną 15. maja 2017,
  • 01.188-10.01.189, wydaną 22 czerwca 2017.

Co ciekawe nie każda aktualizacja posiadała tego backdoora – cztery aktualizacje między 24. kwietnia a 10. maja był czyste, podobnie jak siedem aktualizacji wydanych pomiędzy 17. maja a 21. czerwca.

Tylna furtka umieszczona była w module o nazwie ZvitPublishedObjects.dll, napisanym we frameworku .NET. Plik o rozmiarze 5MB zawierał sporo kodu, głównie potrzebnego do faktycznego działania aplikacji, w tym główny plik wykonywalny ezvit.exe. Badacze uważają, że konstrukcja pliku wskazuje na dostęp autorów tylnej furtki do kodu źródłowego aplikacji MEDoc. Jakie funkcje miał backdoor?

Każda firma działająca na Ukrainie posiada tzw. numer EDRPOU (Код ЄДРПОУ) – odpowiednik naszego NIPu. Tylna furtka pobierała listę obsługiwanych numerów EDRPOU (jedna instancja aplikacji mogła obsługiwać więcej niż jeden podmiot) i przesyłała go na serwer C&C. Dzięki temu autorzy backdoora mogli w publicznym rejestrze łatwo sprawdzić, jaką konkretnie firmę udało im się zainfekować. Dodatkowo backdoor zbierał także ustawienia serwera proxy oraz kont pocztowych używanych w aplikacji MEDoc. Dane były zapisywane w rejestrze w ścieżce

w formie kluczy o nazwach Cred oraz Prx. Obecność tych wartości może wskazywać na infekcję.

Komunikacja z serwerem C&C była perfekcyjnie ukryta, ponieważ serwerem C&C był… serwer aktualizacji MEDoc. Informacje przesyłane były w wyglądających całkiem zwyczajnie żądaniach weryfikujących dostępność aktualizacji (w logach wyglądały jak zawsze), które wzbogacone były plikami cookie z wykradanymi danymi – co widać na poniższym zrzucie ekranu.

Serwer aktualizacji MEDoc mógł także w odpowiedzi wysłać polecenia do zainfekowanego klienta. Był to plik XML, spakowany gzipem i , zaszyfrowany algorytmem Triple DES. Serwer mógł wysyłać następujące polecenia:

  • 0 – RunCmd – wykonuje polecenie powłoki
  • 1 – DumpData – dekoduje dane zakodowane w Base64 i zapisuje do pliku
  • 2 – MinInfo – zbiera informacje o wersji systemu operacyjnego, uprawnieniach uzytkownika, ustawieniach UAC, ustawieniach proxy, loginie i haśle poczty elektronicznej
  • 3 – GetFile – pobiera plik z zainfekowanego komputera
  • 4 – Payload-  dekoduje dane zakodowane w Base64, zapisuje do pliku i uruchamia plik
  • 5 – AutoPayload – tak samo jak „4”, lecz plik musi mieć format DLL i jest uruchamiany przez polecenie rundll32.exe a następnie nadpisuje sam siebie i się usuwa

To właśnie polecenie „5” zostało najprawdopodobniej użyte do uruchomienia NotPetya na zainfekowanych komputerach. Do obrazu sytuacji warto dodać informację, że NotPetya kasowała logi systemowe, usuwając ewentualne ślady wcześniejszych działań napastników.

Podsumowanie

Coraz bardziej wygląda na to, że wbrew zapewnieniom autorów MEDoc, ich serwery były pod pełną kontrolą atakujących. Co ciekawe, w sieci znaleźć można informacje wskazujące, że serwerownia, w której znajdowały się maszyny MEDoc, była oskarżana przez ukraiński służby o współprace ze służbami rosyjskimi. Warto także poczytać wcześniejszą publikację ESETa opisującą powiązania między kampanią NotPetya a starszymi atakami na ukraińskich użytkowników – w tym także prawdopodobnie wykorzystującymi platformę MEDoc do dystrybucji destrukcyjnego ransomware.

Wiecie, że podobny atak z użyciem aktualizacji popularnego polskiego oprogramowania miał miejsce w Polsce, tylko (na szczęście) na dużo mniejszą skalę? Pełną historię już wkrótce znajdziecie w naszym serwisie.