Cyberbezpieczeństwo

Dlaczego Twoi użytkownicy wklejają złośliwe oprogramowanie bezpośrednio do programu PowerShell

Kampania TerminalFix wykorzystuje fałszywe testy CAPTCHA, aby nakłonić użytkowników do wklejania złośliwych poleceń PowerShell, tworząc odwrotne tunele dla ataków na przedsiębiorstwa.
Dlaczego Twoi użytkownicy wklejają złośliwe oprogramowanie bezpośrednio do programu PowerShell

Menedżer marketingu w średniej wielkości firmie ma frustrujący wtorek. Link do aplikacji Zoom na krytyczne spotkanie z klientem nie ładuje się poprawnie, wyświetlając błąd przeglądarki o brakującym kodeku. Pojawia się pomocne wyskakujące okienko z przyciskiem „Napraw”. Prosi ono menedżera o skopiowanie linii kodu, otwarcie programu PowerShell i wklejenie polecenia w celu rozwiązania problemu. W ciągu kilku sekund menedżer wraca na spotkanie, nieświadomy tego, że właśnie zaprosił cyberprzestępcę do wewnętrznej sieci firmy. To jest sedno taktyki socjotechnicznej ClickFix, a jej najnowszą ewolucją jest kampania, którą Microsoft nazywa TerminalFix.

Niedawno analizowałem próbkę z tej kampanii w moim laboratorium. Techniczne zaawansowanie złośliwego oprogramowania jest godne uwagi, ale to manipulacja psychologiczna jest prawdziwym silnikiem tego ataku. Napastnicy przenieśli środek ciężkości z technicznych exploitów na coś, co nazywam „wykonaniem wspomaganym przez człowieka”. Nie muszą już szukać luki typu zero-day w przeglądarce, skoro mogą po prostu przekonać człowieka do samodzielnego obejścia każdego zabezpieczenia na własnym komputerze. Z perspektywy ryzyka, takie działanie omija całą koncepcję obwodu sieciowego.

Psychologiczna pułapka fałszywego testu captcha

Kampania TerminalFix zaczyna się od przejętej strony internetowej lub złośliwej reklamy. Gdy użytkownik trafia na stronę, widzi realistyczną nakładkę imitującą CAPTCHA Cloudflare lub powiadomienie o aktualizacji przeglądarki. To sprytny wybór, ponieważ użytkownicy są przyzwyczajeni do ufania tym interfejsom. Od dekady powtarza się nam, że testy CAPTCHA to sposób, w jaki udowadniamy, że jesteśmy ludźmi i dbamy o bezpieczeństwo. Atakujący podważa to zaufanie, zamieniając rytuał bezpieczeństwa w wektor infekcji.

W wariancie TerminalFix użytkownik otrzymuje instrukcję wykonania serii ręcznych kroków w celu „zweryfikowania” swojej tożsamości lub naprawienia błędu renderowania. Instrukcje mówią użytkownikowi, aby nacisnął określoną kombinację klawiszy, taką jak klawisz Windows + R, lub bezpośrednio otworzył Terminal Windows. Podczas gdy użytkownik wykonuje te kroki, strona internetowa po cichu kopiuje złośliwe polecenie do schowka systemowego. Kiedy użytkownik wkleja to, co uważa za klucz weryfikacyjny, w rzeczywistości wkleja jednowierszowe polecenie PowerShell, które inicjuje wieloetapową infekcję.

Patrząc na krajobraz zagrożeń, metoda ta jest niezwykle skuteczna, ponieważ omija wiele tradycyjnych filtrów bram pocztowych. Nie ma złośliwego załącznika do skanowania ani podejrzanego linku w skrzynce odbiorczej. Interakcja odbywa się w całości w przeglądarce i lokalnym środowisku użytkownika. Z założenia polecenie jest często zaciemnione (obfuskowane) lub wykorzystuje legalne narzędzia systemowe, takie jak „powershell.exe” lub „msiexec.exe”, do pobrania kolejnego etapu, co utrudnia podstawowemu oprogramowaniu antywirusowemu oznaczenie początkowego wykonania jako groźne.

Przejście z okna Uruchom do terminala

Wcześniejsze kampanie ClickFix często opierały się na oknie dialogowym „Uruchom” systemu Windows do wykonywania krótkich poleceń. Choć skuteczne w przypadku prostych programów pobierających (downloaders), okno „Uruchom” ma limit znaków, który ogranicza złożoność początkowego skryptu. TerminalFix celuje zamiast tego w Terminal Windows lub PowerShell. Ta zmiana nie jest tylko preferencją kosmetyczną. Okno terminala może przyjąć znacznie dłuższe, wielowierszowe skrypty, które zawierają wbudowaną logikę sprawdzania środowiska i procedury antyanalityczne.

