Infinity Stealer na macOS: nowy infostealer wykorzystuje ClickFix i ładunek Python kompilowany przez Nuitka - Security Bez Tabu

Infinity Stealer na macOS: nowy infostealer wykorzystuje ClickFix i ładunek Python kompilowany przez Nuitka

Cybersecurity news

Wprowadzenie do problemu / definicja

Infinity Stealer to nowo opisana rodzina malware typu infostealer, wymierzona w użytkowników systemu macOS. Jej głównym celem jest kradzież wrażliwych danych, takich jak poświadczenia zapisane w przeglądarkach, wpisy z Keychain, dane portfeli kryptowalutowych, pliki konfiguracyjne zawierające sekrety oraz zrzuty ekranu. Na tle wielu wcześniejszych kampanii zagrożenie wyróżnia się tym, że nie bazuje na klasycznym exploicie, lecz na socjotechnice, która nakłania ofiarę do samodzielnego uruchomienia złośliwego polecenia w Terminalu.

W skrócie

Kampania wykorzystuje technikę ClickFix, znaną wcześniej głównie z ataków na użytkowników Windows, ale coraz częściej adaptowaną także do środowiska Apple. Ofiara trafia na fałszywą stronę weryfikacyjną przypominającą CAPTCHA i otrzymuje instrukcję wklejenia komendy do Terminala. Po jej wykonaniu uruchamiany jest wieloetapowy łańcuch infekcji.

  • Pierwszy etap stanowi skrypt Bash pobierający kolejne komponenty.
  • Drugi etap to natywny loader dla macOS, skompilowany z użyciem Nuitka.
  • Trzeci etap to właściwy stealer napisany w Pythonie 3.11, odpowiedzialny za zbieranie i eksfiltrację danych.

To połączenie socjotechniki i wieloetapowej architektury pokazuje rosnącą dojrzałość zagrożeń kierowanych przeciwko użytkownikom macOS.

Kontekst / historia

ClickFix zdobył popularność jako metoda obchodzenia części tradycyjnych mechanizmów ochronnych bez konieczności wykorzystywania podatności. Zamiast dostarczać złośliwy plik w załączniku lub inicjować automatyczne pobranie, atakujący skłania ofiarę do wykonania polecenia samodzielnie. W praktyce przenosi to część odpowiedzialności za uruchomienie malware na użytkownika, co utrudnia wykrywanie i zwiększa skuteczność ataku.

W analizowanej kampanii technika została dostosowana do macOS. Instrukcje odwołują się do uruchomienia Spotlight, otwarcia Terminala i wklejenia wskazanej komendy. Badacze zauważyli również podobieństwa pierwszego etapu infekcji do wcześniejszych rodzin malware dla macOS, w tym MacSync, co może sugerować wykorzystanie wspólnych elementów buildera lub ponowne użycie gotowych schematów działania.

Analiza techniczna

Infekcja zaczyna się od wejścia na stronę podszywającą się pod proces weryfikacji użytkownika. Witryna prezentuje komunikat stylizowany na stronę ochronną i instruuje ofiarę, aby wkleiła polecenie Bash do Terminala. To polecenie pobiera pierwszy etap z infrastruktury kontrolowanej przez operatora kampanii.

Pierwszy etap pełni rolę droppera. Skrypt przygotowuje środowisko dla kolejnego komponentu, dekoduje osadzony ładunek, zapisuje binarium drugiego etapu w katalogu tymczasowym, usuwa atrybut kwarantanny systemu macOS za pomocą mechanizmu xattr, uruchamia plik w tle przy użyciu nohup i czyści część śladów po wykonaniu.

Drugi etap to loader w formacie Mach-O przeznaczony dla Apple Silicon. Został przygotowany z użyciem Nuitka w trybie onefile, co oznacza przekształcenie aplikacji Python do postaci natywnego pliku wykonywalnego. Takie podejście utrudnia analizę statyczną i może ograniczać skuteczność części mechanizmów detekcyjnych. Po uruchomieniu loader dekompresuje osadzone dane i przekazuje kontrolę do finalnego modułu kradnącego informacje.

