Przejęte rozszerzenie Nx Console dla VS Code ujawnia poświadczenia programistów

Nowy incydent w łańcuchu dostaw oprogramowania dotknął rozszerzenie Nx Console dla Visual Studio Code, narażając programistów na kradzież poświadczeń i potencjalne przejęcie kolejnych systemów.

Bezpieczeństwo Aktualności 8 min czytania

Przejęte rozszerzenie Nx Console dla VS Code ujawnia poświadczenia programistów

Nowy incydent w łańcuchu dostaw oprogramowania dotknął rozszerzenie Nx Console dla Visual Studio Code, narażając programistów na kradzież poświadczeń i potencjalne przejęcie kolejnych systemów.

Przejęte rozszerzenie to rwl.angular-console w wersji 18.95.0, popularna wtyczka z interfejsem użytkownika i narzędziami zwiększającymi produktywność, używana w edytorach takich jak VS Code, Cursor i JetBrains. Rozszerzenie do VS Code ma ponad 2,2 miliona instalacji, co czyni ten incydent szczególnie poważnym dla środowisk deweloperskich i bezpieczeństwa CI/CD.

Według StepSecurity złośliwa wersja po cichu pobierała i uruchamiała zaciemniony ładunek wkrótce po otwarciu przez programistę dowolnego obszaru roboczego. Wersja z Open VSX nie została dotknięta.


Co się stało?

Zespół Nx ustalił, że przyczyną było przejęcie komputera jednego z programistów w poprzednim incydencie bezpieczeństwa, w wyniku którego doszło do wycieku poświadczeń GitHub.

Te poświadczenia zostały następnie wykorzystane do wypchnięcia osieroconego, niepodpisanego commita do oficjalnego repozytorium GitHub nrwl/nx. Ten commit zawierał złośliwy ładunek używany przez przejęte rozszerzenie.

Atak uruchamiał się, gdy programista otwierał obszar roboczy w VS Code z zainstalowaną dotkniętą wersją rozszerzenia. Następnie rozszerzenie pobierało środowisko uruchomieniowe JavaScript Bun i wykonywało zaciemniony ładunek index.js.

Sprawiło to, że atak był groźny, ponieważ nie wymagał od użytkownika ręcznego uruchomienia polecenia ani otwarcia podejrzanego pliku. Do uruchomienia złośliwego procesu wystarczyło otwarcie obszaru roboczego.


Wieloetapowy złodziej poświadczeń

Złośliwy ładunek opisano jako wieloetapowy program kradnący poświadczenia i narzędzie do zatruwania łańcucha dostaw.

Po uruchomieniu próbował zebrać wrażliwe sekrety programistów i wykradać je kilkoma kanałami, w tym:

  • HTTPS
  • GitHub API
  • tunelowanie DNS

Ładunek został zaprojektowany do kradzieży poświadczeń i sekretów z cennych narzędzi i platform deweloperskich, w tym:

  • sejfów 1Password
  • konfiguracji Anthropic Claude Code
  • tokenów npm
  • poświadczeń GitHub
  • poświadczeń AWS
  • lokalnych sekretów programistów
  • kluczy SSH i innych dostępnych tokenów

Malware próbował też unikać infekowania systemów prawdopodobnie znajdujących się w rosyjskich strefach czasowych lub strefach krajów WNP — to częsta technika stosowana przez niektórych cyberprzestępców, aby zmniejszyć ryzyko zainteresowania lokalnych organów ścigania.


Możliwości backdoora na macOS

W systemach macOS ładunek instalował dodatkowo backdoor w Pythonie.

Ten backdoor nadużywał GitHub Search API jako dead drop resolver, co pozwalało atakującym odbierać kolejne polecenia za pośrednictwem wyników wyszukiwania hostowanych w GitHubie, a nie tradycyjnego serwera dowodzenia i kontroli.

Ta technika może utrudniać wykrycie, ponieważ ruch do GitHuba w środowiskach deweloperskich może wyglądać na normalny.

Opublikowane wskaźniki naruszenia bezpieczeństwa obejmują podejrzane pliki, takie jak:

  • ~/.local/share/kitty/cat.py
  • ~/Library/LaunchAgents/com.user.kitty-monitor.plist
  • /var/tmp/.gh_update_state
  • /tmp/kitty-*

Dotknięci użytkownicy zostali też poinstruowani, aby szukać uruchomionych procesów, takich jak proces Pythona wykonujący cat.py lub proces mający w swoim środowisku __DAEMONIZED=1.


Dlaczego ten atak jest szczególnie niebezpieczny

Stacje robocze programistów są cennymi celami, ponieważ często zapewniają bezpośredni dostęp do łańcucha dostaw oprogramowania.

Przejęty komputer programisty może ujawnić:

  • repozytoria kodu źródłowego
  • tokeny do publikowania pakietów
  • tokeny GitHub
  • poświadczenia chmurowe
  • sekrety CI/CD
  • klucze SSH
  • klucze API
  • dane menedżera haseł
  • pliki konfiguracyjne asystentów kodowania opartych na AI
  • poświadczenia wdrożeniowe

