Due recenti incidenti nel repository PyPI hanno esposto vulnerabilità nella catena di fornitura del software. Gli aggressori sono riusciti a pubblicare versioni modificate di pacchetti legittimi come PyTorch Lightning e Intercom-client. Queste varianti contenevano codice nascosto progettato per estrarre credenziali di accesso memorizzate nei sistemi degli utenti, dimostrando un rischio crescente per sviluppatori e aziende che si affidano a librerie open source.
Come gli aggressori hanno manipolato pacchetti legittimi di PyPI 🔍
Gli aggressori hanno utilizzato tecniche di typosquatting e dependency confusion per distribuire le loro versioni dannose. Nel caso di PyTorch Lightning, il codice dannoso veniva eseguito durante l'installazione, raccogliendo variabili d'ambiente e file di configurazione con credenziali. Per Intercom-client, il malware si attivava all'importazione del pacchetto, esfiltrando dati tramite richieste HTTP a server controllati. Entrambi i casi hanno sfruttato la fiducia nell'ecosistema Python, dove la revisione manuale delle dipendenze rimane una sfida.
Il paradosso di installare fiducia cieca in PyPI 🤔
È curioso che gli stessi sviluppatori che scrivono codice per automatizzare processi poi installino pacchetti senza controllarne il contenuto. È come comprare un'auto usata e non aprire il cofano perché il venditore ha un aspetto onesto. Gli aggressori sanno che la pigrizia tecnica è un vettore di attacco redditizio. Nel frattempo, continuiamo a eseguire pip install come se fosse un atto di fede, sperando che nessuno abbia inserito un keylogger nell'ultimo aggiornamento di una libreria per ordinare liste.