Attacco alla supply chain: compromissione di GitHub Action “tj-actions/changed-files”
L’attacco alla supply chain che ha coinvolto la GitHub Action “tj-actions/changed-files” ha avuto inizio come un attacco mirato contro uno dei progetti open-source di Coinbase, per poi evolversi in qualcosa di più ampio. Secondo un rapporto di Palo Alto Networks Unit 42, il payload era focalizzato sullo sfruttamento del flusso CI/CD pubblico di uno dei loro progetti open-source, agentkit, probabilmente con l’intento di utilizzarlo per ulteriori compromissioni. Tuttavia, l’attaccante non è riuscito a utilizzare i segreti di Coinbase né a pubblicare pacchetti.
Scoperta e impatto dell’attacco
L’incidente è emerso il 14 marzo 2025, quando si è scoperto che “tj-actions/changed-files” era stato compromesso per iniettare codice che trapelava segreti sensibili dai repository che eseguivano il workflow. È stato assegnato l’identificativo CVE-2025-30066 con un punteggio CVSS di 8.6. Secondo Endor Labs, si stima che 218 repository GitHub abbiano esposto i loro segreti a causa dell’attacco alla supply chain, e la maggior parte delle informazioni trapelate include alcune decine di credenziali per DockerHub, npm e Amazon Web Services (AWS), oltre a token di accesso installati su GitHub.
Analisi dell’impatto
Il ricercatore di sicurezza Henrik Plate ha dichiarato che la scala iniziale dell’attacco alla supply chain sembrava spaventosa, considerando che decine di migliaia di repository dipendono dalla GitHub Action. Tuttavia, un’analisi più approfondita dei workflow, delle loro esecuzioni e dei segreti trapelati mostra che l’impatto effettivo è minore del previsto: “Solo” 218 repository hanno trapelato segreti, e la maggior parte di questi sono GITHUB_TOKEN a breve termine, che scadono una volta completata l’esecuzione di un workflow.
Compromissione di “reviewdog/action-setup”
Successivamente, è emerso che anche il tag v1 di un’altra GitHub Action chiamata “reviewdog/action-setup”, da cui “tj-actions/changed-files” dipende come dipendenza tramite “tj-actions/eslint-changed-files”, è stato compromesso in vista dell’incidente di tj-actions con un payload simile. La violazione di “reviewdog/action-setup” è monitorata come CVE-2025-30154, anch’esso con un punteggio CVSS di 8.6.
Dettagli dell’attacco e conseguenze
L’esploit di CVE-2025-30154 avrebbe permesso all’attore della minaccia non identificato di ottenere un token di accesso personale (PAT) associato a “tj-actions/changed-files”, consentendo loro di modificare il repository e inserire il codice malevolo, influenzando così ogni singolo repository GitHub che dipendeva dall’azione. Quando l’azione “tj-actions/eslint-changed-files” veniva eseguita, i segreti del runner CI di “tj-actions/changed-files” venivano trapelati, permettendo agli attaccanti di rubare le credenziali utilizzate nel runner, incluso un Personal Access Token (PAT) appartenente all’account utente GitHub tj-bot-actions.
Attualmente si sospetta che l’attaccante sia riuscito in qualche modo a ottenere l’accesso a un token con permessi di scrittura per l’organizzazione reviewdog per effettuare le alterazioni malevole. Tuttavia, il modo in cui questo token potrebbe essere stato acquisito rimane sconosciuto in questa fase.
Fonte: The Hackers News
Ricevi le ultime attualità sul mondo tech!