Atak na łańcuch dostaw SAP. Czym jest Mini Shai-Hulud i kogo dotyczy?
Cztery pakiety NPM powiązane z ekosystemem SAP CAP zostały skompromitowane w ataku na łańcuch dostaw. Kod kradł tokeny i sekretne dane. Sprawdź, czy Twoja organizacja jest zagrożona.
W kwietniu 2026 roku badacze bezpieczeństwa ujawnili kampanię wymierzoną w pakiety NPM powiązane z ekosystemem SAP Cloud Application Programming (CAP). Atak, nazwany Mini Shai-Hulud, polegał na wstrzyknięciu złośliwego kodu do czterech popularnych pakietów. W ciągu kilku godzin od publikacji zdążyły one trafić do setek tysięcy środowisk deweloperskich na całym świecie. Choć zainfekowane wersje zostały już wycofane, incydent pokazuje, jak podatny na kompromitację jest łańcuch dostaw oprogramowania w chmurze.
Co się stało? Szczegóły techniczne ataku
29 kwietnia 2026 roku specjaliści z firm Socket, Onapsis i Aikido wykryli złośliwe wersje pakietów: npm mbt 1.2.48, npm @cap-js/db-service 2.10.1, npm @cap-js/postgres 2.2.2 oraz npm @cap-js/sqlite 2.2.2. Łączna liczba tygodniowych pobrań tych pakietów przekraczała 500 tysięcy. Są one kluczowe dla budowania aplikacji w architekturze MTA (Multi-Target Application) oraz dla warstwy bazodanowej frameworka SAP CAP.
Złośliwy kod został umieszczony w skrypcie preinstall. Po uruchomieniu pobierał on archiwum ZIP z repozytorium GitHub, rozpakowywał je i uruchamiał binarny plik środowiska Bun. Następnie malware zbierał dane uwierzytelniające: tokeny GitHub i NPM, klucze do AWS, Azure, GCP, a także sekrety z Kubernetes i GitHub Actions. Jak podaje Onapsis, „złośliwe wersje pakietów były dostępne przez 2–4 godziny”. Po tym czasie zostały one usunięte, a zastąpiły je czyste wersje.
Kto jest zagrożony i jakie mogą być skutki?
Atak dotyczy przede wszystkim organizacji korzystających z SAP Business Technology Platform, frameworka SAP CAP oraz pipeline’ów wdrożeniowych opartych na MTA. Jak zauważają eksperci Onapsis, „każdy klient SAP, który prowadzi rozwój w JavaScripcie, może ściągać pakiety @sap/* i @cap-js/* do swoich potoków budowania, często z luźno określonymi zakresami wersji i wieloma zależnościami pośrednimi”.
Kradzież tokenów i sekretów chmurowych może prowadzić do dalszej kompromitacji środowisk produkcyjnych, przejęcia repozytoriów kodu źródłowego czy dostępu do danych klientów. Co więcej, malware zawierał mechanizm propagacji: sprawdzał, czy w repozytorium istnieją workflowy GitHub Actions, a następnie modyfikował archiwa pakietów, dodawał payload, zmieniał wersje i publikował je przy użyciu skradzionych tokenów.
Kto stoi za atakiem?
Firma Wiz, analizując techniczne podobieństwa i wzorce operacyjne, przypisuje atak grupie TeamPCP, znanej z wcześniejszych kampanii przeciwko łańcuchom dostaw. Jak wskazują badacze Wiz, „ocena ta opiera się na współdzielonym kluczu publicznym RSA używanym do szyfrowania wykradzionych sekretów. Oznacza to, że ten sam klucz prywatny mógłby odszyfrować dane, ograniczając dostęp do nich wyłącznie do TeamPCP”.
Jak się chronić? Praktyczne kroki dla administratorów i developerów
Organizacje, które w okresie zagrożenia mogły pobrać zainfekowane pakiety, powinny niezwłocznie:
- Sprawdzić, czy w plikach package-lock.json lub yarn.lock występują wersje pakietów wymienione w raporcie.
- Zaktualizować pakiety do najnowszych, czystych wersji.
- Zresetować wszystkie tokeny i klucze dostępowe, które mogły być przechowywane w środowisku, w którym uruchomiono złośliwy kod.
- Przejrzeć logi GitHub Actions i repozytoriów pod kątem nieautoryzowanych zmian.
- Rozważyć wprowadzenie polityk blokujących pakiety z luźno określonymi zakresami wersji oraz korzystanie z narzędzi do skanowania zależności.
Incydent Mini Shai-Hulud to kolejne przypomnienie, że bezpieczeństwo łańcucha dostaw wymaga ciągłej uwagi. Warto obserwować komunikaty producentów oraz raporty firm badawczych, aby szybko reagować na podobne zagrożenia w przyszłości.


