Badacze z firmy Mandiant należącej od września 2022 roku do Google opisali dość interesującą i jednocześnie trywialną formułę ataku. Osoba lub grupa, nazwana jako UNC4990, korzystała z przygotowanych przez siebie nośników USB oraz infrastruktury powszechnie znanych serwisów internetowych w celu przeprowadzenia adekwatnej infekcji docelowych hostów. Współcześnie powodem zdecydowanej większości ataków są motywacje finansowe i tak było również w tym przypadku.
Ataki zostały zaobserwowane na terenie Włoch i obejmowały przedsiębiorstwa z branży medycznej, transportowej, budowlanej oraz logistycznej.
Skuteczność infekcji stanowi potwierdzenie, iż kwestie zabezpieczeń, dobrych praktyk i szkolenia pracowników w firmach spoza wybranych branż wciąż mogą nie być na wystarczającym poziomie.
Skondensowany schemat ataku przedstawia poniższa grafika.
Nie podano sposobu, w jaki ofiary weszły w posiadanie nośników USB. Specyfika pracy wymienionych branż pozwala jednak podejrzewać, iż dyski zostały po prostu przekazane pracownikowi lub ewentualnie „podrzucone” w okolicy biura.
Jeśli do infekcji doszło w efekcie podłączenia i uruchomienia pliku z nośnika z drugiego sposobu, to niestety osobą odpowiedzialną za infekcję jest pracownik. Podłączanie znalezionych w losowym miejscu pendrive’ów stanowi naruszenie pewnych reguł bezpieczeństwa. Natomiast jeżeli takowe działanie było standardowym krokiem (np. „klient” miał na dysku zapisany projekt domu) związanym z realizacją pracy, to problemem jest konfiguracja zabezpieczeń i firmowa polityka w zakresie bezpieczeństwa IT.
Jak dochodziło do zainfekowania systemów firmy?
Na dysku zapisywany był plik LNK (format skrótu w systemach Windows), który po uruchomieniu wykonywał skrypt PowerShell o nazwie explorer.ps1. Badacze podają, iż ten plik pojawiał się w kilku odmianach, których zawartość w późniejszych wersjach była zakodowana w Base64. Wczesne wersje posiadały warunek sprawdzający, czy na dysku istnieje katalog z nazwą zawierającą znak Hangul Filler, a inne zapisywały w folderze %AppData% plik z wygenerowanym UUID danego hosta.
Ciekawsza różnica dotyczy jednak źródła pobierania kolejnych plików. Pierwotnie był to włoski serwis Altervista pozwalający na założenie własnego bloga (opartego na systemie WordPress), natomiast w kolejnych iteracjach skrypt pobierał plik src.txt z serwisów GitHub lub GitLab, a w jeszcze kolejnych payload z Vimeo i Ars Technika (serwis odniósł się do publikacji Mandiant), który zawarty był odpowiednio w opisie filmu i w odnośniku do zdjęcia z sekcji About użytkownika portalu.
Zawartość wspomnianego pliku tekstowego była używana do wygenerowania innych adresów URL (różnych w zależności od wersji skryptu explorer.ps1), z których ostatecznie pobierany był adekwatny downloader EMPTYSPACE. Atakujący sprytnie doprowadził do sytuacji praktycznie bezpłatnego hostowania plików używanych w tym ataku. Wszystkie wymienione serwisy umożliwiają założenie darmowych kont, a domena pierwszego generowanego adresu URL to TK, którą również można zarejestrować bezpłatnie.
Warianty EMPTYSPACE były napisane z użyciem różnych języków programowania: Node.js, .NET, Python i Go. Zgodnie z opisem występowały pomiędzy nimi pewne różnice w zakresie działania, natomiast wspólnym efektem ich użycia było pobranie i uruchomienie kolejnego złośliwego oprogramowania, w tym koperek kryptowalut.
Atak miał przestarzałą formułę, ponieważ malware było rozprowadzane z użyciem dysków USB. Najlepiej oczywiście w żadnym wypadku nie korzystać z zewnętrznych dysków pochodzących z niezaufanych źródeł, natomiast nie zawsze jest taka możliwość. Można jednak ograniczyć ryzyko poprzez przeznaczenie wybranego hosta (bez dostępu do sieci firmowej) wyłącznie do obsługi nośników spoza organizacji. Wcześniej wystarczy przygotować obraz dysku i regularnie go przywracać.