XCSSET na macOS: Jak działa jego nowa odmiana i jak się przed nią bronić

Ostatnia aktualizacja: 29/09/2025
Autor: Isaac
  • Nowa odmiana XCSSET z zaawansowanym zaciemnianiem i wielokrotnym utrwalaniem (zshrc, Dock i LaunchDaemon).
  • Rozszerza ochronę przed kradzieżą danych na przeglądarkę Firefox i dodaje narzędzie Clipper do przekierowywania transakcji kryptograficznych z schowek.
  • Zakażenie współdzielonych projektów Xcode: uruchamianie tylko skryptów AppleScript, zmiana nazw modułów i eksfiltracja C2.
  • Zalecenia: Zaktualizuj system macOS, przeprowadź audyt projektów przed ich kompilacją i monitoruj osascript/dockutil.

Szkodliwe oprogramowanie XCSSET w systemie macOS

Rodzina malware XCSSET dla systemu macOS powrócił w ulepszonej wersji, co nie jest małym osiągnięciem: Usługa Microsoft Threat Intelligence zidentyfikowała istotne zmiany w technikach zaciemniania, trwałości i kradzieży danych. które podnoszą poprzeczkę w tym starym znajomym. Jeśli pracujesz z Xcode lub dzielisz projekty między zespołami, będziesz chciał być na bieżąco z tym, co się dzieje.

Od momentu odkrycia w 2020 r. XCSSET dostosowuje się do zmian w ekosystemie Apple. To, co obecnie obserwujemy, jest pierwszym publicznie udokumentowanym nowym wariantem od 2022 r., wykryte w ograniczonych atakach, ale o rozszerzonych możliwościach. To modułowe złośliwe oprogramowanie, które wkrada się do projektów Xcode, aby wykonać swój ładunek po ich skompilowaniu. W tej iteracji wykorzystuje bardziej przebiegłe taktyki, aby się kamuflować i przetrwać.

Czym jest XCSSET i dlaczego rozprzestrzenia się tak dobrze?

W istocie XCSSET to zestaw złośliwych modułów zaprojektowanych w celu zarażaj projekty Xcode i aktywuj ich funkcje podczas kompilacjiNajbardziej prawdopodobnym wektorem propagacji jest współdzielenie plików projektu pomiędzy współpracującymi ze sobą programistami. mobilne i webowe dla systemu macOS, co zwiększa możliwości wykonywania w każdej kompilacji.

Historycznie rzecz biorąc, to złośliwe oprogramowanie potrafiło wykorzystywać luki typu zero-day, wstrzykiwać kod do projektów, a nawet wprowadzać tylne furtki do komponentów ekosystemu Apple, takich jak SafariW miarę rozwoju oprogramowania zwiększała się również kompatybilność z nowszymi wersjami systemów macOS i architekturą Apple Silicon (M1), co świadczy o jego niezwykłej zdolności adaptacji.

W terenie XCSSET działa jako złodziej informacji i kryptowaluty: potrafi zbierać dane z popularnych programów (Evernote, Notes, Skype, Telegram, QQ, WeChat i więcej), eksfiltrować pliki systemowe i aplikacji, a konkretnie atakować portfele cyfrowe. Ponadto niektóre warianty wykazały Nieautoryzowane zrzuty ekranu, szyfrowanie plików i wysyłanie żądań okupu.

Co nowego w najnowszej wersji

Firma Microsoft podała szczegółowe informacje, że najnowsza wersja zawiera Nowe metody zaciemniania, trwałości i strategie infekcjiNie mówimy już tylko o zamianie nazw czy kompresji kodu: teraz w sposobie generowania ładunków, które mogą zanieczyszczać projekty Xcode, pojawia się większa przypadkowość.

Uderzającą zmianą jest łączone wykorzystanie technik kodowania. Podczas gdy poprzednie wersje opierały się wyłącznie na xxd (zrzucie heksadecymalnym), Nowa wersja dodaje Base64 i stosuje losową liczbę iteracji, co utrudnia identyfikację i rozplątywanie ładunku.

Wewnętrzne nazwy modułów są również bardziej ukryte niż kiedykolwiek: Są one zaciemniane na poziomie kodu, aby ukryć ich celUtrudnia to analizę statyczną oraz korelację między funkcjami i obserwowalnymi efektami w systemie.

Trwałość: metody „zshrc” i „dock”

