Wyciek S1ngularity: GitHub i NPM zagrożone 🚨

Niedawne śledztwa w sprawie ataku na łańcuch dostaw, nazwanego „s1ngularity”, na Nx, ujawniły ogromny wyciek danych uwierzytelniających: ujawniono tysiące tokenów kont i sekretów repozytoriów, co miało konsekwencje w wielu fazach incydentu. Raport Wiz po incydencie dokumentuje zakres incydentu i dostarcza informacji o przebiegu i skutkach wycieku. 🚨📊
Według oceny opublikowanej przez badaczy Wiz naruszenie spowodowało ujawnienie 2180 kont i 7200 repozytoriów w trzech odrębnych fazach, przy czym wiele tajemnic nadal pozostaje ważnych i ryzyko dalszych uszkodzeńW dokumencie tym zawarto szczegółowe informacje na temat chronologii zdarzeń, technik stosowanych przez atakujących oraz charakteru ujawnionych tajemnic. 🔍📈
Atak na łańcuch dostaw NX ⚠️🚀
Nx to system kompilacji i zarządzania typu open source z jednym repozytorium, szeroko stosowany w ekosystemach JavaScript/TypeScript na skalę korporacyjną. Przy milionach pobrań tygodniowo w rejestrze NPM, skompromitowany pakiet ma daleko idący wpływ na liczne integracje i procesy programistyczne. ⚙️
Wektor zagrożenia i data incydentu 📅
El 26 de agosto de 2025, el actor malicioso explotó un flujo de trabajo de GitHub Actions vulnerable en el repositorio de Nx para publicar una versión maliciosa del paquete en NPM. El paquete incluía un script post-install malicioso llamado «telemetry.js» que actuó como złośliwe oprogramowanie extractor de credenciales en los sistemas afectados. 🔥
Jak działa złośliwe oprogramowanie telemetry.js 🕵️♂️
El malware telemetry.js actuó como un ladrón de credenciales en Linux y macOS, intentando robar tokens de GitHub, tokens de npm, claves SSH, archivos .env, carteras de criptomonedas y otros secretos, para luego subirlos a repositorios públicos de GitHub nombrados «s1ngularity-repository. Este patrón permitió al atacante centralizar y exponer la información robada. 🔐

Źródło: Wiz
Atakujący zintegrował również narzędzia wiersza poleceń dla platform AI (np. Claude, Q i Gemini), aby zautomatyzować wyszukiwanie i zbieranie danych za pomocą ukierunkowanych komunikatów. Wiz dokumentuje, jak komunikat ewoluował podczas ataku, optymalizując ekstrakcję i omijając odrzucenia modelu dla określonych instrukcji, co odzwierciedla aktywne dostrojenie się atakującego do technik LLM. ✨💡
Zasięg uderzenia: promień i fazy obrażeń 📈🔥
Incydent przebiegał w trzech fazach. W pierwszej, między 26 a 27 sierpnia, zainfekowane wersje Nx bezpośrednio zaatakowały 1700 użytkowników i ujawniły ponad 2000 unikalnych sekretów, a także około 20 000 plików z zainfekowanych systemów. GitHub interweniował, ale większość danych została już zduplikowana.
- 🔹 Faza 1 (26–27 sierpnia): 1700 użytkowników zostało dotkniętych atakiem, ~2000 ujawnionych sekretów, 20000 naruszonych plików.
- 🔸 Faza 2 (28–29 sierpnia): Wykorzystanie wykradzionych tokenów do konwersji prywatnych repozytoriów na publiczne; naruszono 480 dodatkowych kont i ujawniono 6700 repozytoriów.
- 🔹 Faza 3 (od 31 sierpnia): atak wymierzony w organizację ofiary, wykorzystujący konta zagrożone publikacją 500 kolejnych prywatnych repozytoriów.
W drugiej fazie atakujący wykorzystali skradzione tokeny GitHub do upublicznienia prywatnych repozytoriów i zmiany ich nazw na ciąg „s1ngularity”, co zwiększyło ryzyko ataku. W trzeciej fazie atakujący wykorzystał konkretny cel do opublikowania setek dodatkowych prywatnych repozytoriów, co pokazuje upór i eskalację ataku. 🎯

Źródło: Wiz
Reakcja i łagodzenie skutków projektu Nx 🔧✅
Zespół Nx opublikował na GitHubie analizę przyczyn źródłowych, wyjaśniającą w jaki sposób wstrzyknięcie błędu w tytule żądania ściągnięcia w połączeniu z niebezpiecznym użyciem pull_request_target umożliwiło wykonanie dowolnego kodu z podwyższonymi uprawnieniami, uruchamiając potok publikacji i ułatwiając wykradanie tokenu publikacji npm. 🛠️
Wdrożone działania obejmowały usuwanie złośliwych pakietów, unieważnianie i rotację zagrożonych tokenów oraz wprowadzenie obowiązkowego uwierzytelniania dwuskładnikowego dla wszystkich kont wydawców. Dodatkowo, Nx wdrożył model zaufanego wydawcy NPM i dodał ręczne zatwierdzanie przepływów pracy uruchamianych przez PR. 🔐📌
Szybkie porady i najważniejsze punkty ✏️
- ✅ W przypadku podejrzenia naruszenia należy natychmiast przejrzeć i wymienić tokeny i sekrety.
- 📌 Unikaj niebezpiecznego użycia pull_request_target i wymuszaj ręczne zatwierdzenia w przypadku wrażliwych przepływów.
- 🔧 Wdrażaj uwierzytelnianie wieloskładnikowe i zaufane modele publikacji, takie jak Trusted Publisher.
- ⚡ Monitoruj publiczne repozytoria i wykonuj zautomatyzowane wyszukiwania tajnych informacji w celu wczesnego wykrywania.
Definiowanie fragmentów kodu i FAQ ✨
Czym jest telemetry.js?
telemetry.js to nazwa złośliwego skryptu wykonywanego po instalacji, zawartego w zainfekowanej wersji pakietu Nx. Działał on jako program do kradzieży danych uwierzytelniających w systemach Linux i macOS, gromadząc i wykradając poufne dane do publicznych repozytoriów kontrolowanych przez atakującego. 🔍
Ile kont i repozytoriów zostało dotkniętych?
Według raportu Wiz, atak ujawnił 2180 kont i 7200 repozytoriów w trzech udokumentowanych fazach incydentu, przy czym wiele tajemnic nadal pozostaje ważnych, a ryzyko dalszych skutków jest wysokie. 📊
46% de entornos presentaron contraseñas comprometidas, casi el doble respecto al 25% del año anterior. Obtén el Picus Blue Report 2025 para un análisis completo sobre prevención, detección y tendencias en exfiltración de datos. 📈
Raport zawiera dane statystyczne, zalecenia i studia przypadków mające na celu wzmocnienie obrony i poprawę reakcji na wycieki poufnych informacji.




