Badacze Microsoftu twierdzą, że kierowanie użytkowników do programu PowerShell zwiększa prawdopodobieństwo pomyślnego wykonania złożonych skryptów. Nowoczesne wersje systemu Windows często domyślnie otwierają Terminal w sesji PowerShell, zapewniając atakującemu potężne środowisko skryptowe od razu po uruchomieniu. Ta złożoność pozwala atakującemu na przeprowadzenie wstępnego rozpoznania, zanim jakikolwiek wtórny ładunek (payload) trafi na dysk. Skrypt może sprawdzić, czy maszyna jest przyłączona do domeny, szukać konkretnego oprogramowania zabezpieczającego lub ustalić, czy działa wewnątrz maszyny wirtualnej używanej przez badaczy złośliwego oprogramowania.

Za kulisami początkowe polecenie PowerShell pobiera archiwum ZIP. Wewnątrz tego archiwum znajduje się legalny plik wykonywalny i złośliwa biblioteka DLL. Atakujący wykorzystuje technikę zwaną DLL sideloading. Gdy legalny program jest uruchamiany, szuka określonych plików bibliotek potrzebnych do działania. Atakujący umieszcza złośliwy plik o tej samej nazwie w tym samym folderze. System ładuje złośliwy kod zamiast prawdziwej biblioteki. Jest to dyskretny sposób na ukrycie złośliwej aktywności pod nazwą procesu zaufanej aplikacji.

Steganografia i implant z odwrotnym tunelem

Łańcuch ataku nie kończy się na prostym wykonaniu pliku. TerminalFix wykorzystuje steganografię do ukrycia swoich wtórnych ładunków wewnątrz pozornie nieszkodliwych plików obrazów PNG. Jest to środek reaktywny przeciwko sieciowej inspekcji ruchu. Zapora ogniowa może zablokować bezpośrednie pobieranie pliku wykonywalnego, ale mało prawdopodobne jest, aby oznaczyła serię pobrań obrazów z legalnie wyglądającej domeny. Złośliwa biblioteka DLL wyodrębnia ukryty kod z tych obrazów i składa końcowy ładunek w pamięci.

Jednym z najniebezpieczniejszych komponentów tej kampanii jest oparty na języku Python implant C2 z odwrotnym tunelem (reverse-tunnel). Implant ten ustanawia trwałe połączenie z infrastrukturą atakującego przy użyciu zaszyfrowanego kanału WebSocket. Przesyła on dowolny ruch TCP z powrotem przez ten kanał. Mówiąc proaktywnie, jest to koszmar dla osób reagujących na incydenty. Skutecznie umieszcza to atakującego wewnątrz sieci wewnętrznej, tak jakby był fizycznie podłączony do portu ethernetowego w biurze.

W przypadku naruszenia bezpieczeństwa z wykorzystaniem tego odwrotnego tunelu, atakujący ma bezpośredni wgląd w kontrolery domeny organizacji, udziały plików i aplikacje wewnętrzne. Mogą oni ominąć wiele zewnętrznych zabezpieczeń, ponieważ ich ruch pochodzi z zaufanego hosta wewnętrznego. Badacze Microsoftu zaobserwowali, że atakujący wykorzystują ten dostęp do eskalacji uprawnień i eksfiltracji wrażliwych danych. W niektórych przypadkach dostęp ten prowadzi bezpośrednio do wdrożenia oprogramowania ransomware w całym przedsiębiorstwie.

Debata nad nowością nazwy TerminalFix

W społeczności zajmującej się bezpieczeństwem trwa ożywiona debata na temat tego, czy TerminalFix jest rzeczywiście odrębnym zagrożeniem. Niektórzy badacze, w tym Tommy Madjar z Proofpoint, argumentują, że korzystanie z okien terminala nie jest nowym zjawiskiem. Zwracają uwagę, że najwcześniejsze działania ClickFix z początku 2024 roku wykorzystywały już okna terminala do wykonywania ładunków. Z tego punktu widzenia TerminalFix to tylko kolejna iteracja ustalonych klastrów, takich jak ClearFake czy ErrTraffic.

Komunikuję się za pośrednictwem aplikacji Signal z kilkoma analitykami ds. zagrożeń, którzy podzielają ten sceptycyzm. Postrzegają oni te kampanie jako ciągłą ewolucję przynęt socjotechnicznych, a nie zestaw odrębnych, markowych zagrożeń. Niezależnie od tego, czy nazwiemy to TerminalFix, czy wariantem ClearFake, rzeczywistość techniczna pozostaje taka sama. Atakujący skutecznie odchodzą od zautomatyzowanych exploitów na rzecz manipulowania zachowaniem użytkowników. Ta zmiana wymaga od nas ponownego przemyślenia sposobu obrony punktów końcowych.

Na poziomie architektury problem polega na tym, że zbudowaliśmy systemy, które zapewniają ogromną moc standardowemu użytkownikowi za pośrednictwem wiersza poleceń. Podczas gdy programiści i administratorzy systemów potrzebują tych narzędzi, typowy pracownik biurowy rzadko musi dotykać programu PowerShell. Kampania TerminalFix wykorzystuje to nadmierne przydzielanie uprawnień. Jeśli użytkownik ma uprawnienia do uruchomienia skryptu, który tworzy trwały tunel sieciowy, to bezpieczeństwo całej organizacji zależy od tego, czy ten jeden użytkownik nie zostanie oszukany.