Jedną z cech charakterystycznych powrotu XCSSET są dwie bardzo różne ścieżki umożliwiające przeżycie po zakażeniu. Metoda „zshrc” wykorzystuje konfigurację powłoki do automatycznego uruchamiania w każdej sesji, a metoda „dock” manipuluje skrótami systemowymi w celu wykonania złośliwego ładunku w sposób niewidoczny dla użytkownika.

  Avast nie działa, przyczyny, rozwiązania, alternatywy

W podejściu „zshrc” złośliwe oprogramowanie tworzy plik o nazwie ~/.zshrc_aliases z ładunkiem a następnie dodaje polecenie do pliku ~/.zshrc, które gwarantuje, że plik zostanie załadowany za każdym razem, gdy otwierana jest nowa sesja. Zapewnia to trwałość na wszystkich terminalach, nie wzbudzając żadnych oczywistych podejrzeń.

Plan „dokowania” polega na pobraniu podpisanego narzędzia z serwera poleceń i kontroli, dockutil, do zarządzania elementami DockNastępnie tworzy fałszywą aplikację Launchpad i zastępuje ścieżkę do legalnego Launchpada w Docku tą fałszywą aplikacją. Rezultat: za każdym razem, gdy użytkownik uruchamia Launchpada z Docku, otwiera się prawdziwa aplikacja i równolegle aktywowano złośliwy ładunek.

W ramach wzmocnienia wariant wprowadza Nowe kryteria decydujące o tym, gdzie w projekcie Xcode umieścić ładunekOptymalizuje to wpływ i minimalizuje ryzyko, że deweloper zauważy coś nietypowego podczas przeglądania drzewa projektu.

AppleScript, ukryte wykonywanie i łańcuch infekcji

Badania firmy Microsoft opisują, że XCSSET używa Skrypty AppleScripts kompilowane w trybie tylko do uruchomienia aby działać w ukryciu i uniemożliwić bezpośredniej analizie ujawnienie jego zawartości. Ta technika jest zgodna z celem zapewnienia niewidzialności i unikania narzędzi do inspekcji skryptów.

W czwartej fazie łańcucha infekcji obserwuje się, że Aplikacja AppleScript uruchamia polecenie powłoki w celu pobrania etapu końcowegoTen ostatni AppleScript zbiera informacje z zainfekowanego systemu i uruchamia podmoduły, wywołując funkcję boot(), która koordynuje modułowe wdrażanie funkcji.

Wykryto również zmiany logiczne: Dodatkowe kontrole przeglądarki Firefox oraz inną metodę potwierdzania obecności aplikacji do przesyłania wiadomości Telegram. To nie są drobne szczegóły; wskazują one na wyraźny zamiar zwiększenia wiarygodności gromadzenia danych i rozszerzenia jego zakresu.

Zmienione nazwy modułów i nowe części

W każdej rewizji rodzina XCSSET nieznacznie zmieniała nazwy swoich modułów, co przypominało klasyczną grę w kotka i myszkę. utrudniać śledzenie wersji i podpisów. Mimo to jego funkcjonalność pozostaje generalnie spójna.

Wśród wyróżnionych modułów tego wariantu pojawiają się takie identyfikatory jak: vexyeqj (dawniej seizecj), który pobierz inny moduł o nazwie bnk i uruchamia go za pomocą osascript. To scenariusz dodaje funkcje walidacji danych, szyfrowania, deszyfrowania, pobierania dodatkowej zawartości z C2 oraz rejestrowania zdarzeń, a także zawiera komponent „clipper”.

Wspomniano również o neq_cdyd_ilvcmwx, podobnie jak txzx_vostfdi, który jest odpowiedzialny za wyekstrahować pliki do serwera poleceń i kontroli; moduł xmyyeqjx który przygotowuje Trwałość oparta na LaunchDaemon; Hej (dawniej jez) który konfiguruje trwałość poprzez Git; i iewmilh_cdyd, odpowiedzialny za kradzież danych z przeglądarki Firefox przy użyciu zmodyfikowanej wersji publicznego narzędzia HackBrowserData.

  • vexyeqj: moduł informacyjny; pobierz i używaj BNK, integruje clipper i szyfrowanie.
  • neq_cdyd_ilvcmwx:eksfiltracja plików do C2.
  • xmyyeqjx: trwałość przez LaunchDaemon.
  • Hej:trwałość poprzez Git.
  • iewmilh_cdyd: Kradzież danych Firefoksa za pomocą zmodyfikowanej wersji HackBrowserData.

