La popolare GitHub Action tj-actions/changed-files è compromessa

La popolare GitHub Action tj-actions/changed-files è stata compromessa da un payload dannoso che sembra tentare di esportare i segreti del repository, con il potenziale di impattare migliaia di pipeline CI su GitHub. A partire dal 14 marzo 2025, tutte le versioni di questa action si ritiene siano compromesse. Non è il primo problema di sicurezza associato a questa action—una vulnerabilità precedente (CVE-2023-51664) era già stata segnalata.

L’action è ampiamente utilizzata nei flussi di lavoro CI/CD per rilevare quali file sono stati modificati tra i commit, rendendola un obiettivo di alto valore per gli attaccanti interessati a estrarre informazioni sensibili dai repository.

Data 2025-03-16 01:30:55
Informazioni Active Exploitation

Riassunto tecnico

La compromissione coinvolge un payload dannoso iniettato nel codice dell’action al commit 0e58ed8. Quando l’action compromessa viene eseguita in un workflow, essa tenta di esfiltrare i segreti scrivendoli su stdout, il che è particolarmente pericoloso nei repository con log dei CI runner pubblici.

L’attacco sfrutta l’ampia fiducia riposta in questa action e le estese autorizzazioni tipicamente concesse ai workflow di GitHub Actions. Poiché nella maggior parte delle implementazioni l’action è referenziata tramite tag anziché tramite commit SHA, gli utenti sono automaticamente esposti alla versione compromessa non appena il tag viene aggiornato, senza dover modificare i file del workflow.

Il payload prende specificamente di mira le variabili d’ambiente CI e i segreti, che spesso contengono token di autenticazione sensibili, chiavi API e altre credenziali che potrebbero garantire a un attaccante l’accesso a vari sistemi e servizi.

Raccomandazioni

Azioni immediate:

Identificare i repository compromessi tramite:

  • Ricerca nel vostro codice della presenza di riferimenti a tj-actions
  • Utilizzo della query di ricerca GitHub: https://github.com/search?q=org%3A<YOURORG>+uses%3A+tj-actions%2F&type=code

Rimuovere immediatamente l’action compromessa da:

  • Tutti i branch (non solo da quello principale)
  • Tutti i file di workflow (.github/workflows/*.yml)

Implementare misure preventive:

  • Configurare le impostazioni dell’organizzazione GitHub per permettere solo action sicure (allow-list)
  • Rimuovere tj-actions/changed-files dalla lista delle action permesse
  • Eseguire il pin delle restanti GitHub Actions a commit SHA specifici invece di tag di versione

Utilizzare alternative:

  • Passare a un’alternativa più sicura di GitHub Action
  • Considerare la possibilità di implementare logica inline per il rilevamento delle modifiche ai file
  • Per gli utenti della Semgrep AppSec Platform, attivare immediatamente la modalità di blocco per la regola di rilevamento

Ricordate che rimuovere l’action solo dal branch principale non è sufficiente—va eliminata completamente da tutti i workflow per evitare la sua esecuzione in qualunque contesto.

Vuoi garantire la massima sicurezza informatica alla tua azienda? ISGroup SRL è qui per aiutarti con soluzioni di cyber security su misura per la tua azienda.

Vuoi che gestiamo tutto noi per te? Il servizi di Virtual CISO e di gestione delle vulnerabilità sono perfetti per la tua organizzazione.

Hai già le idee chiare su quello che ti serve? Esplora i nostri servizi di:

E molto altro. Proteggi la tua azienda con i migliori esperti di cybersecurity!