Packagist sotto attacco: package.json infetto installa malware Linux nelle build e in GitHub Actions
Featured

Packagist sotto attacco: package.json infetto installa malware Linux nelle build e in GitHub Actions

Un recente attacco alla supply chain software ha colpito Packagist, il repository di riferimento per i pacchetti PHP basati su Composer, coinvolgendo otto pacchetti che contenevano codice malevolo capace di eseguire malware su Linux. Il dettaglio più insidioso è che la manomissione non era nel classico composer.json, ma in package.json, sfruttando gli script di lifecycle tipici dell’ecosistema JavaScript.

Questo approccio cross-ecosystem rende più difficile l’individuazione per chi controlla solo le dipendenze PHP, mentre in realtà molti progetti includono tool di build JavaScript insieme al codice PHP.

L’analisi ha mostrato uno script postinstall che tentava di scaricare un binario Linux da un URL di GitHub Releases, salvarlo in /tmp/.sshd, modificare i permessi con chmod per renderlo eseguibile e avviarlo in background. Un comportamento del genere equivale a una forma di remote code execution durante l’installazione o durante le pipeline di build, con impatto potenzialmente grave su server di produzione e ambienti CI/CD.

Pacchetti impattati

I pacchetti impattati includevano vari progetti in versione dev, tra cui:

  • moritz-sauer-13 / silverstripe-cms-theme
  • crosiersource / crosierlib-base
  • devdojo / wave e genesis
  • katanaui / katana
  • elitedevsquad / sidecar-laravel
  • r2luna / brain
  • baskarcm / tzi-chat-ui

Le versioni compromesse sono state rimosse, ma resta fondamentale verificare se nel proprio progetto siano state installate release affette o se siano presenti artefatti di build già contaminati.

Sono emerse anche tracce dello stesso payload in centinaia di file su GitHub, suggerendo una campagna più ampia. In alcuni casi il codice è stato inserito direttamente in workflow di GitHub Actions, segno che gli attaccanti non puntavano a un solo vettore di esecuzione, ma a più punti della catena di distribuzione, dall’installazione locale alle automazioni in cloud.

Rischio e mitigazioni consigliate

Anche senza conoscere nel dettaglio il secondo stadio del malware, il solo downloader è sufficiente per rappresentare un rischio elevato, perché prova a nascondere l’attività e a far girare codice scaricato da remoto. Per rafforzare la sicurezza della supply chain è consigliabile:

  • controllare gli script in package.json dei pacchetti PHP che includono asset JavaScript;
  • limitare l’esecuzione di postinstall in ambienti sensibili;
  • applicare policy di allowlist e scansioni SCA che coprano più ecosistemi.
We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.