
Egy óriási támadás lépésről lépésre
2025. augusztus 26-án a támadók egy hibás GitHub Actions munkafolyamatot használtak ki az Nx tárhelyen belül, ami lehetővé tette, hogy egy rosszindulatú verziót tegyenek közzé az NPM-en (Node csomagkezelő). Ebbe a csomagba egy post-install kártékony script, a telemetry.js került, amely Linux és macOS rendszereken próbált meg hitelesítési adatokat, például GitHub-tokeneket, npm-tokeneket, SSH-kulcsokat, .env fájlokat, kriptotárcákat ellopni, és azokat feltölteni egy nyilvános GitHub-tárhelyre, amelynek neve s1ngularity-repository volt.
A támadók MI-alapú parancssori eszközöket – például Claude, Q, Gemini – használtak, hogy ezekkel nagynyelvű modellek (LLM-ek) segítségével kutassák fel és gyűjtsék össze az érzékeny információkat. Az MI-promptokat a támadás során folyamatosan hangolták, hogy a lehető legtöbb adatot tudják ellopni. Egyes utasításokat (pl. behatolási tesztelés) az LLM-ek visszautasítottak, de a promptok finomításával így is egyre jobb eredményeket értek el.
Láncreakció: fiókról fiókra
Az első fázisban, augusztus 26. és 27. között 1700 felhasználó esett áldozatul, több mint 2000 egyedi titok került kiszivárgásra, és 20 000 fájlt loptak el. Bár a GitHub nyolc órával később törölte a támadók repóit, addigra a kiszivárgott adatok másolata már biztonságban volt a kiberbűnözőknél.
A második hullámban, augusztus 28–29-én a támadók a megszerzett GitHub-tokenekkel privát repókat tettek nyilvánossá, nevükbe beillesztve a s1ngularity szót. Ez további 480 – főként szervezeti – fiók kompromittálódását jelentette, és 6700 addig zárt projektet tettek közzé.
A harmadik fázisban, augusztus 31-től, a hackerek már csak egyetlen szervezetet céloztak – két ellopott fiókkal további 500 privát tárhelyet tettek nyilvánossá.
Hogyan védekezik most az Nx?
Az Nx csapata részletes jelentést tett közzé, amelyből kiderül: a támadók egy pull request címébe rejtett kódbefecskendezéssel, valamint a pull_request_target nem biztonságos használatával futtattak tetszőleges kódot, így szerezték meg az NPM-kiadáshoz szükséges tokeneket. A fertőzött csomagokat azóta eltávolították, az érintett tokeneket visszavonták, és a kiadói fiókokon ezentúl kötelező a kétfaktoros hitelesítés. Az Nx áttért az NPM Megbízható Kiadó (NPM Trusted Publisher) modelljére is, így már csak jóváhagyás után fut automatikus közzététel.