Praktyczna obrona i ludzka zapora ogniowa

Obrona przed TerminalFix wymaga połączenia ograniczeń technicznych i edukacji użytkowników. Pomijając patchowanie, najskuteczniejszym technicznym środkiem zaradczym jest ograniczenie dostępu do programu PowerShell i okna „Uruchom” dla użytkowników, którzy ich nie potrzebują. Organizacje mogą korzystać z zasad grupy (GPO) lub AppLocker, aby stworzyć postawę „domyślnego blokowania” dla tych narzędzi. Gdyby menedżer marketingu z mojego wcześniejszego przykładu spróbował otworzyć PowerShell i otrzymał komunikat „To działanie jest ograniczone przez administratora”, atak natychmiast by się nie powiódł.

Jednak szerokie ograniczenia nie zawsze są wykonalne. Wiele nowoczesnych narzędzi programowych opiera się na wykonywaniu poleceń w terminalu podczas instalacji i aktualizacji. Jak zauważył Tommy Madjar, nawet legalne narzędzia programistyczne, takie jak Claude Code, sugerują metody instalacji polegające na wklejaniu poleceń do terminala. Stwarza to dezorientujące środowisko dla użytkowników. Mówi się im, aby nigdy nie wklejali poleceń ze stron internetowych, a potem ich oficjalne narzędzia korporacyjne proszą ich o zrobienie dokładnie tego samego. Dlatego edukacja jest krytycznym elementem ludzkiej zapory ogniowej.

Szkolenia muszą wykraczać poza proste rady typu „nie klikaj”. Użytkownicy muszą zrozumieć koncepcję zaufanego źródła i szczególne niebezpieczeństwo związane ze schowkiem. Zalecam, aby organizacje przeprowadzały symulacje phishingu, które konkretnie naśladują technikę ClickFix. Zobaczenie, jak łatwo fałszywy test CAPTCHA może doprowadzić do monitu terminala, jest otwierającym oczy doświadczeniem dla większości pracowników. Kiedy użytkownicy rozumieją mechanizm ataku, są bardziej skłonni do zachowania odporności, gdy zmierzą się z prawdziwym zagrożeniem.

Z perspektywy informatyki śledczej zespoły ds. bezpieczeństwa powinny monitorować nietypowe relacje procesów nadrzędny-podrzędny. Rzadko zdarza się, aby przeglądarka internetowa, taka jak Chrome lub Edge, była procesem nadrzędnym dla sesji PowerShell, która następnie uruchamia aktywny sieciowo interpreter Pythona. Sygnały te są precyzyjnymi wskaźnikami wtargnięcia TerminalFix. Ustalenie linii bazowej normalnego użytkowania terminala pozwala SOC na zidentyfikowanie tych anomalii, zanim atakujący zdoła przemieścić się bocznie wewnątrz sieci.

Kluczowe wnioski dla bezpieczeństwa przedsiębiorstw

  • Przeprowadź audyt użycia programu PowerShell i Terminala Windows w całej organizacji i ogranicz dostęp dla standardowych użytkowników za pomocą GPO lub AppLocker.
  • Monitoruj wskaźniki DLL sideloading, w szczególności legalne pliki wykonywalne uruchamiane z nietypowych katalogów lub ładujące niepodpisane biblioteki DLL.
  • Wdróż monitorowanie sieci w celu wykrywania trwałego ruchu WebSocket o dużym natężeniu do nieznanych zewnętrznych adresów IP, co może wskazywać na odwrotny tunel.
  • Zaktualizuj szkolenia w zakresie świadomości bezpieczeństwa o przynęty w stylu „ClickFix” oraz niebezpieczeństwa związane z wklejaniem poleceń ze schowka do okien terminala.
  • Oceń zastosowanie rozwiązań do kontroli aplikacji, które mogą zapobiegać wykonywaniu nieautoryzowanych skryptów, nawet jeśli zostaną wklejone do legalnej powłoki.

Źródła: Microsoft Threat Intelligence, MITRE ATT&CK (Techniki T1547.001, T1574.002, T1027.003), Proofpoint Threat Research.

Niniejszy artykuł służy wyłącznie celom informacyjnym i edukacyjnym i nie zastępuje profesjonalnego audytu cyberbezpieczeństwa ani usługi reagowania na incydenty.

bg
bg
bg

Do zobaczenia po drugiej stronie.

Nasze kompleksowe, szyfrowane rozwiązanie do poczty e-mail i przechowywania danych w chmurze zapewnia najpotężniejsze środki bezpiecznej wymiany danych, zapewniając bezpieczeństwo i prywatność danych.

/ Utwórz bezpłatne konto