Negli ultimi mesi la sicurezza della supply chain software è tornata al centro dell’attenzione a causa di nuove campagne che abusano dei repository di dipendenze più usati. Un caso emblematico riguarda un ceppo modificato del worm Shai Hulud individuato nel registro npm all’interno del pacchetto @vietmoney/react-big-calendar. Il pacchetto esisteva da anni ma è stato aggiornato improvvisamente a fine dicembre 2025, un dettaglio tipico degli attacchi alla catena di fornitura in cui un progetto apparentemente innocuo viene trasformato in vettore di malware dopo aver guadagnato fiducia e download.
La logica di Shai Hulud punta al furto di segreti e credenziali come API key, token cloud e token npm e GitHub, con successiva esfiltrazione verso repository GitHub controllati dagli attaccanti. L’aspetto più pericoloso non è solo il furto di dati sensibili, ma la capacità worm-like di espandere l’infezione: una volta ottenuti i token npm, il malware può recuperare molti altri pacchetti popolari associati allo stesso sviluppatore, introdurre modifiche malevole e ripubblicarli, ampliando rapidamente la compromissione della supply chain.
Nel nuovo ceppo sono state osservate variazioni utili a eludere controlli e rendere più affidabile l’attacco. Cambiano i nomi dei file iniziali e del payload principale, cambiano i repository di destinazione e anche i file che contengono i segreti vengono salvati con nomi diversi e offuscati. Inoltre è stata rimossa una funzione tipo dead man switch che in precedenza poteva attivare un comportamento distruttivo se non venivano trovati token utili. Sono presenti anche miglioramenti nella gestione degli errori e ottimizzazioni legate alla pubblicazione dei pacchetti in base al sistema operativo.
In parallelo è stato scoperto anche un pacchetto malevolo su Maven Central che imitava una dipendenza Java molto diffusa legata a Jackson JSON, sfruttando una forma di typosquatting basata su prefissi simili nel namespace. Inserito in un progetto Spring Boot, il codice offuscato si attiva automaticamente all’avvio e procede a scaricare payload specifici per piattaforma, inclusa una componente Cobalt Strike usata per command and control e post-exploitation.