Ataki oprogramowania wymuszającego okup ESXiArgs: zagrożenia i ochrona danych
Zazwyczaj oprogramowanie wymuszające okup atakuje komputery fizyczne i maszyny wirtualne z systemem Windows, a rzadziej systemy macOS i Linux. Niestety, cyberprzestępcy wciąż opracowują nowe wersje oprogramowania wymuszającego okup, które mogą zainfekować inne systemy operacyjne, wykorzystując nowo odkryte luki w zabezpieczeniach. Najnowszym przykładem był atak oprogramowania wymuszającego okup ESXi, który dotknął hiperwizory VMware poprzez wykorzystanie luk w zabezpieczeniach ESXi, powodując poważne przestoje w firmach na całym świecie.
Ten wpis na blogu wyjaśnia, jak niebezpieczne są ataki oprogramowania wymuszającego okup, w jaki sposób oprogramowanie wymuszające okup może zainfekować host ESXi oraz jak chronić się przed oprogramowaniem wymuszającym okup, w tym przed oprogramowaniem wymuszającym okup ESXi Args.
Początek kampanii oprogramowania wymuszającego okup wymierzonego w ESXi
Pierwsze przypadki ataków oprogramowania wymuszającego okup na ESXi odnotowano w październiku 2022 r., kiedy firma VMware zakończyła ogólne wsparcie dla systemów ESXi 6.5 i 6.7. duża liczba hostów ESXi zostały zainfekowane we Francji, Niemczech, Stanach Zjednoczonych, Kanadzie, Wielkiej Brytanii i innych krajach. W lutym 2023 r. odnotowano ponad 3000 zainfekowanych hostów ESXi z danymi szyfrowanymi i bez możliwości ich odzyskiwania. Nazwy oprogramowania wymuszającego okup, które zaatakowało hosty ESXi, to ESXiArgs, Royal i Cl0p. Ponadto pojawiły się nowe rodziny oprogramowania wymuszającego okup atakującego ESXi, takie jak RansomEXX, Lockbit, BlackBasta, Cheerscrypt, Hive, RedAlert/N13V i inne.
Hosty ESXi są atrakcyjne dla atakujących, ponieważ wirtualizacja serwerów stało się bardziej popularne, a wiele organizacji wykorzystuje maszyny wirtualne w swoich środowiskach produkcyjnych. W rezultacie twórcy oprogramowania wymuszającego okup skupili się na przeprowadzaniu ataków ransomware na VMware ESXi w nadziei na osiągnięcie ogromnych zysków. Zainfekowanie jednego hosta ESXi pozwala atakującym zaszyfrować/zniszczyć dane wielu maszyn wirtualnych znajdujących się na tym hoście. Takie podejście może być skuteczniejsze niż infekowanie maszyn wirtualnych, które mogą działać pod różnymi systemami operacyjnymi. Atak oprogramowania wymuszającego okup ESXi Args był jednym z największych ataków oprogramowania wymuszającego okup na serwery inne niż Windows.
Które wersje ESXi są podatne na oprogramowanie wymuszające okup ESXi?
Oprogramowanie wymuszające okup ESXi wykorzystuje różne luki w zabezpieczeniach, w tym CVE-2022-31699, CVE-2021-21995, CVE-2021-21974, CVE-2020-3992 i CVE-2019-5544.
Oprogramowanie wymuszające okup ESXi Args wykorzystuje lukę CVE-2021-21974 do zainfekowania hosta ESXi. Jest to luka odkryta w 2021 r., która może wystąpić na hostach ESXi, które nadal nie mają zainstalowanych poprawek lub nie są zaktualizowane. Jest to luka typu przepełnienie sterty w usłudze OpenSLP uruchamianej na ESXi. Łatka dla CVE-2021-21974 została opublikowana 21 lutego 2021 r.
Następujące wersje ESXi są podatne na CVE-2021-21974:
- ESXi 7.x przed wersją ESXi70U1c-17325551
- ESXi 6.7.x przed wersją ESXi670-202102401-SG
- ESXi 6.5.x przed wersją ESXi650-202102101-SG
Dlaczego było tak wiele serwerów bez poprawek i dlaczego były one dostępne z Internetu? Instalacja poprawek wymaga przestoju serwera ESXi, a przy dużej liczbie hostów niektórzy administratorzy mogą nie mieć zasobów lub czasu, aby zainstalować je na czas. Ponadto luki w zabezpieczeniach ESXi nie były szeroko wykorzystywane przed atakiem oprogramowania wymuszającego okup ESXi Args. Stworzyło to złudzenie, że serwery ESXi bez aktualizacji nie stanowią zagrożenia, a serwery były aktualizowane powoli. Serwery ESXi działające w firmach hostingowych również zostały zainfekowane oprogramowaniem wymuszającym okup ESXi Args. Dostawcy usług hostingowych udostępniali klientom infrastrukturę, a klienci instalowali hiperwizory ESXi w celu uruchamiania maszyn wirtualnych. Serwery ESXi zostały udostępnione w Internecie przez klientów, co umożliwiło atakującym uzyskanie do nich dostępu. Atakujący żądali od ofiary zapłaty około 23 000 dolarów w bitcoinach.
Jak działa oprogramowanie wymuszające okup ESXi?
Cyberprzestępcy wyszukują podatne na ataki hosty ESXi, zwłaszcza te udostępnione w Internecie. Potwierdzono, że metoda ataku wykorzystuje lukę w zabezpieczeniach OpenSLP, prawdopodobnie CVE-2021-21974. Port 427 (TCP/UDP) jest używany dla OpenSLP. Logi wskazują na udział użytkownika dcui w tym procesie ataku. Ta luka w oprogramowaniu wymuszającym okup ESXi pozwala atakującym na zdalne wykorzystanie dowolnego kodu.
Proces szyfrowania wykorzystuje klucz publiczny wdrażany przez złośliwe oprogramowanie, znajdujący się pod adresem /tmp/public.pem . W szczególności proces ten dotyczy plików maszyn wirtualnych, w tym plików o rozszerzeniach takich jak „.vmdk”, „.vmx”, „.vmxf”, „.vmsd”, „.vmsn”, „.vswp”, „.vmss”, „.nvram” oraz plików z rozszerzeniem „.vmem”. Należy pamiętać, że plik „. vmdk ” jest plikiem deskryptora dysku wirtualnego, a „- flat.vmdk ” jest plik dysku wirtualnego zawierającym dane maszyny wirtualnej. Oprogramowanie wymuszające okup ESXi Args tworzy plik „. args ” dla każdego zaszyfrowanego pliku z metadanymi (prawdopodobnie twórcy oprogramowania wymuszającego okup zakładają, że pliki „. args ” mogą być potrzebne do odszyfrowywania).
Poniżej znajduje się szczegółowy opis sekwencji:
- W przypadku włamania na serwer, w katalogu /tmp umieszczane są następujące pliki:
- szyfrowanie stanowi plik wykonywalny do szyfrowania w formacie ELF.
- encrypt.sh służy jako logika operacyjna ataku. Jest to skrypt powłoki, który wykonuje różne czynności przed uruchomieniem narzędzia do szyfrowania, jak opisano poniżej.
- public.pem to publiczny klucz RSA używany do szyfrowania klucza odpowiedzialnego za szyfrowanie plików.
- motd to tekstowa notatka z żądaniem okupu, która jest kopiowana do /etc/motd , co zapewnia jej wyświetlenie po zalogowaniu. Oryginalny plik na serwerze zostanie zachowany jako /etc/motd1 .
- index.html to wersja HTML notatki z żądaniem okupu, zaprojektowana tak, aby zastąpić stronę główną VMware ESXi. Początkowy plik serwera należy wykonać kopię zapasową w tym samym katalogu jako „ index1.html ”.
- Program do szyfrowania uruchamia się za pomocą skryptu powłoki, który wywołuje go z tablicą parametrów wiersza poleceń. Parametry te obejmują plik klucza publicznego RSA, plik docelowy do szyfrowania, fragmenty danych, które mają pozostać niezmienione, rozmiar bloku szyfrowania oraz całkowity rozmiar pliku.
Sposób użycia: szyfrowanie < public_key > < file_to_encrypt > [<enc_step>] [<enc_size>] [<file_size>]
Gdzie:
- enc_step to liczba MB, którą należy pominąć podczas szyfrowania plików
- enc_size to liczba MB w bloku szyfrowania
- file_size to rozmiar pliku w bajtach (dla plików rzadkich)
- Uruchomienie tego szyfrującego odbywa się za pośrednictwem encrypt.sh skryptu powłoki, który służy jako podstawowa logika ataku. Po uruchomieniu skrypt wykonuje następujące czynności, krótko wyjaśnione poniżej.
- Skrypt oprogramowania wymuszającego okup ESXi wykonuje polecenie modyfikujące pliki konfiguracyjne maszyn wirtualnych ESXi (. vmx ) poprzez zastąpienie wystąpień „. vmdk ” oraz „. vswp ” odpowiednio przez „ 1.vmdk ” oraz „ 1.vswp ”.
- Następnie skrypt oprogramowania wymuszającego okup siłą zamyka wszystkie aktualnie aktywne maszyny wirtualne, wydając polecenie „ kill -9 ”, aby zatrzymać procesy zawierające słowo „ vmx ”.
- Oprogramowanie wymuszające okup próbuje wyłączyć maszyny wirtualne poprzez zakończenie procesu VMX w celu wydania zablokowanych plików i ich modyfikacji. Jednak funkcja ta nie zawsze działa zgodnie z oczekiwaniami, co powoduje, że niektóre pliki pozostają zablokowane. Po zmodyfikowaniu plików VM maszyny wirtualne stają się bezużyteczne.
- Skrypt przechodzi do pobierania listy woluminów ESXi za pomocą polecenia:
esxcli storage filesystem list | grep "/vmfs/volumes/" | awk -F' ' '{print $2}Za pomocą tego polecenia oprogramowanie wymuszające okup skanuje te woluminy w poszukiwaniu plików o określonych rozszerzeniach.
- Dla każdego wykrytego pliku skrypt generuje odpowiedni [file_name].args plik w tym samym katalogu. Ten .args plik zawiera obliczone parametry, w tym krok (zwykle „1”) i rozmiar pliku. Na przykład, jeśli plik to „ VM01.vmx ”, tworzony jest powiązany plik „ VM01.vmx.args ”. Złośliwe oprogramowanie tworzy plik „argsfile” w celu przechowywania argumentów przekazywanych do zaszyfrowanego pliku binarnego, zawierający takie informacje, jak liczba megabajtów do pominięcia, rozmiar bloku szyfrowania oraz rozmiar pliku.
- Następnie skrypt wykorzystuje plik wykonywalny „ encrypt ” do szyfrowania plików na podstawie obliczonych parametrów.
- Po szyfrowaniu skrypt zastępuje plik ESXi „ index.html ” oraz plik serwera „ motd ” wspomnianymi wcześniej żądaniami okupu, jak opisano wcześniej.
Nie ma dowodów na to, że dane były przesyłane na zewnątrz (wyciek danych). W niektórych przypadkach szyfrowanie plików może zakończyć się tylko częściowym sukcesem, co umożliwia ofierze potencjalne odzyskanie części danych.
Po pomyślnym zakończeniu infekcji oraz modyfikacji/szyfrowaniu danych na stronie HTML wyświetlano następujący komunikat z żądaniem okupu:
„ Ostrzeżenie bezpieczeństwa! Udało nam się włamać do Państwa firmy.
…
Prosimy o przesłanie pieniędzy w ciągu 3 dni, w przeciwnym razie ujawnimy część danych i podwyższymy cenę .”
- Następnie skrypt wykonuje zadania porządkowe, w tym usuwanie logów oraz backdoora w języku Python znajdującego się w /store/packages/vmtools.py . Eliminuje również określone wiersze z niektórych plików:
- /bin/hostd-probe.sh
- /var/spool/cron/crontabs/root
- /etc/rc.local.d/local.sh
- /etc/vmware/rhttpproxy/endpoints.conf
Wydano krytyczną notę, w której wzywa się administratorów do sprawdzenia, czy plik „ vmtools.py ” istnieje na hoście ESXi. Jeśli zostanie znaleziony, zaleca się jego natychmiastowe usunięcie.
- Na koniec skrypt uruchamia „/sbin/auto-backup.sh ” w celu aktualizacji konfiguracji zapisanej w pliku „/bootbank/state.tgz ” oraz aktywuje SSH.
Ponadto wyszło na jaw, że ta luka, wraz z innymi lukami w ESXi, jest aktywnie wykorzystywana przez grupy oprogramowania wymuszających okup inne niż ESXiArgs.
UWAGA: Zachowanie oprogramowania wymuszającego okup VMware ESXi może ulec zmianie wraz z aktualizacjami oprogramowania wymuszającego okup i nowymi wydaniami oprogramowania wymuszającego okup.
Jak odzyskać dane po ataku oprogramowania wymuszającego okup ESXi Args
W mechanizmie kryptograficznym nie ma błędów, które pozwoliłyby na odszyfrowanie zaszyfrowanych plików. Jednak amerykańska Agencja ds. Cyberbezpieczeństwa i Bezpieczeństwa Infrastruktury (CISA) stworzyła skrypt, który może pomóc w odzyskaniu maszyn wirtualnych. Zaletą jest to, że pliki maszyn wirtualnych, w tym deskryptor dysku wirtualnego (. vmdk ), są szyfrowane, ale plik -flat.vmdk (w którym przechowywane są dane maszyny wirtualnej) nie jest. Umożliwia to odzyskiwanie maszyny wirtualnej.
CISA wprowadziła skrypt odzyskiwania zaprojektowany, aby pomóc organizacjom dotkniętym przez oprogramowanie wymuszające okup ESXi Args. To oprogramowanie wymuszające okup atakuje konkretnie serwery ESXi, szyfrując ich pliki konfiguracyjne i potencjalnie unieruchamiając maszyny wirtualne (VM). Chociaż narzędzie zostało opracowane we współpracy z VMware, nie jest ono bezpośrednio wspierane przez VMware. Jeśli klienci napotkają jakiekolwiek problemy podczas korzystania z tego narzędzia, zachęca się ich do zgłaszania problemów na GitHub pod tym adresem: https://github.com/cisagov/ESXiArgs-Recover/issues.
CISA zobowiązuje się do szybkiego reagowania na zgłoszenia i rozwiązywania problemów. Aby uzyskać więcej informacji na temat korzystania ze skryptu, prosimy odwiedzić stronę ten link.
Można również pobierz dokument w formacie PDF wraz z instrukcjami.
Jeśli występują oznaki, że host ESXi został zainfekowany oprogramowaniem wymuszającym okup ESXi, należy rozważyć podjęcie następujących działań:
- Odłączyć zainfekowany host ESXi od sieci.
- Nie należy płacić okupu. Płacenie okupu stanowi nagrodę dla cyberprzestępców i zachęca ich do tworzenia kolejnych programów ransomware w celu uzyskania większych zysków. Jeśli zapłacisz okup, nie ma gwarancji, że pliki uszkodzone przez oprogramowanie wymuszające okup VMware ESXi zostaną odzyskane.
- Zgłoś atak ransomware. Zgłaszanie ataków ransomware jest ważne, ponieważ umożliwia szybką reakcję, zapewnienie zgodności z przepisami, ochronę danych, zaufanie, ograniczanie zagrożeń oraz zbiorową obronę przed cyberatakami. Zgłaszanie ataków ransomware stanowi fundamentalną część zarządzania incydentami w zakresie cyberbezpieczeństwa. Pomaga to nie tylko poszczególnym organizacjom w odzyskaniu danych po atakach, ale także przyczynia się do ogólnego bezpieczeństwa i odporności ekosystemu cyfrowego.
- Sprawdź, czy dostępne są narzędzia do odzyskiwania lub do odszyfrowywania dla aktualnej wersji oprogramowania wymuszającego okup.
- Jeśli nie ma narzędzi do odszyfrowywania, odzyskaj dane z kopii zapasowej (aby skorzystać z tej metody, musisz wykonać kopię zapasową przed atakiem oprogramowania wymuszającego okup). Czasami skuteczniejsze może być odzyskanie maszyn wirtualnych z kopii zapasowej. Rozważ nowa instalacja ESXi i skopiowanie odzyskanych maszyn wirtualnych na nowy host ESXi, aby upewnić się, że na hoście, na którym umieszczono odzyskane maszyny wirtualne, nie ma śladów infekcji oprogramowaniem wymuszającym okup.
Jak chronić ESXi przed oprogramowaniem wymuszającym okup
Postępuj zgodnie z poniższymi zaleceniami, aby chronić ESXi przed oprogramowaniem wymuszającym okup:
- Zainstaluj poprawki na hostach ESXi, na których występują luki w zabezpieczeniach, takie jak CVE-2021-21974, CVE-2022-31699, CVE-2021-21995, CVE-2020-3992 i CVE-2019-5544. Jeśli Twoja wersja ESXi nie jest już obsługiwana, rozważ aktualizację do głównej wersji, która jest obsługiwana. Jeśli nie możesz zaktualizować ESXi, wyłącz OpenSLP (Service Location Protocol) na ESXi. Pomocne jest również wyłączenie usługi, która ma lukę w zabezpieczeniach dla danej wersji ESXi.
- Zainstaluj poprawki zabezpieczeń (aktualizacje) na hoście ESXi, aby chronić się przed najnowszymi zagrożeniami.
- Nie wystawiaj hostów ESXi na działanie Internetu. Jeśli proces pracy wymaga, aby pracownicy i partnerzy mieli dostęp do hostów ESXi z Internetu, skonfiguruj serwer VPN i zaporę sieciową. Skonfiguruj zaporę sieciową tak, aby zezwalała na dostęp tylko z zaufanych adresów IP. W tym przypadku połączenie z siecią przez VPN w celu uzyskania dostępu do hostów ESXi jest bezpieczne.
- Wyłącz dostęp SSH, jeśli nie jest on potrzebny, lub ustaw limity czasu.
- Wyłącz SMB v1.0 i inne stare wersje protokołów, zwłaszcza jeśli nie są używane.
- Stosuj segmentację sieci, w tym Sieć zarządzania ESXi.
- Używaj silnych haseł składających się z co najmniej 8 znaków, zawierających małe i wielkie litery, cyfry oraz znaki specjalne.
- Zainstaluj i skonfiguruj monitorowanie infrastruktury w celu monitorowania ruchu sieciowego i obciążenia serwerów. Monitorowanie pozwala na czas wykrywać podejrzane lub złośliwe działania.
- Przeprowadź szkolenia dla użytkowników na temat ochrony przed oprogramowaniem wymuszającym okup i upewnij się, że wiedzą, co robić, jeśli podejrzewają atak lub próbę ataku oprogramowania wymuszającego okup.
- Skonfiguruj ochrona e-maila przed złośliwym oprogramowaniem ponieważ wysyłanie złośliwych linków lub plików przez e-mail jest popularną metodą infekowania komputerów oprogramowaniem wymuszającym okup. Wyłącz aktywne hiperłącza w wiadomościach e-mail.
- Zainstaluj oprogramowanie antywirusowe na komputerach użytkowników i serwerach. Regularnie aktualizuj bazy danych oprogramowania antywirusowego.
- Regularnie wykonuj kopie zapasowe maszyn wirtualnych i korzystaj z Strategia wykonywania kopii zapasowej 3-2-1. Nie zapomnij o niezmienna kopia zapasowa lub kopii zapasowej fizycznie odłączonej (air-gapped), aby zapewnić, że kopia ta nie zostanie naruszona w przypadku ataku oprogramowania wymuszającego okup. Posiadanie Wykonać kopię zapasową ESXi i Kopia zapasowa vCenter może pomóc zaoszczędzić czas podczas odzyskiwania danych i obciążeń.
- Przygotuj plan reagowania na incydenty i poinformuj wszystkich, co należy zrobić w przypadku ataku oprogramowania wymuszającego okup na ESXi.
- Stwórz plan odzyskiwania awaryjnego , aby zapewnić możliwość odzyskania danych i przywrócenia obciążeń w różnych scenariuszach. Testowanie kopii zapasowej oraz testy odzyskiwania awaryjnego mają duże znaczenie.
Wnioski
Oprogramowanie wymuszające okup atakujące ESXi może mieć katastrofalne skutki, ponieważ nawet zarażenie jednego hosta ESXi może spowodować utratę wielu maszyn wirtualnych. Tworzenie kopii zapasowych danych to najskuteczniejsza strategia pozwalająca uniknąć utraty danych w przypadku ataku ransomware. Postępuj zgodnie z zaleceniami dotyczącymi ochrony ESXi przed oprogramowaniem wymuszającym okup, które zostały omówione powyżej w tym wpisie na blogu. Użyj NAKIVO Backup & Replication do wykonywania kopii zapasowej maszyn wirtualnych znajdujących się na hostach VMware ESXi do niezmiennych repozytoriów. W ten sposób możesz wykorzystać te odporne na oprogramowanie wymuszające okup kopie zapasowe do szybkiego odzyskiwania pełnych maszyn wirtualnych lub danych aplikacji.