Przejdź do treści
Malware

Kampania TeamPCP: zatrute pakiety w ekosystemach npm, PyPI i VS Code. Co powinni wiedzieć administratorzy i programiści

W maju 2026 roku operatorzy kampanii TeamPCP opublikowali złośliwe pakiety w trzech ekosystemach programistycznych, w tym w oficjalnym SDK Microsoftu. Artykuł wyjaśnia, jak doszło do ataku i jakie kroki ochronne warto podjąć.

3 min read
An abstract digital landscape showing three interconnected chains made of glowing code fragments, with a dark cloud of tangled cables hovering above them. A single padlock hangs broken in the foreground, while a faint shield-shaped light attempts to cover the central chain.

W maju 2026 roku badacze bezpieczeństwa ujawnili szczegóły kampanii określanej jako TeamPCP – złożonego ataku na łańcuch dostaw oprogramowania, który dotknął trzy główne ekosystemy: npm, PyPI oraz Visual Studio Code. W wyniku ataku doszło m.in. do wycieku około 3800 repozytoriów wewnętrznych GitHub. Artykuł przedstawia, jak działała kampania i jakie wnioski powinni wyciągnąć administratorzy oraz programiści.

Jak działał atak? Trzy fronty jednej kampanii

Jak wynika z analizy opublikowanej przez SANS ISC, kampania TeamPCP rozwinęła się w trzech równoległych falach. Pierwsza polegała na opublikowaniu złośliwego rozszerzenia Nx Console do VS Code (wersja 18.95.0, wydawca nrwl.angular-console) w Visual Studio Marketplace. Rozszerzenie było dostępne przez około 18 minut, ale zdążyło zainfekować środowisko programisty GitHub, co umożliwiło wykradzenie danych z wewnętrznych repozytoriów.

Druga fala dotyczyła oficjalnego pakietu Microsoftu – durabletask (Azure Durable Functions SDK) w wersjach 1.4.1–1.4.3 opublikowanych na PyPI. Jak wskazują raporty, importowanie pakietu uruchamiało złośliwy kod, który kradł dane uwierzytelniające i – według niektórych źródeł – zawierał mechanizm czyszczenia dysków Linux.

Trzecia fala objęła ekosystem @antv na npm – opublikowano 639 złośliwych wersji w 323 pakietach, w tym w popularnych bibliotekach takich jak echarts-for-react (ok. 1,1 mln tygodniowych pobrań) i size-sensor (ok. 4,2 mln tygodniowych pobrań).

Kto był celem i jakie były skutki?

Atak wymierzony był przede wszystkim w środowiska programistyczne i łańcuchy CI/CD. W przypadku GitHub, jak potwierdził CISO Alexis Wales, ofiarami pośrednimi były m.in. OpenAI, Grafana Labs i Mistral AI. W wyniku ataku na GitHub wyciekły repozytoria wewnętrzne, ale – jak podano – nie naruszono danych klientów.

Jeśli chodzi o pakiet durabletask, zagrożenie było szczególnie poważne, ponieważ SDK jest używane w środowiskach chmurowych Azure. Złośliwy kod mógł kraść tokeny AWS, Azure, GCP, HashiCorp Vault, a także dane z menedżerów haseł takich jak 1Password i Bitwarden. Co więcej, według doniesień, drugi etap ataku zawierał narzędzie do czyszczenia dysków Linux, co oznacza eskalację destrukcyjnych możliwości kampanii.

Odnośnie npm, 42 złośliwe pakiety wyświetlały fałszywe odznaki Sigstore, co utrudniało ich identyfikację. To pokazuje, że nawet weryfikacja podpisów nie jest wystarczającym zabezpieczeniem.

Jakie wnioski dla administratorów i programistów?

Kampania TeamPCP unaocznia, że tradycyjne metody weryfikacji – takie jak odznaki „verified publisher” czy podpisy kodu – mogą być nieskuteczne, gdy atakujący przejmują konta z uprawnieniami do publikacji. Oto kluczowe zalecenia:

  • Rotuj dane uwierzytelniające – jeśli w okresie od 11 do 19 maja 2026 roku Twoje środowisko CI/CD korzystało z podejrzanych pakietów, natychmiast zmień tokeny i klucze API.
  • Nie ufaj odznakom bezpieczeństwa – zarówno prawdziwe, jak i fałszywe certyfikaty mogą być wykorzystane w ataku. Zawsze weryfikuj sumy kontrolne (hash) pakietów w pliku lockfile.
  • Sprawdź konfigurację agentów AI – atakujący modyfikowali pliki .vscode/tasks.json i ~/.claude/settings.json, aby utrzymać trwałość w środowisku.
  • Ogranicz automatyczne aktualizacje – dla rozszerzeń VS Code i pakietów npm rozważ ręczne zatwierdzanie aktualizacji w krytycznych środowiskach.

Co dalej? Obserwuj rozwój kampanii

Operatorzy TeamPCP opublikowali kod źródłowy swojego frameworka na GitHubie, co – jak zauważają badacze – może prowadzić do powstania licznych kopii i forków. Administratorzy powinni monitorować komunikaty od dostawców narzędzi programistycznych oraz regularnie przeglądać logi pod kątem nietypowych żądań sieciowych. Gdy wykryjesz podejrzaną aktywność, warto skontaktować się z zespołem CERT lub dostawcą usług chmurowych.

Kampania TeamPCP pokazuje, że ataki na łańcuch dostaw stają się coraz bardziej wyrafinowane. Kluczowa jest nie tylko szybka reakcja, ale też zmiana podejścia do zaufania w ekosystemie open source.

Redakcja sekuret.pl

Redakcja sekuret.pl

AUTHOR