Trzeci etap, określany jako UpdateHelper.bin, został przygotowany dla Python 3.11. To właśnie ten komponent odpowiada za właściwą kradzież danych z systemu ofiary.

  • Zbiera dane z przeglądarek opartych na Chromium oraz z Firefoksa.
  • Odczytuje wpisy z macOS Keychain.
  • Wyszukuje portfele kryptowalutowe.
  • Przechwytuje pliki .env zawierające tokeny i sekrety aplikacyjne.
  • Wykonuje zrzuty ekranu.
  • Eksfiltruje dane przez żądania HTTP POST.

Próbka zawiera również mechanizmy utrudniające analizę. Oprogramowanie sprawdza obecność środowisk analitycznych i sandboxów, stosuje losowe opóźnienia wykonania i ogranicza w ten sposób skuteczność automatycznej detonacji. Dodatkowo operator może otrzymywać powiadomienia przez Telegram, a przechwycone poświadczenia mogą zostać wykorzystane w dalszych etapach ataku.

Konsekwencje / ryzyko

Ryzyko związane z Infinity Stealer jest wysokie, ponieważ malware koncentruje się na danych umożliwiających szybkie przejęcie kont, dostępów firmowych i aktywów finansowych. Kradzież poświadczeń z przeglądarek oraz Keychain może prowadzić do naruszenia poczty, usług chmurowych, VPN, paneli administracyjnych i narzędzi deweloperskich.

Szczególnie groźne jest pozyskiwanie plików .env, które bardzo często zawierają klucze API, dane dostępowe do baz danych, sekrety aplikacyjne i tokeny usług CI/CD. W środowisku firmowym może to oznaczać kompromitację nie tylko pojedynczego urządzenia, ale także repozytoriów kodu, systemów SaaS oraz infrastruktury produkcyjnej. Dla użytkowników indywidualnych skutki mogą obejmować utratę dostępu do poczty, usług finansowych i portfeli kryptowalutowych.

Rekomendacje

Najważniejsza zasada obronna jest prosta: nie należy wklejać do Terminala poleceń pochodzących ze stron internetowych, nawet jeśli strona twierdzi, że jest to część procesu weryfikacji. Legalne mechanizmy CAPTCHA i standardowe systemy bezpieczeństwa nie wymagają uruchamiania komend powłoki przez użytkownika.

Jeśli podejrzane polecenie zostało już wykonane, należy natychmiast przerwać używanie urządzenia do działań wrażliwych, takich jak logowanie do bankowości, poczty czy systemów firmowych. Następnie trzeba z czystego i zaufanego urządzenia zmienić hasła, unieważnić aktywne sesje oraz przeprowadzić rotację tokenów API, kluczy SSH i innych sekretów.

  • Przeprowadzić analizę artefaktów w katalogach tymczasowych.
  • Sprawdzić lokalizacje odpowiedzialne za trwałość, zwłaszcza ~/Library/LaunchAgents/ oraz /tmp.
  • Uruchomić pełne skanowanie antymalware.
  • Zweryfikować historię logowań do krytycznych usług.
  • Monitorować nietypowe połączenia wychodzące i użycie przejętych poświadczeń.
  • W środowiskach firmowych wdrożyć reguły detekcyjne dla nietypowego użycia Terminala, poleceń typu curl | bash, usuwania atrybutów kwarantanny i pojawiania się nieoczekiwanych binariów Mach-O w katalogach tymczasowych.

Podsumowanie

Infinity Stealer potwierdza, że ekosystem zagrożeń dla macOS staje się coraz bardziej zaawansowany. Kampania łączy skuteczną socjotechnikę ClickFix z wieloetapowym łańcuchem infekcji oraz natywnym loaderem zbudowanym przy użyciu Nuitka, co podnosi poziom ukrycia i utrudnia analizę. Najważniejszy wniosek jest jednoznaczny: pojedyncze polecenie wklejone do Terminala może wystarczyć do pełnej kompromitacji danych użytkownika lub organizacji.

Źródła

  • Security Affairs – New macOS Infinity Stealer uses Nuitka Python payload and ClickFix — https://securityaffairs.com/190147/security/new-macos-infinity-stealer-uses-nuitka-python-payload-and-clickfix.html
  • Malwarebytes – Infiniti Stealer: a new macOS infostealer using ClickFix and Python/Nuitka — https://www.malwarebytes.com/blog/threat-intel/2026/03/infiniti-stealer-a-new-macos-infostealer-using-clickfix-and-python-nuitka