ADEX prześledziło aktywną infekcję systemu macOS od jednego dziwnego procesu do większego zagrożenia dla łańcucha dostaw, przenikającego przez narzędzia deweloperskie Apple. Sprawa koncentrowała się na XCSSET, aADEX prześledziło aktywną infekcję systemu macOS od jednego dziwnego procesu do większego zagrożenia dla łańcucha dostaw, przenikającego przez narzędzia deweloperskie Apple. Sprawa koncentrowała się na XCSSET, a

Co ADEX znalazł wewnątrz aktywnego ataku XCSSET na narzędzia deweloperskie Apple

2026/06/01 06:12
4 min. lektury
W przypadku uwag lub wątpliwości dotyczących niniejszej treści skontaktuj się z nami pod adresem crypto.news@mexc.com

ADEX prześledzył aktywną infekcję systemu macOS – od jednego podejrzanego procesu po szersze zagrożenie w łańcuchu dostaw, przenikające przez narzędzia dla deweloperów Apple. Sprawa skupiała się na XCSSET, rodzinie złośliwego oprogramowania ukrywającej się w plikach projektów Xcode, a nie w gotowych aplikacjach – czekającej, aż deweloper zbuduje projekt i uruchomi ładunek.

Wskazówka, która zapoczątkowała sprawę

What ADEX Found Inside an Active XCSSET Attack on Apple Developer Tools

Pierwszy sygnał był niewielki, lecz niepokojący: powtarzająca się aktywność osascript uruchamiana z /tmp/jl. AppleScript samo w sobie jest normalnym narzędziem systemu macOS, jednak lokalizacja miała znaczenie. Katalog /tmp to przestrzeń tymczasowa – nie miejsce, w którym czyste oprogramowanie powinno wielokrotnie uruchamiać krótkotrwałe skrypty z dużymi zakodowanymi argumentami.

ADEX skopiował plik, zanim zniknął. Po przechwyceniu okazało się, że /tmp/jl to skompilowany AppleScript. Jego zawartość była ukryta pod wieloma warstwami kodowania base64 – powszechna metoda stosowana przez złośliwe oprogramowanie w celu ukrycia kolejnego kroku przed szybką inspekcją.

Po zdekodowaniu próbka ujawniła skrypt powłoki zbierający szczegóły systemowe. Zbierał nazwę użytkownika, ustawienia regionalne, wersję systemu macOS, typ procesora, status System Integrity Protection, numer seryjny komputera Mac oraz dane związane z Chrome. Informacje były wysyłane do riggletoy.ru – domeny command-and-control, która według ADEX nie pojawiała się wówczas w publicznych źródłach informacji o zagrożeniach. Druga domena, netcdndev.in – odkryta później podczas analizy repozytoriów GitHub — również nie figurowała na żadnej publicznej liście wskaźników kompromitacji. 

Plik build stał się furtką

Niebezpieczeństwo XCSSET tkwi w jego kryjówce. Projekty Xcode zawierają pliki project.pbxproj, które informują oprogramowanie deweloperskie Apple, co ma być uruchamiane podczas budowania. Złośliwy skrypt umieszczony w tym miejscu może zostać wykonany na koncie samego dewelopera podczas kompilacji projektu.

To sprawia, że atak jest dyskretny. Nie jest potrzebny żaden podejrzany instalator. Nie pojawia się żadna oczywista ikona aplikacji. Deweloper może sklonować projekt z GitHuba, otworzyć go w Xcode, nacisnąć Build i dać złośliwemu oprogramowaniu chwilę, której potrzebuje.

Infekcja następnie szuka innych projektów Xcode na komputerze. ADEX znalazł ponad 20 zmodyfikowanych projektów na zainfekowanej stacji roboczej – wszystkie zmienione w tej samej minucie. Taki czas wskazywał na automatyczne przeszukiwanie, nie ręczną edycję. Jedna zainfekowana stacja robocza stała się już punktem wyjścia do dalszego rozprzestrzeniania się.

Trwałość była prawdziwym problemem

Wyczyszczenie jednego projektu nie rozwiązałoby sprawy. ADEX odkrył fałszywą aplikację Launchpad.app ukrytą w folderze pamięci podręcznej użytkownika, podczas gdy prawdziwy Launchpad znajduje się w /System/Applications/Launchpad.app. Ten szczegół odpowiadał znanej „metodzie doku", w której złośliwe oprogramowanie przekierowuje ikonę Docka, tak że użytkownik otwiera jednocześnie prawdziwą aplikację i ukryty ładunek, nie zauważając tego.

