Atak „Mini Shai-Hulud” na pakiety SAP npm zwiększa ryzyko dla łańcucha dostaw oprogramowania - Security Bez Tabu

Atak „Mini Shai-Hulud” na pakiety SAP npm zwiększa ryzyko dla łańcucha dostaw oprogramowania

Cybersecurity news

Wprowadzenie do problemu / definicja

Ataki na łańcuch dostaw oprogramowania coraz częściej wykorzystują zaufane repozytoria pakietów jako punkt wejścia do środowisk deweloperskich oraz pipeline’ów CI/CD. Incydent określany jako „Mini Shai-Hulud” dotknął pakiety npm powiązane z ekosystemem SAP, w tym narzędzia używane do budowy i wdrażania aplikacji chmurowych. To szczególnie groźne, ponieważ kompromitacja zależności uruchamianych automatycznie podczas instalacji może prowadzić do przejęcia sekretów, tokenów publikacyjnych oraz poświadczeń chmurowych.

W skrócie

Kampania „Mini Shai-Hulud” objęła cztery pakiety npm powiązane z SAP: @cap-js/sqlite w wersji 2.2.2, @cap-js/postgres w wersji 2.2.2, @cap-js/db-service w wersji 2.10.1 oraz mbt w wersji 1.2.48. Złośliwe wersje zawierały skrypty preinstall, które uruchamiały wieloetapowy ładunek przeznaczony do kradzieży sekretów z systemów deweloperskich i środowisk CI/CD.

  • Celem były m.in. tokeny GitHub i npm.
  • Atakujący szukali również poświadczeń dostawców chmurowych i sekretów Kubernetes.
  • Złośliwe pakiety mogły ułatwiać dalszą propagację poprzez przejęte dane publikacyjne i dostępowe.
  • Choć pakiety zostały wycofane po wykryciu, ryzyko dla organizacji pozostaje istotne.

Kontekst / historia

Incydent wpisuje się w szerszy trend operacji software supply chain, w których przestępcy nie atakują bezpośrednio organizacji końcowej, lecz kompromitują zaufane komponenty używane przez deweloperów. Badacze powiązali kampanię z grupą TeamPCP na podstawie podobieństw technicznych i operacyjnych do wcześniejszych incydentów dotyczących projektów open source.

Nazwa „Mini Shai-Hulud” nawiązuje do wcześniejszych kampanii „Shai-Hulud”, które od 2025 roku były kojarzone z robakopodobnym rozprzestrzenianiem się przez ekosystemy pakietów. W tym przypadku skala publikacji była mniejsza, ale wybrane cele miały znacznie wyższą wartość operacyjną. Atak skoncentrował się na pakietach istotnych dla środowisk enterprise oraz procesów wdrożeniowych SAP, co zwiększa potencjalny wpływ biznesowy.

Analiza techniczna

Technicznie atak polegał na wstrzyknięciu złośliwych skryptów preinstall do opublikowanych pakietów npm. To szczególnie niebezpieczny mechanizm, ponieważ kod wykonuje się automatycznie już na etapie instalacji zależności, zanim aplikacja zostanie uruchomiona lub poddana testom. W praktyce oznacza to, że samo pobranie zainfekowanego pakietu mogło uruchomić łańcuch infekcji na stacji deweloperskiej albo w runnerze CI.

Ładunek był wieloetapowy i zaciemniony. Jego zadaniem było wyszukiwanie oraz eksfiltracja sekretów z wielu źródeł jednocześnie. Obejmowało to tokeny GitHub, dane npm, poświadczenia do głównych platform chmurowych, sekrety pipeline’ów CI/CD oraz artefakty lokalnych narzędzi deweloperskich. Z analiz wynika, że celem nie była wyłącznie kradzież danych, ale również dalsza propagacja z użyciem przejętych tokenów publikacyjnych i dostępowych.

Znaczenie ma także charakter zaatakowanych pakietów. Komponenty CAP są wykorzystywane w SAP Cloud Application Programming Model, natomiast mbt służy do budowania archiwów MTA gotowych do wdrożenia. Oznacza to, że infekcja mogła występować dokładnie w tym miejscu procesu, gdzie spotykają się kod aplikacji, sekrety wdrożeniowe, dostęp do repozytoriów oraz mechanizmy publikacji. Z perspektywy obrońcy jest to scenariusz szczególnie trudny, bo atak uderza bezpośrednio w warstwę zaufania między deweloperem, systemem budowania i platformą chmurową.

Badacze wskazali również na podobieństwa do wcześniejszych kampanii przypisywanych TeamPCP, w tym zbieżność metod eksfiltracji i wykorzystania przejętych danych do dalszego rozszerzania kompromitacji. Pojawiła się też hipoteza, że początkowy dostęp mógł mieć związek z niewłaściwie zabezpieczonym tokenem npm ujawnionym w procesach pull request build, co ponownie podkreśla znaczenie ochrony sekretów w automatyzacji CI/CD.

