Dharma (CrySiS) - ransomware, który wchodzi przez otwarte drzwi RDP
Dharma/CrySiS ransomware (2016-2020) - analiza wektora ataku RDP, model RaaS dla początkujących, zagrożenie dla systemów SCADA przez serwery terminalowe.
Jest rok 2019. Administrator w zakładzie produkcyjnym na południu Europy loguje się na serwer terminalowy przez Remote Desktop Protocol. Robi to od lat - port 3389 wystawiony do internetu, hasło zmieniane raz na kwartał, wieloskładnikowe uwierzytelnianie niekonfigurowane, bo “utrudnia pracę zdalną”. Nie wie, że od dwóch tygodni jego dane logowania krążą po forum w dark webie, kupione za równowartość kilku dolarów. I nie wie, że ktoś - prawdopodobnie początkujący cyberprzestępca z Iranu lub Europy Wschodniej, wyposażony w gotowy zestaw narzędzi i instrukcję krok po kroku - właśnie wpisuje jego hasło w oknie połączenia RDP.
Kilka godzin później każdy plik na serwerze terminalowym, a za nim na kontrolerze domeny i podłączonych stacjach roboczych, zyskuje nowe rozszerzenie: .dharma. Na ekranach pojawia się komunikat z adresem e-mail i żądaniem wpłaty w bitcoinach.
To Dharma - ransomware, który nie potrzebuje wyrafinowanych exploitów ani podatności zero-day. Wystarczą mu otwarte drzwi, które sami zostawiamy.
Historia rodziny - od CrySiS do Dharma
Dharma to bezpośredni następca ransomware CrySiS, którego pierwszą wersję zidentyfikowano w lutym 2016 roku. Kiedy w listopadzie 2016 ktoś opublikował klucze deszyfrujące CrySiS na forum BleepingComputer, twórcy nie zrezygnowali - wypuścili nową wersję pod nazwą Dharma, z ulepszonym szyfrowaniem.
Od tego momentu Dharma ewoluowała nieustannie. Badacze z Malwarebytes, CrowdStrike i Sophos dokumentowali dziesiątki wariantów - każdy z nowym rozszerzeniem plików (.dharma, .wallet, .arena, .java, .adobe, .combo i wiele innych), ale ze wspólnym rdzeniem technicznym i identycznym modelem operacyjnym.
To, co wyróżnia Dharmę na tle innych rodzin ransomware tamtego okresu, to nie wyrafinowanie techniczne - lecz konsekwentna, niemal industrialna prostota ataku.
RDP jako wektor - 85% incydentów
Statystyki są jednoznaczne. Według analiz firm Zscaler, CrowdStrike i Sophos, Remote Desktop Protocol jest wektorem wejściowym w ponad 85% incydentów Dharma. Schemat ataku powtarza się z zaskakującą regularnością:
Faza 1 - Skanowanie. Atakujący używa narzędzi do skanowania portów (Masscan, Shodan) w poszukiwaniu maszyn z wystawionym portem 3389. W szczytowym okresie aktywności Dharmy - lata 2019-2020 - miliony systemów na świecie miały RDP dostępne bezpośrednio z internetu.
Faza 2 - Brute force. Narzędzie NLBrute, dostępne na forach cyberprzestępczych od 2016 roku, automatycznie próbuje tysięcy kombinacji loginów i haseł. Alternatywnie atakujący kupuje gotowe dane uwierzytelniające na marketplace’ach dark webu.
Faza 3 - Dostęp i rekonesans. Po zalogowaniu przez RDP atakujący uzyskuje interaktywną sesję pulpitu zdalnego. Pierwszym krokiem jest wyłączenie oprogramowania antywirusowego - Dharma dostarcza w tym celu dedykowane narzędzia, w tym skrypty PowerShell i programy takie jak PC Hunter czy Process Hacker.
Faza 4 - Ruch lateralny. Używając Mimikatz do wykradania poświadczeń z pamięci lub NirSoft CredentialsFileView do odczytywania zapisanych haseł, atakujący przechodzi na kolejne maszyny w sieci. Kluczowy cel: kontroler domeny, który pozwala wdrożyć ransomware na wszystkich maszynach jednocześnie przez Group Policy.
Faza 5 - Szyfrowanie. Ransomware uruchamiane jest ręcznie lub przez politykę domeny. Pliki zyskują nowe rozszerzenie, a na pulpicie pojawia się plik z instrukcją kontaktu.
RaaS dla początkujących - podręcznik przestępcy w zestawie
To, co czyni Dharmę wyjątkową, to jej model dystrybucji. Badacze z Sophos opisali w sierpniu 2020 roku pełny zestaw narzędzi, jaki otrzymuje afiliant Dharmy po dokonaniu płatności na forum. Zestaw zawiera: ransomware, narzędzia do wyłączania zabezpieczeń, skrypt PowerShell automatyzujący większość kroków - oraz szczegółową instrukcję obsługi, krok po kroku, z numerowanymi punktami.
Sophos nazwał to podejście “color by numbers” - malowanie po numerach. Afiliant nie musi rozumieć, jak działa Mimikatz ani co robi Group Policy Object. Wystarczy, że potrafi zalogować się przez RDP i wykonać kolejne kroki z instrukcji.
To obniżyło barierę wejścia do świata ransomware do poziomu, na którym dosłownie każdy z dostępem do internetu i gotowością do zapłaty za zestaw narzędzi mógł przeprowadzić atak. W sierpniu 2020 roku Threatpost i Group-IB zidentyfikowali kampanię, w której powiązani z Iranem, niedoświadczeni operatorzy - określani jako “newbie hackers” - rozprzestrzeniali Dharmę przez RDP w celach czysto komercyjnych.
Zagrożenie dla systemów przemysłowych - serwery terminalowe jako brama
I tu dochodzimy do kwestii, która czyni Dharmę szczególnie istotną z perspektywy bezpieczeństwa OT.
W wielu zakładach przemysłowych - energetyce, wodociągach, produkcji - serwery terminalowe pełnią funkcję stacji dostępowych do systemów SCADA i HMI. Operatorzy logują się na serwer terminalowy przez RDP, a stamtąd uzyskują dostęp do aplikacji sterujących procesami fizycznymi.
Scenariusz wygląda tak: serwer terminalowy z wystawionym portem RDP do internetu (lub do sieci korporacyjnej bez odpowiedniej segmentacji) pada ofiarą ataku Dharma. Ransomware szyfruje pliki na serwerze - w tym konfiguracje, pliki projektowe SCADA, historyczne bazy danych procesowych. Jeśli serwer terminalowy ma połączenie sieciowe z kontrolerami PLC/RTU - co w źle zsegmentowanych sieciach OT nie jest rzadkością - zaszyfrowanie serwera może pozbawić operatorów dostępu do interfejsów sterowania.
To nie jest scenariusz teoretyczny. CrowdStrike w swoim raporcie z 2020 roku dokumentował incydenty Dharma w sektorze transportu i energetyki, gdzie atakujący - prawdopodobnie nieświadomie - dotarli do segmentów sieci OT przez serwery terminalowe.
Problem polega na tym, że operatorzy Dharmy nie celują w systemy przemysłowe z premedytacją. Celują we wszystko, co ma otwarty port 3389. To ransomware oportunistyczny - skanuje, atakuje, szyfruje. Jeśli za portem 3389 stoi serwer terminalowy z dostępem do SCADA, Dharma go zaszyfruje tak samo, jak zaszyfrowałaby serwer z księgowością.
I właśnie to czyni ją tak niebezpieczną dla OT. Nie potrzeba zaawansowanej grupy APT, by sparaliżować dostęp do systemów sterowania. Wystarczy początkujący cyberprzestępca z zestawem narzędzi za kilkaset dolarów i jedno słabe hasło RDP.
Więcej o zagrożeniach związanych ze zdalnym dostępem do systemów przemysłowych i dobrych praktykach jego zabezpieczania piszemy w artykule: Zdalny dostęp do systemów ICS - zagrożenia i dobre praktyki.
Skala zjawiska
W szczytowym okresie aktywności (2019-2020) Dharma/CrySiS konsekwentnie plasowała się w pierwszej trójce najczęściej zgłaszanych rodzin ransomware. Firma Coveware, specjalizująca się w negocjacjach z grupami ransomware, wskazywała Dharmę jako najczęstszą rodzinę ransomware w incydentach obsługiwanych w Q1 2020.
Średnie żądanie okupu było relatywnie niskie - od kilku do kilkudziesięciu tysięcy dolarów - co odróżniało Dharmę od “wielkich łowców” pokroju REvil czy Ryuk, celujących w okupy liczone w milionach. Dharma zarabiała na wolumenie. Setki mniejszych ataków na małe i średnie firmy, szpitale, urzędy - każdy za kilka tysięcy dolarów, ale w masowej skali.
Jak się chronić
Ochrona przed Dharmą nie wymaga zaawansowanych narzędzi. Wymaga dyscypliny:
- Nie wystawiaj RDP do internetu. Nigdy. Jeśli potrzebujesz zdalnego dostępu, użyj VPN z MFA.
- Wyłącz nieużywane konta. Konta serwisowe, testowe, byłych pracowników - każde z nich to potencjalny wektor wejściowy.
- Wymuszaj silne hasła i MFA. NLBrute łamie słabe hasła w minuty. Drugie składnik uwierzytelniania eliminuje ten wektor.
- Segmentuj sieci. Serwer terminalowy z dostępem do SCADA nie powinien znajdować się w tej samej strefie sieciowej co zasoby IT. Architektura stref i korytarzy zgodna z IEC 62443 to minimum.
- Monitoruj logowania RDP. Nieudane próby logowania, logowania z nietypowych lokalizacji, logowania poza godzinami pracy - to sygnały, które powinny generować alerty.
Podsumowanie
Dharma nie jest opowieścią o wyrafinowanym ataku. To opowieść o otwartych drzwiach. O portach RDP wystawionych do internetu, o hasłach, które można złamać w minuty, o sieciach bez segmentacji, w których kompromitacja jednego serwera oznacza kompromitację wszystkiego.
Dla środowisk przemysłowych - gdzie serwery terminalowe często stanowią jedyną drogę dostępu operatorów do systemów SCADA - Dharma jest przypomnieniem, że nie potrzeba grupy APT sponsorowanej przez państwo, by sparaliżować zakład produkcyjny. Wystarczy skaner portów, NLBrute i instrukcja obsługi.
Źródła
- Threat spotlight: CrySIS, aka Dharma ransomware - Malwarebytes
- Dharma Ransomware Intrusions Exhibit Consistent Techniques - CrowdStrike
- Color by numbers: inside a Dharma ransomware-as-a-service attack - Sophos
- Iran-Linked Newbie Hackers Spread Dharma Ransomware Via RDP Ports - Threatpost
- Ransomware Delivered Using RDP Brute-Force Attack - Zscaler
- The Ongoing Threat of Dharma Ransomware Attacks - Darktrace
- Dharma (CrySiS) Ransomware: Technical Analysis - Acronis