Skupienie się na przeglądarce Firefox jest szczególnie istotne, ponieważ rozszerza zasięg poza Chromium i SafariOznacza to, że grono potencjalnych ofiar się powiększa, a techniki pozyskiwania danych uwierzytelniających i plików cookie są udoskonalane pod kątem różnych przeglądarek.

  Czym są ataki manipulacyjne WDAC i jak się przed nimi bronić?

Kradzież kryptowaluty z wykorzystaniem przejęcia schowka

Jedną z możliwości budzących największe obawy w tej ewolucji jest moduł „clipper”. Monitoruje schowek pod kątem wyrażeń regularnych odpowiadających adresom kryptowalut (różne formaty portfeli). Gdy tylko wykryje dopasowanie, natychmiast zastępuje adres adresem kontrolowanym przez atakującego.

Do wywołania spustoszenia ten atak nie wymaga wysokich uprawnień: Ofiara kopiuje swój adres z portfela, wkleja go, aby wysłać środki i nieświadomie przekazuje go atakującemuJak zauważył zespół Microsoftu, podważa to zaufanie do tak podstawowej czynności jak kopiowanie i wklejanie.

Połączenie clippera i kradzieży danych przeglądarki sprawia, że ​​XCSSET jest Praktyczne zagrożenie dla cyberprzestępców skupiających się na kryptoaktywachPotrafią uzyskać dostęp do plików cookie sesji, zapisanych haseł, a nawet przekierowywać transakcje bez naruszania widocznego salda ofiary, aż do momentu, gdy jest już za późno.

Inne taktyki wytrwałości i kamuflażu

Oprócz „zshrc” i „dock” Microsoft opisuje, że ta odmiana dodaje Wpisy LaunchDaemon wykonujące ładunek w ~/.rootMechanizm ten zapewnia wczesne i stabilne uruchomienie oraz pozwala ukryć się w gąszczu usług systemowych ładowanych w tle.

Zaobserwowano również powstanie Sfałszowana aplikacja System Settings.app w /tmp, co pozwala złośliwemu oprogramowaniu na maskowanie swojej aktywności pod postacią legalnej aplikacji systemowej. Ten rodzaj podszywania się pomaga uniknąć podejrzeń podczas inspekcji procesów lub ścieżek podczas losowego wykonywania.

Równocześnie prace XCSSET nad zaciemnianiem kodu znów znalazły się w centrum uwagi: Bardziej zaawansowane szyfrowanie, losowe nazwy modułów i skrypty AppleScript przeznaczone wyłącznie do uruchamianiaWszystko wskazuje na to, że trzeba wydłużyć czas trwania kampanii, zanim zostanie zneutralizowana przez sygnatury i reguły wykrywania.

Możliwości historyczne: poza przeglądarką

Z perspektywy czasu XCSSET nie ograniczał się wyłącznie do opróżniania przeglądarek. Jego zdolność do wyodrębnij dane z aplikacji takich jak Google Chrome, Opera, Telegram, Evernote, Skype, WeChat i własne aplikacje Apple, takie jak Kontakty i notatkiChodzi o szereg źródeł obejmujących wiadomości, dane dotyczące produktywności i dane osobowe.

W 2021 r. raporty takie jak Jamf opisywały, w jaki sposób XCSSET wykorzystywał CVE-2021-30713, obejście struktury TCC, pić zrzuty ekranu pulpitu bez pytania o pozwolenie. Ta umiejętność jest zgodna z jasno określonym celem: szpiegować i zbierać poufne materiały z minimalnym tarciem dla użytkownika.

Z czasem złośliwe oprogramowanie zostało dostosowane do Zgodność z systemem macOS Monterey a z chipami M1 jest coś, co podkreśla jego ciągłość i utrzymanie przez atakującychDo dziś dnia dokładne pochodzenie tej operacji pozostaje niejasne.

Jak wkrada się do projektów Xcode

Rozkład XCSSET nie jest szczegółowy co do milimetra, ale wszystko wskazuje na to, że Skorzystaj z możliwości współdzielenia projektów Xcode między programistamiJeśli repozytorium lub pakiet jest już naruszony, każda kolejna kompilacja aktywuje złośliwy kod.