Konsekwencje / ryzyko

Najpoważniejszym skutkiem tego typu incydentu nie jest samo uruchomienie złośliwego kodu, lecz przejęcie zaufanych poświadczeń umożliwiających dalsze ataki. Jeśli zainfekowany pakiet został zainstalowany w środowisku deweloperskim lub pipeline’ie, atakujący mogli uzyskać dostęp do repozytoriów kodu, kont publikacyjnych, środowisk chmurowych, klastrów Kubernetes oraz systemów wdrożeniowych.

Ryzyko dla organizacji korzystających z narzędzi SAP jest ponadprzeciętne, ponieważ dotknięte pakiety znajdują się blisko procesu budowy i dostarczania aplikacji biznesowych. W praktyce może to oznaczać:

  • wyciek sekretów i danych dostępnych dla procesów build/deploy,
  • nieautoryzowane publikacje kolejnych pakietów lub modyfikacje repozytoriów,
  • kompromitację środowisk klientów końcowych w modelu downstream,
  • utratę integralności pipeline’ów oraz artefaktów wdrożeniowych,
  • długotrwałą obecność atakującego dzięki przejętym tokenom i kluczom.

Dodatkowym problemem jest opóźniona wykrywalność. Nawet jeśli złośliwe wersje zostały usunięte, organizacje muszą zakładać, że każde środowisko, które je pobrało, mogło zostać już skażone. W takim scenariuszu samo usunięcie pakietu nie rozwiązuje problemu, ponieważ przejęte sekrety mogły zostać użyte do dalszej kompromitacji.

Rekomendacje

Organizacje powinny potraktować incydent jako sygnał do natychmiastowego przeglądu bezpieczeństwa software supply chain. Kluczowe działania obejmują:

  • Identyfikację narażenia — przeszukanie lockfile, cache’y pakietów, logów CI/CD, rejestrów wewnętrznych i stacji deweloperskich pod kątem zainfekowanych wersji oraz weryfikację, czy wskazane wersje były pobierane lub instalowane w czasie incydentu.
  • Rotację sekretów — natychmiastową zmianę tokenów npm i GitHub, a także rotację poświadczeń chmurowych, sekretów CI/CD, danych dostępowych Kubernetes i innych kluczy obecnych w środowisku build.
  • Analizę integralności repozytoriów — sprawdzenie historii commitów, workflow automation oraz konfiguracji publikacji pakietów, aby ustalić, czy doszło do nieautoryzowanych zmian.
  • Wzmocnienie kontroli łańcucha dostaw — stosowanie wewnętrznych mirrorów, repozytoriów pośredniczących i polityk zatwierdzania zależności oraz skanowanie pakietów pod kątem złośliwych hooków instalacyjnych.
  • Ograniczenie uprawnień — wdrożenie krótkotrwałych tokenów, zasady najmniejszych uprawnień oraz separacji środowisk deweloperskich od produkcyjnych.
  • Monitoring i detekcję — obserwowanie nietypowych publikacji pakietów, zmian w workflow CI oraz połączeń wychodzących z runnerów build.

Podsumowanie

„Mini Shai-Hulud” pokazuje, że współczesne ataki na łańcuch dostaw są coraz bardziej precyzyjne i ukierunkowane na komponenty o wysokiej wartości operacyjnej. W tym przypadku kompromitacja objęła pakiety SAP npm używane w procesach tworzenia i wdrażania aplikacji chmurowych, co zwiększa potencjalny wpływ na środowiska enterprise. Największe zagrożenie wynika z możliwości kradzieży sekretów i przejęcia zaufanych mechanizmów publikacji oraz CI/CD. Dla zespołów bezpieczeństwa i DevSecOps to kolejny dowód, że ochrona zależności, tokenów publikacyjnych i pipeline’ów musi być traktowana jako element krytyczny, a nie wyłącznie operacyjny.

Źródła

  1. Dark Reading — TeamPCP Hits SAP Packages With 'Mini Shai-Hulud’ Attack — https://www.darkreading.com/cloud-security/teampcp-sap-packages-mini-shai-hulud
  2. Endor Labs — Mini Shai-Hulud: npm Worm Hits SAP Developer Packages — https://www.endorlabs.com/learn/mini-shai-hulud-npm-worm-hits-sap-developer-packages
  3. SAP Security Notes & News — https://support.sap.com/en/my-support/knowledge-base/security-notes-news.html
  4. Upwind — Mini Shai-Hulud Targets SAP npm Packages — https://www.upwind.io/feed/mini-shai-hulud-targets-sap-npm-packages-ci-cd-publishing-pipeline-abused-in-supply-chain-attack
  5. Layer Seven Security — Mini Shai-Hulud: Malware Targeting the Software Supply Chain for SAP Development Tools — https://www.layersevensecurity.com/mini-shai-hulud-malware-targeting-the-software-supply-chain-for-sap-development-tools/