Raport opisywał dodatkowe mechanizmy trwałości, w tym agenty uruchamiania, zmiany profilu powłoki oraz git hooks. Wniosek był jasny: zainfekowane projekty były jedynie objawami. Najpierw należało usunąć mechanizm podtrzymujący infekcję.

Procedura czyszczenia ADEX była ściśle określona. Usuń punkty automatycznego uruchamiania, uruchom ponownie komputer, a następnie przywróć projekty Xcode z czystego stanu git. Odwrócenie tej kolejności grozi ponownym nadpisaniem przez złośliwe oprogramowanie już wyczyszczonych plików.

GitHub ujawnił szerszy ślad

Dochodzenie przeniosło się z jednego komputera do publicznych repozytoriów. ADEX zgłosił 24 repozytoria GitHub zawierające łańcuchy ładunków XCSSET. Wśród przykładów znalazły się PrinceMittal1/DemoForAuthFlow, zzzznick/dummy-ios oraz dvillegastech/ReaxBD.

Jedno repozytorium, usamajaved357/Breezy, korzystało z riggletoy.ru – tej samej domeny, którą zauważono w aktywnej próbce. Inne, xiaoyouPrince/XYDevTool, korzystało z netcdndev.In – domeny, którą ADEX opisał jako nieobecną na publicznej liście wskaźników kompromitacji w czasie inspekcji, co wskazuje, że operatorzy rotują infrastrukturą szybciej, niż publiczne źródła informacji o zagrożeniach są w stanie to śledzić.  Dwanaście z 24 repozytoriów otrzymało commity w 2026 roku, a najnowszy zaledwie jeden dzień przed inspekcją – kilka repozytoriów wykazywało aktywność w 2026 roku, co sugeruje, że kampania wciąż przemieszczała się przez współdzielony kod.

Liczby mają znaczenie, ponieważ zaufanie deweloperów jest częścią ścieżki ataku. Pliki projektów Xcode są często traktowane jako rutynowe elementy infrastruktury, mniej widoczne niż kod źródłowy czy zależności. XCSSET wykorzystuje ten nawyk.

Ryzyko dla deweloperów Apple

Bezpośrednim celem nie jest użytkownik App Store. Celem jest osoba tworząca oprogramowanie, wraz z danymi uwierzytelniającymi, sesjami przeglądarki, repozytoriami i tokenami przechowywanymi na tym komputerze.

XCSSET może pobierać dane z przeglądarek, Keychain i plików konfiguracyjnych — w tym klucze chmurowe, tokeny AWS, klucze SSH i dane uwierzytelniające Git — zastępować skopiowane adresy portfeli Bitcoin lub Ethereum oraz modyfikować zachowanie przeglądarki poprzez wstrzyknięty kod JavaScript. Dla zespołu programistycznego oznacza to, że jeden zaatakowany Mac może narazić na ryzyko kod źródłowy, konta i projekty downstream.

Praktyczna obrona zaczyna się przed naciśnięciem przycisku build. Deweloperzy powinni sprawdzać nieznane fazy budowania Xcode i przechowywać pliki project.pbxproj w kontroli wersji, obserwować globalne git hooks, utrzymywać włączoną ochronę System Integrity Protection oraz monitorować nieoczekiwany ruch wychodzący. Zespoły ds. bezpieczeństwa powinny traktować laptopy deweloperów jako część łańcucha dostaw, a nie zwykłe punkty końcowe.

Komentarze

SPACEX(PRE) Launchpad

SPACEX(PRE) LaunchpadSPACEX(PRE) Launchpad

Register for a chance to win a free lucky draw

Zastrzeżenie: Artykuły udostępnione na tej stronie pochodzą z platform publicznych i służą wyłącznie celom informacyjnym. Niekoniecznie odzwierciedlają poglądy MEXC. Wszystkie prawa pozostają przy pierwotnych autorach. Jeśli uważasz, że jakakolwiek treść narusza prawa stron trzecich, skontaktuj się z crypto.news@mexc.com w celu jej usunięcia. MEXC nie gwarantuje dokładności, kompletności ani aktualności treści i nie ponosi odpowiedzialności za jakiekolwiek działania podjęte na podstawie dostarczonych informacji. Treść nie stanowi porady finansowej, prawnej ani innej profesjonalnej porady, ani nie powinna być traktowana jako rekomendacja lub poparcie ze strony MEXC.

RealStocks Now Live

RealStocks Now LiveRealStocks Now Live

Trade real U.S. stock via regulated brokerage