Le GitHub Actions abilitate dall'IA possono essere dirottate con un singolo commento, esponendo chiavi API, token cloud e altri segreti. Un ricercatore di sicurezza ha scoperto 22 repository open source in cui un trigger pubblico, uno strumento di IA eseguito con un flag “skip prompts” e segreti esposti creano un percorso di esfiltrazione diretto.

Come funziona la vulnerabilità

I progetti ora integrano agenti IA — Claude Code, la GitHub Copilot CLI e strumenti simili — direttamente nelle pipeline CI. Uno step del workflow esegue un comando shell e spesso aggiunge un flag che istruisce lo strumento a ignorare le richieste di autorizzazione interattive. Quando il workflow viene avviato tramite un input pubblico — un'issue, un commento o il titolo di una pull request — l'attaccante deve solo pubblicare una riga di testo che l'IA tratterà come un comando.

L'IA, a cui è già stato concesso l'accesso shell illimitato dal flag “skip prompts”, legge qualsiasi variabile d'ambiente o file esposto dal workflow. Se il job carica anche dei secret — chiavi API, token di servizi cloud o credenziali complete di service account — l'IA inoltra tali valori a un server controllato dall'attaccante. Nessuna modifica al codice, nessuna nuova dipendenza, solo un commento dall'aspetto innocuo.

Esempi reali

Il ricercatore ha confermato tre repository vulnerabili che sono già stati patchati:

  • pymc-labs/pymc-marketing – un'issue pubblica potrebbe essere utilizzata per ottenere una chiave API di Anthropic tramite prompt injection.
  • MadAppGang/dingo – il workflow ha concesso a Claude Code pieno accesso Bash ed ha esposto due secret nello stesso job.
  • MadAppGang/claudish – ha riutilizzato lo stesso template vulnerabile del progetto dingo.

Una delle scoperte riguardava una chiave attiva di un account di un servizio cloud, che il ricercatore ha segnalato direttamente al team di sicurezza di un importante provider di IA. Dodici segnalazioni aggiuntive sono in attesa di gestione da parte dei maintainer; i loro nomi non vengono divulgati fino a quando le correzioni non saranno implementate.

Cosa c'è in gioco

Quando un attaccante estrae un secret, il danno può essere immediato e costoso. Una chiave di un account di un servizio cloud garantisce l'accesso illimitato a risorse di calcolo, storage bucket e altri servizi a pagamento. Una chiave API di un provider di modelli linguistici di grandi dimensioni può eseguire query illimitate, accumulando potenzialmente migliaia di dollari di costi. Poiché l'exploit viene eseguito all'interno dell'ambiente CI, la violazione può propagarsi a valle: qualsiasi artifact generato sul runner compromesso potrebbe contenere codice malevolo, trasformando un singolo repository in un vettore per la supply chain.

Per i team che si affidano alla CI assistita dall'IA, il compromesso è netto. La comodità del codice generato automaticamente, del linting o della documentazione deve essere bilanciata con il rischio che un commento pubblico diventi una backdoor occulta.

Perché la vulnerabilità è facile da ignorare

Il ricercatore ha inizialmente presentato sei segnalazioni che sono state successivamente ritirate. I ritiri derivavano da supposizioni sui controlli di autorizzazione di GitHub Actions, non da una revisione riga per riga del codice sorgente dell'Action. La documentazione e l'intuizione possono trarre in inganno; l'unico modo affidabile per confermare la postura di sicurezza di uno step abilit

I risultati hanno già scatenato discussioni nei forum di sicurezza di GitHub riguardo a permessi predefiniti più restrittivi per le Actions abilitate dall'IA. I futuri aggiornamenti della piattaforma potrebbero includere:

  • Un flag che obblighi gli strumenti di IA a operare in un ambiente sandbox senza accesso diretto alla shell.
  • Il rilevamento integrato di pattern di prompt injection nei corpi delle issue o nei commenti.
  • Avvisi automatici quando un workflow combina trigger pubblici con job contenenti segreti.

Per ora, la responsabilità ricade sui manutentori dei repository. I 22 repository identificati dimostrano che il problema non è isolato; qualsiasi progetto che rispecchi lo stesso pattern di workflow è vulnerabile. Un rapido audit delle configurazioni CI può rivelare il problema prima di un attaccante.

In sintesi: Una singola riga di testo in una issue pubblica di GitHub può dare a un agente IA il pieno controllo del tuo ambiente CI e rubare i segreti che vi conservi. Verifica chi può avviare i tuoi workflow, tieni i segreti lontani dai passaggi gestiti dall'IA e scruta ogni flag che concede permessi non controllati. Il costo di una violazione supera di gran lunga lo sforzo di una revisione disciplinata.