Zgłoszona kampania oparta na skradzionych tokenach GitHub i stealerze WFX naraża około 66 000 repozytoriów, według relacji Cybernews. Atakujący mieli użyć skradzionych tokenów dostępu, aby umieścić złośliwe pliki workflow, zamieniając pipeline deweloperski w sposób na zbieranie sekretów. Dostępne doniesienia są zwięzłe, więc ten wpis trzyma się tego, co zostało stwierdzone, i koncentruje się na praktycznych krokach, które deweloperzy mogą podjąć już teraz.
Jak skradzione tokeny umożliwiły atak na workflow GitHub
Według raportu kampania wykorzystała skradzione tokeny, aby dodać workflow „WFX stealer" do około 66 000 repozytoriów GitHub. Token to poświadczenie, które pozwala osobie lub aplikacji działać na koncie bez wpisywania hasła. Jeśli atakujący posiada ważny token z wystarczającymi uprawnieniami, GitHub traktuje jego działania jako legalne.
To właśnie czyni workflow atrakcyjnym celem. Workflow GitHub Actions to pliki przechowywane w repozytorium, które uruchamiają się automatycznie, często z dostępem do sekretów, których projekt używa do budowania, testowania i wdrażania kodu. Złośliwy workflow nie musi wykorzystywać błędu w oprogramowaniu. Wystarczy, że zostanie zatwierdzony przez kogoś, kogo GitHub uważa za upoważnionego, a następnie uruchomi się wewnątrz pipeline'u.
Podsumowanie źródłowe nie opisuje szczegółowo, w jaki sposób tokeny zostały pierwotnie skradzione, i nie będziemy zgadywać. Dla czytelników liczy się wzorzec: sam pipeline staje się mechanizmem dostarczania, a poświadczenia, które go odblokowują, są prawdziwą nagrodą.
Co stealer WFX może ujawnić z kont deweloperskich
Doniesienia opisują workflow jako kradnące sekrety, a sugerowany wątek zauważa, że pipeline'y CI/CD mogą stać się ścieżką do sekretów deweloperów i kont osobistych. W praktyce stealer działający w pipeline'ie może być w stanie sięgnąć do wszystkiego, do czego ten pipeline ma dostęp. Typowe przykłady takich materiałów obejmują:
- Klucze API i poświadczenia chmurowe przechowywane jako sekrety repozytorium
- Tokeny wdrożeniowe i poświadczenia rejestrów pakietów
- Inne tokeny GitHub dostępne dla workflow
Dokładne dane, które zbiera stealer WFX, nie zostały potwierdzone w posiadanych przez nas informacjach, więc powyższą listę należy traktować jako kategorie ryzyka typowe dla sekretów pipeline'ów, a nie jako zweryfikowane ustalenia dotyczące tej kampanii. Szersza obawa polega na tym, że jeden skradziony token może prowadzić do kolejnych skradzionych tokenów. Sekrety pozyskane z jednego repozytorium mogą odblokować inne usługi — w ten sposób kompromitacja repozytorium może rozprzestrzenić się na konta osobiste i organizacyjne.
Wpisuje się to w szerszy temat, który już wcześniej omawialiśmy: systemy, którym ludzie mają ufać, zostają obrócone przeciwko nim. Nasze spojrzenie na to, jak luka zero-click w Pixelu i ataki ScreenConnect na MSP dzieliły ten sam niepokojący wątek, pokazuje, jak często zaufane narzędzie jest słabym punktem.
Jak sprawdzić, czy Twoje repozytoria zostały dotknięte
Nie możemy powiedzieć, czy konkretne repozytorium znajduje się na liście dotkniętych, a dostępne doniesienia jej nie publikują. Nadal możesz samodzielnie szukać oznak manipulacji:
- Przejrzyj pliki workflow. Otwórz folder
.github/workflowsw każdym repozytorium i poszukaj plików, których nie rozpoznajesz, lub zmian, których nie wprowadziłeś. - Sprawdź historię commitów i pull requestów. Poszukaj ostatnich commitów lub gałęzi dotyczących workflow, zwłaszcza od nieznanych kont lub o nietypowych porach.
- Sprawdź logi uruchomień Actions. Nieoczekiwane uruchomienia, nowe wyzwalacze lub kroki wykonujące wychodzące żądania sieciowe zasługują na bliższe przyjrzenie się.
- Przejrzyj dziennik bezpieczeństwa i autoryzowane aplikacje. W ustawieniach GitHub sprawdź, które osobiste tokeny dostępu, aplikacje OAuth i aplikacje GitHub mają dostęp, i usuń wszystko, czego nie używasz.
- Zakładaj ekspozycję, jeśli cokolwiek znajdziesz. Traktuj każdy sekret, który ten workflow mógł odczytać, jako skompromitowany i wymień go.
Wzmacnianie GitHub: tokeny, MFA i zewnętrzne Actions
Żaden z tych kroków nie jest egzotyczny, ale razem ograniczają to, co skradziony token może zrobić.
Rotuj i zmniejszaj tokeny. Unieważnij stare osobiste tokeny dostępu i wydaj nowe o najwęższym zakresie i najkrótszym czasie ważności, który działa. Drobnoziarniste tokeny ograniczone do konkretnych repozytoriów są bezpieczniejsze niż szerokie.
Włącz uwierzytelnianie wieloskładnikowe. MFA chroni logowanie do konta, choć warto pamiętać, że skradziony token może całkowicie ominąć krok logowania. Dlatego higiena tokenów ma równie duże znaczenie.
Ogranicz uprawnienia workflow. Ustaw domyślny token workflow jako tylko do odczytu i przyznaj dostęp do zapisu tylko tam, gdzie zadanie naprawdę go potrzebuje. Wymagaj przeglądu przed scaleniem zmian w plikach workflow, na przykład poprzez ochronę gałęzi i code owners.
Weryfikuj zewnętrzne Actions. Przypinaj Actions do konkretnego commita zamiast ruchomego tagu i preferuj te od zaufanych maintainerów. Trzymaj sekrety z dala od zadań, które ich nie potrzebują.
Co to oznacza dla Ciebie
Jeśli utrzymujesz choćby mały projekt na GitHub, Twoje pliki workflow są częścią Twojej powierzchni ataku. Skradziony token może pozwolić komuś dodać workflow, który po cichu odczytuje Twoje sekrety, a Ty możesz nigdy nie zobaczyć alertu. Indywidualni deweloperzy, maintainerzy open source i firmy z automatycznymi wdrożeniami — wszyscy są w zakresie.
Dobra wiadomość jest taka, że zabezpieczenia są w Twojej kontroli i kosztują niewiele czasu. To także część powtarzającego się wzorca, w którym atakujący celują w konta i narzędzia, którym ludzie już ufają. Nasza relacja o Incransom twierdzącym, że zaatakował TrRAC Inc. dotyczy innego typu incydentu, ale podkreśla, jak szybko skradziony dostęp może zamienić się w realne szkody.
Praktyczne wnioski
- Zrotuj swoje tokeny GitHub już dziś i usuń te, których już nie używasz.
- Włącz MFA na każdym koncie z dostępem do repozytoriów.
- Przejrzyj pliki
.github/workflowspod kątem zmian, których nie wprowadziłeś. - Ustaw uprawnienia workflow domyślnie jako tylko do odczytu i przypinaj zewnętrzne Actions.
- Jeśli znajdziesz cokolwiek podejrzanego, wymień każdy sekret, do którego ten workflow mógł mieć dostęp.
Doniesienia o skradzionych tokenach GitHub i stealerze WFX wciąż się rozwijają, a szczegóły mogą się zmienić. Nie czekaj na potwierdzenie, aby uporządkować własną konfigurację: zrotuj tokeny, włącz MFA i przejrzyj swoje workflow już dziś.




