GhostAction aggiunge phishing per sviluppatori e uno stealer persistente dopo il blocco dei workflow di GitHub

GhostAction aggiunge kit phishing OAuth e stealer persistente mascherato da font dopo il blocco dei workflow, secondo OpenSourceMalware.

Aggiungi CyberWorldOpsalle tue fonti preferite su Google
GhostAction aggiunge phishing per sviluppatori e uno stealer persistente dopo il blocco dei workflow di GitHub
Malware

Immagine illustrativa generata con AI

L'operatore di GhostAction ha esteso la sua campagna di compromissione dei repository con un kit di phishing e uno stealer di credenziali persistente mascherato da font web, secondo il resoconto di The Hacker News sui risultati di OpenSourceMalware.

I ricercatori hanno individuato il componente di secondo stadio in 94 repository appartenenti a 66 proprietari. Questi numeri descrivono repository e proprietari, non vittime confermate o credenziali sottratte. Dei 94 repository, 15 erano stati eliminati, rinominati o resi privati, quindi al momento del conteggio ne restavano 79 accessibili.

Il nuovo approccio segue l'uso precedente, da parte di GhostAction, di workflow malevoli di GitHub Actions per cercare segreti nei progetti. OpenSourceMalware ha riferito che, a partire dal 9 ottobre 2026, GitHub ha iniziato a impedire l'esecuzione di quel workflow. I ricercatori non hanno affermato che il blocco abbia causato il cambiamento successivo, ma hanno ritenuto che l'operatore abbia spostato l'esecuzione in aree che vanno oltre questi controlli sui workflow.

Il phishing cattura le credenziali e autorizza un flusso OAuth device

L'infrastruttura di phishing ruota attorno a my-github[.]com, registrato il 9 ottobre 2026 e risolto verso 193.32.204[.]199. Secondo quanto riportato, lo stesso indirizzo IP sarebbe stato usato come endpoint di esfiltrazione per il workflow di primo stadio di GhostAction.

Il 9 ottobre, un'email proveniente da noreply@my-github[.]com è arrivata a un manutentore di progetti open source. Fingeva di essere un avviso di sicurezza di GitHub, sosteneva che qualcuno avesse effettuato l'accesso da Mosca, in Russia, e indirizzava il destinatario a un link presentato come un modo per proteggere l'account.

OpenSourceMalware descrive il kit di phishing come un reverse proxy in grado di intercettare sia la password dell'account sia il codice di autenticazione a due fattori della vittima. Inoltre inietta JavaScript nella sessione proxata per autorizzare un flusso OAuth device di GitHub con tre scope:

  • repo, che fornisce l'accesso ai repository;
  • workflow, che consente di modificare i file dei workflow di GitHub Actions;
  • read:org, che espone le informazioni sull'appartenenza alle organizzazioni.

Il kit automatizza l'inserimento e l'autorizzazione del codice del dispositivo, anziché chiedere alla vittima di digitare il codice o di approvare consapevolmente l'applicazione. Il token di accesso risultante viene inviato a my-github[.]com tramite TCP sulla porta 8443.

Un token del genere dà all'operatore una credenziale API riutilizzabile, con permessi in linea con il comportamento osservato di GhostAction: enumerare i repository e collocare file malevoli in .github/workflows/.

Un dominio collegato, my-gitlab[.]com, è stato registrato 17 giorni prima di my-github[.]com. Il ricercatore Paul McCarty ha dichiarato che non esisteva alcun collegamento diretto a livello infrastrutturale con GhostAction. I domini differivano per registrar, dati di registrazione, coppie di nameserver Cloudflare, indirizzi IP, sistemi autonomi e configurazione DNS, e non è stato recuperato alcun certificato o artefatto di account condiviso.

La fase 2 viene eseguita quando gli sviluppatori aprono un repository

Sei giorni dopo il blocco del workflow riportato, i ricercatori hanno osservato una seconda fase che aggiunge tre componenti ai repository compromessi.

