13 złośliwych pakietów Packagist atakuje iPhone’y i kradnie frazy seed portfeli kryptowalut - Security Bez Tabu

13 złośliwych pakietów Packagist atakuje iPhone’y i kradnie frazy seed portfeli kryptowalut

Cybersecurity news

Wprowadzenie do problemu / definicja

Badacze bezpieczeństwa ujawnili kampanię supply chain wymierzoną w ekosystem PHP, w której złośliwe pakiety opublikowane w repozytorium Packagist podszywały się pod legalne motywy wykorzystywane przez serwisy streamingowe i komiksowe. Po wdrożeniu do aplikacji pakiety wstrzykiwały kod JavaScript do stron odwiedzanych przez użytkowników, co umożliwiało zarówno oszustwa reklamowe, jak i uruchamianie łańcucha exploitów na niezałatanych urządzeniach Apple.

To klasyczny przykład ataku na łańcuch dostaw oprogramowania, w którym celem nie jest wyłącznie administrator serwisu, lecz także jego użytkownicy końcowi. W tym przypadku końcowym skutkiem mogła być instalacja spyware oraz kradzież wrażliwych danych, w tym fraz seed i materiału kryptograficznego z mobilnych portfeli kryptowalut.

W skrócie

  • Kampania obejmowała 13 złośliwych pakietów Composer opublikowanych w kilku przestrzeniach nazw.
  • Pakiety wstrzykiwały JavaScript do stron, rozszerzając zasięg ataku na wszystkich odwiedzających serwis.
  • Na urządzeniach mobilnych aktywowano przekierowania reklamowe i hazardowe, a na iPhone’ach dodatkowo uruchamiano łańcuch exploitów.
  • Atak miał dotyczyć niezałatanych wersji iOS 18.4–18.6.x.
  • Końcowy payload kradł dane z urządzenia, w tym wpisy z Keychain i frazy seed popularnych portfeli kryptowalut.

Kontekst / historia

Incydent wpisuje się w rosnący trend kompromitacji komponentów open source wykorzystywanych w środowiskach produkcyjnych. Zamiast atakować bezpośrednio użytkownika, przeciwnik publikuje pozornie nieszkodliwy pakiet, który trafia do projektu deweloperskiego jako zależność. Gdy taki komponent zostaje wdrożony, staje się punktem wejścia do dalszej kompromitacji.

Według analizy badaczy wcześniejsze elementy tej samej aktywności obserwowano już w marcu 2026 roku. Początkowo kampania koncentrowała się na przekierowaniach, osadzaniu reklam i zbieraniu adresów URL. Najnowsza odsłona znacząco podniosła poziom zagrożenia, ponieważ z prostego fraudu reklamowego przeszła do dostarczania exploitów oraz spyware dla urządzeń Apple.

Analiza techniczna

Złośliwe pakiety zostały opublikowane pod wieloma nazwami vendorów i przedstawiane jako motywy dla konkretnych wdrożeń CMS. Po stronie serwera komponenty wstrzykiwały kod JavaScript renderowany globalnie na stronach serwisu. Taki mechanizm sprawia, że pojedyncza złośliwa biblioteka może automatycznie objąć swoim zasięgiem wszystkich odwiedzających witrynę.

Łańcuch ataku miał dwa główne scenariusze. Pierwszy polegał na monetyzacji ruchu mobilnego przez przekierowania do treści reklamowych i hazardowych. Drugi był uruchamiany selektywnie na iPhone’ach. Wstrzyknięty skrypt osadzał ukryty iframe, identyfikował wersję systemu i dobierał odpowiedni wariant exploita wykorzystującego luki WebKit oraz kolejne mechanizmy eskalacji uprawnień.

W analizie wskazano wykorzystanie podatności CVE-2025-31277 oraz CVE-2025-43529. Po uzyskaniu wykonania kodu w kontekście przetwarzania treści webowych atak przechodził poza sandbox WebContent, następnie do procesu GPU, a ostatecznie do warstwy jądra za pośrednictwem komponentu IOKit powiązanego z AppleM2ScalerCSCDriver. Taki poziom dostępu otwierał drogę do szerokiej eksfiltracji danych z urządzenia.

Końcowy payload zbierał rozbudowany zestaw artefaktów, w tym bazy Keychain, hasła Wi‑Fi, bazę SMS, książkę adresową, zdjęcia, historię połączeń, historię lokalizacji, ciasteczka przeglądarki i inne dane kont. Zebrane informacje były szyfrowane, a następnie przesyłane do infrastruktury dowodzenia i kontroli. W późniejszej wersji malware dodano moduł wyszukujący dane powiązane z portfelami kryptowalutowymi przechowywane w iOS Keychain.