Jeśli atakujący wykradną te sekrety, mogą publikować złośliwe pakiety, uzyskiwać dostęp do prywatnych repozytoriów, przejmować infrastrukturę chmurową lub zatruwać kolejne buildy.

Dzięki temu jedno przejęte rozszerzenie może stać się punktem wejścia do znacznie większego ataku na łańcuch dostaw.


Nadużycie Sigstore i SLSA podnosi stawkę

Jedną z najbardziej niepokojących możliwości wskazanych przez StepSecurity była obsługa przez ładunek integracji z Sigstore, w tym wystawiania certyfikatów Fulcio i generowania pochodzenia SLSA (SLSA provenance).

Mówiąc prosto, oznacza to, że atakujący mógł przygotowywać się do publikowania kolejnych pakietów, które wyglądałyby na kryptograficznie podpisane i legalne.

To poważna eskalacja.

Zespoły ds. bezpieczeństwa coraz częściej polegają na podpisanym pochodzeniu i atestacjach budowania, aby sprawdzać, czy oprogramowanie pochodzi z zaufanego źródła. Jeśli atakujący wykradną tokeny OIDC npm i nadużyją legalnych procesów podpisywania, mogą sprawić, że złośliwe pakiety będą wyglądać jak zweryfikowane buildy.

Podważa to zaufanie nie tylko do pojedynczych pakietów, ale też do samego procesu weryfikacji łańcucha dostaw oprogramowania.


Oś czasu i dotknięta wersja

Dotknięta wersja to Nx Console 18.95.0.

Opiekunowie poinformowali, że użytkownicy mogli zostać narażeni, jeśli ta wersja została zainstalowana w oknie ekspozycji między:

18 maja 2026 r., godz. 14:36 CEST a 14:47 CEST

Choć to okno wydaje się krótkie, skutki mogą być mimo to znaczące, ponieważ rozszerzenia mogą aktualizować się automatycznie, a komputery programistów często zawierają bardzo wrażliwe poświadczenia.

Zespół Nx wezwał użytkowników do aktualizacji do wersji 18.100.0 lub nowszej.


Wskaźniki naruszenia bezpieczeństwa

Użytkownicy powinni sprawdzić swoje systemy pod kątem następujących wskaźników:

Dotknięta wersja rozszerzenia

  • Nx Console 18.95.0

Podejrzane pliki

  • ~/.local/share/kitty/cat.py
  • ~/Library/LaunchAgents/com.user.kitty-monitor.plist
  • /var/tmp/.gh_update_state
  • /tmp/kitty-*

Podejrzane procesy

  • Proces Pythona uruchamiający cat.py
  • Proces zawierający __DAEMONIZED=1 w swoim środowisku

Jeśli zostanie znaleziony którykolwiek z tych wskaźników, komputer należy traktować jako przejęty.


Co powinni zrobić dotknięci użytkownicy

Programiści i organizacje, które mogły zainstalować dotkniętą wersję, powinni zareagować szybko.

Zalecane kroki obejmują:

  • zaktualizuj Nx Console do wersji 18.100.0 lub nowszej
  • zakończ podejrzane procesy
  • usuń z dysku znane złośliwe artefakty
  • zrotuj wszystkie poświadczenia dostępne z dotkniętego komputera
  • zrotuj tokeny GitHub i klucze SSH
  • zrotuj tokeny npm i poświadczenia do publikowania pakietów
  • zrotuj poświadczenia AWS i klucze dostępu do chmury
  • sprawdź dostęp do 1Password i menedżera haseł
  • przejrzyj pliki konfiguracyjne Claude Code i asystentów AI
  • sprawdź dzienniki audytu GitHub pod kątem podejrzanej aktywności
  • przejrzyj historię publikowania pakietów npm
  • sprawdź potoki CI/CD pod kątem nieautoryzowanych zmian
  • przejrzyj ostatnie commity, tagi, wydania i wersje pakietów
  • monitoruj podejrzane tunelowanie DNS lub nietypowe użycie GitHub API

Ponieważ ładunek celował szeroko w sekrety programistów, rotacja poświadczeń nie powinna ograniczać się wyłącznie do poświadczeń związanych z Nx.


Kolejny atak na ekosystem Nx

To nie pierwszy raz, gdy ekosystem Nx stał się celem ataku.

W sierpniu 2025 r. kilka pakietów npm powiązanych z tym ekosystemem zostało zainfekowanych programem kradnącym poświadczenia w ramach kampanii ataków na łańcuch dostaw znanej jako s1ngularity.

Najnowszy incydent różni się tym, że celem jest rozszerzenie VS Code, a nie pakiety npm. Pokazuje to, jak atakujący rozszerzają swoje zainteresowanie na cały łańcuch narzędzi deweloperskich.

