Salta al contenuto principale


GitHub rafforza la sicurezza npm contro gli attacchi alla supply chain


GitHub ha annunciato importanti modifiche al sistema di autenticazione e pubblicazione npm, volte a rafforzare la protezione contro gli attacchi alla supply chain. Gli aggiornamenti sono stati motivati dalla recente campagna Shai-Hulud, un worm dannoso e auto-propagante incorporato in centinaia di librerie npm. Non solo si replicava in altri pacchetti, ma scansionava anche i dispositivi degli sviluppatori alla ricerca di dati sensibili, tra cui chiavi e token, e li trasmetteva agli aggressori.

In risposta all’incidente, GitHub ha annunciato che avrebbe presto eliminato i meccanismi di autorizzazione legacy e introdotto controlli più rigorosi.

Le modifiche principali includono l’autenticazione a due fattori obbligatoria per la pubblicazione locale e il passaggio a token di breve durata con una validità massima di sette giorni. Inoltre, l’azienda promuoverà attivamente l’uso di Trusted Publishing, un sistema basato sul protocollo OpenID Connect che consente la pubblicazione diretta di pacchetti da CI/CD senza token.

Trusted Publishing crea un collegamento crittograficamente verificabile tra un pacchetto pubblicato e il suo ambiente di compilazione. L’interfaccia a riga di comando di npm genera e allega automaticamente una prova di autenticità alla release, consentendo a ogni utente di verificare dove e in quali condizioni il pacchetto è stato compilato. Questa soluzione mira ad aumentare la trasparenza e la fiducia nei fornitori di componenti software.

La transizione al nuovo sistema includerà le seguenti modifiche:

  • token classici precedentemente utilizzati per la pubblicazione;
  • dismissione del TOTP come metodo 2FA a favore di chiavi fisiche compatibili con FIDO;
  • limitare il periodo di validità dei token dettagliati, in particolare quelli che concedono il diritto di pubblicazione;
  • Blocco della pubblicazione tramite token per impostazione predefinita: verrà data preferenza alla pubblicazione attendibile o al caricamento manuale con 2FA;
  • rimozione delle eccezioni che consentono di aggirare la protezione a due fattori durante la pubblicazione locale;
  • ampliando l’elenco dei provider CI/CD adatti alla pubblicazione attendibile.

Secondo GitHub, ciò dovrebbe ridurre drasticamente la capacità degli aggressori di impossessarsi dell’infrastruttura NPM tramite token contraffatti o rubati, soprattutto data la portata dell’attacco Shai-Hulud.

L’ago della bilancia è stato un malware scoperto recentemente che è stato in grado non solo di replicarsi, ma anche di rubare diversi tipi di segreti, andando ben oltre la compromissione di un singolo ecosistema. L’azienda sottolinea che senza il tempestivo intervento della community e la sua risposta, le conseguenze avrebbero potuto essere molto più gravi.

Il nuovo modello di pubblicazione mira a ridurre la dipendenza dai token come singolo punto di errore e ad aumentare il livello di verifica di ogni azione relativa al posizionamento dei pacchetti.

Queste misure non rappresentano solo una risposta a un attacco specifico, ma anche una revisione strategica dell’intero sistema di sicurezza, basata sui principi di minimizzazione dei privilegi e verifica crittografica.

L'articolo GitHub rafforza la sicurezza npm contro gli attacchi alla supply chain proviene da il blog della sicurezza informatica.