Il primo è un file tasks.json di Visual Studio Code configurato con runOn: folderOpen. Questo fa sì che il payload venga eseguito automaticamente quando il progetto viene aperto in Visual Studio Code.

Il secondo è public/fonts/fa-solid-400.woff2. Nonostante l'estensione .woff2 e il percorso che sembra un font, OpenSourceMalware lo ha identificato come uno stealer di credenziali che prende di mira:

  • chiavi AWS;
  • token di PyPI e npm;
  • credenziali Git;
  • credenziali dei cluster Kubernetes;
  • chiavi private SSH;
  • credenziali di Anthropic Claude e Google Gemini.

Dopo aver raccolto i dati, il payload installa un cron job che esegue ogni cinque minuti codice fornito dall'attaccante. I dati sottratti vengono trasmessi allo stesso server tramite HTTP non cifrato sulla porta 8080.

Anche il nome del file del font è comparso nella campagna PolinRider nel gennaio 2026. Questa sovrapposizione non basta, da sola, a stabilire che GhostAction sia gestito dallo stesso attore o dalla Corea del Nord.

Il terzo componente è un altro workflow di GitHub Actions, pensato per offrire un percorso di esecuzione alternativo nel caso in cui lo stealer locale non venga eseguito. Mantiene la logica di base del workflow originale, aggiunge altri formati di credenziali e, se la sua richiesta HTTP POST fallisce, può salvare i risultati in un gist segreto di GitHub.

I nomi dei file di workflow osservati includono:

  • lint.yml
  • ci-check.yml
  • build-check.yml
  • repo-health.yml
  • audit.yml
  • code-review.yml
  • test-suite.yml
  • cache-cleanup.yml

OpenSourceMalware ha inoltre registrato ondate di workflow di primo stadio il 10 e il 12 ottobre 2026, ma ha riferito che in quelle ondate non sono stati estratti segreti.

Molti repository esposti erano inattivi

Tra i 79 repository ancora accessibili, 65 non avevano ricevuto commit da oltre un anno. Uno non era stato modificato da più di nove anni.

L'inattività non neutralizza i file malevoli. Sviluppatori o utenti a valle che clonano un progetto interessato e lo aprono in Visual Studio Code potrebbero comunque attivare il task folderOpen. Il conteggio dei repository disponibili non indica nemmeno quante persone abbiano aperto i progetti o quante credenziali siano state effettivamente raccolte.

Jenn Gile, co-fondatrice di OpenSourceMalware, ha dichiarato che l'operatore resta non identificato e ha valutato che l'implementazione «suggerisce un'esperienza limitata». Ha citato un filtro sulle variabili d'ambiente che non cattura la maggior parte delle chiavi API, una ricerca nella directory home che può andare in timeout e scartare i risultati, e l'uso di un solo indirizzo IP per phishing, esfiltrazione e scansione di internet.

Misure di risposta per manutentori e utenti dei repository

OpenSourceMalware raccomanda ai manutentori interessati di revocare l'accesso e i token di GitHub da un dispositivo pulito, cambiare le password e verificare i repository alla ricerca di file non autorizzati e modifiche ai workflow.

Le credenziali raggiungibili dai workflow interessati dovrebbero essere ruotate, incluse le secret del repository e qualsiasi credenziale cloud, di registry di pacchetti, SSH, Kubernetes o di provider di AI esposta all'ambiente del progetto. I manutentori dovrebbero inoltre avvisare le persone che hanno clonato i repository interessati, così che possano verificare i propri sistemi e, se necessario, ruotare le credenziali.

Le verifiche dei repository dovrebbero includere .github/workflows/, la configurazione dei task di Visual Studio Code, il percorso public/fonts/fa-solid-400.woff2 e i nomi dei file di workflow osservati. Poiché lo stealer crea un cron job, rimuovere i soli file malevoli dal repository potrebbe non eliminare la persistenza su un sistema in cui il payload è già stato eseguito.

Leggi anche

Fonti

Questo articolo è una rielaborazione originale basata sulle fonti seguenti.

Torna alla home

Ultime notizie di cybersecurity

Tutte le notizie di cybersecurity →