Cyberprzestępcy nie atakują już wyłącznie zależności. Celują także w:

  • rozszerzenia IDE
  • menedżery pakietów
  • procesy CI/CD
  • GitHub Actions
  • komputery programistów
  • narzędzia do kodowania oparte na AI
  • procesy podpisywania pakietów
  • poświadczenia chmurowe
  • menedżery haseł

Łańcuch dostaw oprogramowania obejmuje dziś każde narzędzie, którego programiści używają do pisania, budowania, testowania, podpisywania i publikowania kodu.


Złośliwe pakiety nadal zalewają repozytoria open source

Incydent z Nx Console zbiegł się z kilkoma innymi kampaniami złośliwych pakietów dotykających ekosystemy open source.

Ostatnie przykłady to pakiety npm zaprojektowane tak, aby:

  • zainstalować backdoor w sesjach Claude Code
  • wykradać poświadczenia programistów
  • eksfiltrować klucze SSH i klucze prywatne portfeli kryptowalut
  • wykradać sekrety AWS i Kubernetes
  • zbierać pliki .env i historię powłoki
  • wdrażać trojany zdalnego dostępu dla Windows
  • przejmować konta Telegram
  • wykradać pliki cookie sesji ChatGPT i OpenAI
  • instalować na komputerach ofiar usługi proxy LLM
  • nadużywać dependency confusion wobec nazw prywatnych pakietów

Pokazuje to, że atakujący skupiają się mocno na środowiskach deweloperskich, ponieważ dają one dostęp do poświadczeń, automatyzacji, infrastruktury i zaufanych kanałów dystrybucji.


Wnioski obronne dla organizacji

Ten incydent uwypukla kilka ważnych priorytetów w obszarze obrony.

1. Traktuj rozszerzenia IDE jak zależności łańcucha dostaw oprogramowania

Rozszerzenia VS Code powinny być przeglądane, zatwierdzane i monitorowane tak jak każda inna zależność firm trzecich.

2. Ogranicz automatyczną instalację rozszerzeń tam, gdzie to możliwe

Organizacje powinny rozważyć listy dozwolonych rozszerzeń, zarządzane środowiska deweloperskie lub mechanizmy kontroli oparte na politykach dla zespołów wysokiego ryzyka.

3. Zmniejsz lokalną ekspozycję sekretów

Unikaj przechowywania długotrwałych poświadczeń na komputerach programistów. Tam, gdzie to możliwe, stosuj krótkotrwałe tokeny, federację tożsamości i dostęp just-in-time.

4. Monitoruj punkty końcowe programistów

Laptopy i stacje robocze programistów powinny mieć silne możliwości wykrywania zagrożeń na punktach końcowych, rejestrowania zdarzeń i reagowania.

5. Rotuj sekrety po podejrzanej aktywności

Jeśli komputer programisty został przejęty, załóż, że wszystkie dostępne na nim sekrety mogły zostać ujawnione.

6. Przejrzyj procesy podpisywania i pochodzenia pakietów

Podpisane buildy pomagają, ale nie wystarczą, jeśli atakujący mogą wykraść poświadczenia służące do tworzenia zaufanych podpisów.


Podsumowanie

Przejęte rozszerzenie Nx Console to kolejne przypomnienie, że narzędzia deweloperskie są dziś głównymi celami ataków na łańcuch dostaw.

Zaufane rozszerzenie IDE z milionami instalacji może stać się potężnym kanałem dystrybucji do kradzieży poświadczeń. W tym przypadku złośliwy ładunek celował nie tylko w typowe poświadczenia programistów, ale także w menedżery haseł, konfiguracje asystentów kodowania opartych na AI, tokeny GitHub, dostęp do publikowania w npm, poświadczenia AWS i procesy dotyczące pochodzenia oprogramowania.

Dla zespołów ds. bezpieczeństwa przekaz jest jasny: ochrona systemów produkcyjnych nie wystarczy. Środowiska deweloperskie, rozszerzenia IDE, potoki CI/CD, procesy publikowania pakietów i lokalne sekrety należy traktować jako infrastrukturę krytyczną.

Nowoczesny łańcuch dostaw oprogramowania zaczyna się na stacji roboczej programisty.

Blog

Bezpieczeństwo 4 min czytania

Luka zero-day w bramce FortiMail aktywnie wykorzystywana w atakach

Fortinet ostrzegł klientów, że krytyczna luka zero-day w FortiMail jest aktywnie wykorzystywana w atakach, co naraża na natychmiastowe ryzyko bramki bezpieczeństwa poczty e-mail wystawione do internetu.

AI 5 min czytania

MI5 ostrzega przed przykrywką CGTRI powiązaną z chińskim wywiadem

Brytyjska służba bezpieczeństwa wewnętrznego MI5 wydała niezwykle bezpośrednie publiczne ostrzeżenie dotyczące China General Technology Research Institute (CGTRI), twierdząc, że ta jednostka badawcza ma silne powiązania z chińskim Ministerstwem Bezpieczeństwa Państwowego…