Na liście interesujących aplikacji znalazły się m.in. Bitget, BitKeep, Bitpie, Phantom, Tonkeeper, Trust Wallet i OKX. Co istotne, część powiązanych pakietów nie zawierała aktywnego ładunku w chwili analizy, ale posiadała mechanizmy umożliwiające zdalne uruchomienie złośliwego kodu, na przykład przez pola typu „Custom JS”. To oznacza, że sama obecność takich komponentów może stanowić istotne ryzyko.

Konsekwencje / ryzyko

Dla operatorów witryn kompromitacja oznacza ryzyko naruszenia bezpieczeństwa użytkowników, utraty zaufania, szkód reputacyjnych oraz potencjalnych konsekwencji prawnych. Problem jest szczególnie poważny, ponieważ szkodliwy komponent może wyglądać jak zwykła zależność projektowa, a jego aktywność bywa trudna do wykrycia bez analizy integralności aplikacji i ruchu sieciowego.

Dla użytkowników iPhone’ów zagrożenie jest jeszcze większe. Samo odwiedzenie zainfekowanej strony w mobilnym Safari mogło wystarczyć do uruchomienia ataku typu drive-by compromise, bez konieczności instalowania aplikacji lub wykonywania dodatkowych działań. Kradzież danych z Keychain, wiadomości, kontaktów, zdjęć i informacji lokalizacyjnych stanowi poważne naruszenie prywatności, a przejęcie seedów portfeli może bezpośrednio prowadzić do utraty środków.

Na uwagę zasługuje także hybrydowy model monetyzacji kampanii. Połączenie masowego fraudu reklamowego z selektywną kradzieżą danych wysokiej wartości sugeruje dojrzałe zaplecze operacyjne oraz zdolność przeciwnika do elastycznego skalowania działań w zależności od profilu ofiary.

Rekomendacje

Administratorzy środowisk PHP korzystających z Packagist powinni niezwłocznie przeprowadzić przegląd zależności Composer i sprawdzić, czy w projektach nie występują wskazane pakiety lub inne artefakty od tych samych vendorów. W przypadku wykrycia konieczne jest ich usunięcie, odtworzenie środowiska z zaufanego źródła oraz szczegółowa analiza integralności aplikacji.

  • Przeanalizować logi HTTP pod kątem nietypowych przekierowań i ukrytych iframe.
  • Zweryfikować, czy aplikacja nie renderuje globalnie pól typu „Custom JS”.
  • Sprawdzić pliki JavaScript i jQuery dostarczane razem z motywami oraz dodatkami.
  • Zrotować poświadczenia administratorów, tokeny wdrożeniowe i inne sekrety.
  • Przeprowadzić przegląd IOC oraz śladów komunikacji z infrastrukturą C2.
  • Wdrożyć allowlisty zależności i automatyczne skanowanie pakietów pod kątem złośliwych zachowań.

Po stronie użytkowników kluczowe znaczenie ma szybkie instalowanie aktualizacji iOS i iPadOS zawierających poprawki bezpieczeństwa. Organizacje powinny egzekwować aktualizacje przez MDM, monitorować symptomy kompromitacji Safari i ograniczać dostęp z niezarządzanych urządzeń. Osoby przechowujące aktywa cyfrowe na smartfonach powinny rozważyć migrację seedów do nowego portfela po każdej podejrzanej ekspozycji oraz oddzielenie urządzenia codziennego od środowiska przechowującego klucze.

Podsumowanie

Opisana kampania pokazuje, że nowoczesne ataki supply chain na komponenty open source coraz częściej łączą kompromitację aplikacji serwerowej z bezpośrednimi atakami na klientów końcowych. Złośliwe pakiety Packagist nie ograniczały się do reklamowego fraudu, lecz pełniły rolę wektora dostarczającego exploity i spyware na niezałatane urządzenia iOS.

Szczególnie niebezpieczne jest to, że ofiarami stają się jednocześnie operatorzy stron i ich użytkownicy, a finalnym celem może być bezpośrednia kradzież danych oraz środków z portfeli kryptowalut. Dla zespołów bezpieczeństwa to kolejny sygnał, że monitoring zależności, kontrola integralności frontendu i szybkie zarządzanie poprawkami muszą być traktowane jako podstawowe elementy obrony.

Źródła