Cyberprzestępcy zainfekowali ponad 1,8 tysiąca repozytoriów na GitHubie w celu drenażu danych z chmury

Cyberprzestępcy użyli ponad 4,8 tysiąca przejętych kont na platformie GitHub do przeprowadzenia masowej kampanii wfx-loot, celującej w dziesiątki tysięcy repozytoriów kodu. Złośliwe skrypty posłużyły do wyciągnięcia poufnych tokenów oraz danych dostępowych do chmur AWS, Azure i Google Cloud z co najmniej 1 835 projektów. Eksperci do spraw bezpieczeństwa zalecają natychmiastowy przegląd automatycznych przepływów pracy oraz unieważnienie zainfekowanych kluczy.
Mechanizm wykrywania uprawnień w repozytoriach
Atak rozpoczął się 10 listopada o godzinie 13:45 czasu polskiego, kiedy napastnicy użyli skradzionych danych do 4 837 kont na GitHubie, aby sprawdzić uprawnienia do zapisu w 61 764 repozytoriach. W tym celu tworzyli prośby o dołączenie zmian (pull request) pod niewzbudzającym podejrzeń tytułem nawiązującym do uwag z audytu zależności. Badacze z firmy Aikido zajmującej się bezpieczeństwem aplikacji ustalili, że około 92 procent tych zgłoszeń pozostało otwartych, co wskazuje na brak reakcji ze strony właścicieli projektów. Wśród przejętych kont znajdowały się profile należące do organizacji z listy Fortune 100, amerykańskiej Administracji Usług Ogólnych (GSA), rządu Francji oraz projektów open source, takich jak Nextcloud czy WebdriverIO. Dodatkowo około 50 przejętych kont posiadało uprawnienia do publikacji w ekosystemach oprogramowania, w tym npm, PyPI, Go, crates oraz Packagist.
Złośliwy skrypt i eskalacja uprawnień chmurowych
Po potwierdzeniu praw do zapisu napastnicy wstrzykiwali skrypt powłoki składający się z 1 500 wierszy kodu poprzez modyfikację istniejących automatyzacji GitHub Actions, tworzenie krótkotrwałych gałęzi lub wykorzystanie mechanizmów instalacyjnych npm. Kod zbierał tokeny GITHUB_TOKEN, OIDC, poświadczenia dla usług AWS, Azure i Google Cloud, a także klucze do narzędzi programistycznych i infrastruktury, takich jak Docker, Kubernetes, Terraform, Vault czy platformy sztucznej inteligencji OpenAI i Anthropic. Jak zauważają analitycy Aikido, skrypt umożliwia eskalację uprawnień poprzez wymianę tokenów OIDC na tymczasowe sesje w chmurach AWS, Azure i GCP, a w środowisku AWS potrafi łączyć role IAM w celu tworzenia trwałych kont użytkowników. Zgromadzone dane kompresowano do archiwów i przesyłano za pomocą żądań HTTP POST na serwery kontrolowane przez przestępców, po czym całą operację czyszczenia śladów oraz usuwania logów wykonywano w czasie krótszym niż minuta.
Skutki w łańcuchu dostaw i rekomendacje dla firm
W wyniku automatycznej publikacji złośliwy ładunek trafił między innymi do pakietu neuronai-studio w rejestrze Packagist oraz do modułu docker-env w języku Go. Eksperci z firmy Aikido oceniają, że głównym celem ataku była kradzież sekretów z systemów ciągłej integracji, natomiast wydanie złośliwych pakietów stanowiło jedynie efekt uboczny zautomatyzowanych procesów wydawniczych. Analitycy dostrzegają również powiązania z kampanią GhostAction z 2025 roku. Administratorzy repozytoriów powinni zweryfikować obecność gałęzi wfx-docs, sprawdzić luki w numeracji uruchomień automatyzacji oraz natychmiast unieważnić i zastąpić wszystkie poświadczenia i role chmurowe dostępne dla naruszonych przepływów pracy.




