Ten wzorzec sprawia, że ​​zespoły programistyczne stają się uprzywilejowane wektory propagacyjne, szczególnie w środowiskach z niedopracowanymi praktykami sprawdzania zależności, skryptami kompilacji lub współdzielonymi szablonami. To przypomnienie, że łańcuch dostaw oprogramowania stał się powtarzającym się celem.

  WhatsApp: Kompletny przewodnik po prywatności i bezpieczeństwie

Biorąc pod uwagę ten scenariusz, ma sens, że nowy wariant wzmacnia logika decydowania, gdzie w projekcie umieścić ładunkiIm bardziej „naturalnie” wygląda Twoja lokalizacja, tym mniejsze prawdopodobieństwo, że deweloper ją wykryje podczas szybkiego skanowania.

Ergonomia ataku: błędy, etapy i oznaki

Firma Microsoft zapowiedziała już wcześniej w tym roku ulepszenia w XCSSET. zarządzanie błędami i trwałośćWażne jest to, że teraz pasuje do łańcucha infekcji krok po kroku: AppleScript, który uruchamia polecenie powłoki, które pobiera kolejny ostateczny AppleScript, który z kolei zbiera informacje o systemie i uruchamia podmoduły.

Jeśli szukasz znaków, obecności ~/.zshrc_aliases, manipulacje w ~/.zshrc, podejrzane wpisy w LaunchDaemons lub dziwny plik System Settings.app w /tmp To wskaźniki, na które należy zwracać uwagę. Każda nietypowa aktywność w Docku (np. zmiana ścieżek Launchpad) również powinna wywołać alarm.

W środowiskach zarządzanych centra SOC powinny kalibrować reguły, które dążą do Nietypowy osascript, powtarzające się wywołania dockutil i artefakty zakodowane lub zaszyfrowane w formacie Base64 połączony z procesami kompilacji Xcode i korzysta z narzędzi do przeglądaj uruchomione procesy w systemie macOSKontekst kompilacji ma kluczowe znaczenie dla ograniczenia liczby wyników fałszywie dodatnich.

Do kogo skierowany jest projekt XCSSET?

Naturalnie skupiają się na tych, którzy tworzą lub kompilują przy użyciu Xcode, ale wpływ może rozszerzyć się na użytkowników, którzy zainstaluj wbudowane aplikacje z zanieczyszczonych projektów. Część finansowa pojawia się w przejęcie schowka, szczególnie istotne dla tych, którzy regularnie obracają kryptowalutami.

W sferze danych eksfiltracja z Firefoksa i innych aplikacji naraża na ryzyko dane uwierzytelniające, pliki cookie sesji i osobiste notatki. Dodaj do tego starsze możliwości zrzuty ekranu, szyfrowanie plików i notatki dotyczące okupu, obraz jest więcej niż kompletny.

Wykryte dotychczas ataki zdają się ograniczony zakres, ale jak to często bywa, ujawnienie prawdziwej skali kampanii może zająć trochę czasu. Modułowość ułatwia szybkie iteracje, zmiany nazw i dostrajanie w celu uniknięcia wykrycia.

Praktyczne zalecenia dotyczące zmniejszania ryzyka

Po pierwsze, zaktualizuj dyscyplinę: Aktualizuj system macOS i aplikacje i rozważ rozwiązania antymalware. Pakiet XCSSET już wykorzystuje luki w zabezpieczeniach, w tym luki typu zero-day, dlatego uaktualnienie do najnowszej wersji znacznie zmniejsza powierzchnię ataku.

Po drugie sprawdź projekty Xcode które pobierasz lub klonujesz z repozytoriów i zachowaj szczególną ostrożność przy kompilowaniu. Przejrzyj skrypty kompilacji, Uruchom fazy skryptu, zależności i wszelkie pliki wykonywane w procesie kompilacji.

Po trzecie, bądź ostrożny ze schowkiem. Unikaj kopiowania/wklejania niezweryfikowanych adresów portfeli: Przed potwierdzeniem transakcji sprawdź dokładnie pierwszy i ostatni znak. To drobny gest, który może zaoszczędzić Ci wielu kłopotów.

Po czwarte, telemetria i łowiectwo. Monitoruje osascript, dockutil, zmiany w ~/.zshrc i LaunchDaemonsJeśli zarządzasz flotami, wprowadź reguły EDR wykrywające nietypowe skompilowane skrypty AppleScript lub powtarzające się przesyłanie kodów w procesach kompilacji.