Recentemente, sono stati individuati attori malevoli che hanno caricato pacchetti npm contraffatti che imitano strumenti legittimi, come typescript-eslint e @types/node, accumulando migliaia di download. Questi pacchetti falsi, denominati @typescript_eslinter/eslint e types-node, sono progettati per scaricare un trojan e recuperare payload di seconda fase, mettendo a rischio la sicurezza della catena di approvvigionamento software.
Questi attacchi di typosquatting non sono una novità , ma lo sforzo impiegato dai cybercriminali per far passare questi pacchetti come legittimi è degno di nota. Inoltre, l'alto numero di download di pacchetti come types-node indica che alcuni sviluppatori potrebbero essere stati ingannati da questi pacchetti falsi, mentre altri download potrebbero essere stati gonfiati artificialmente dai malintenzionati per aumentare la fiducia nei componenti malevoli.
L'analisi di Sonatype ha rivelato che il pacchetto npm @typescript_eslinter/eslint punta a un falso repository GitHub, creato da un account denominato typescript-eslinter. All'interno di questo pacchetto, è presente un file denominato prettier.bat, che non è un file batch ma un eseguibile Windows (.exe) precedentemente segnalato come trojan.
D'altra parte, il pacchetto types-node contiene istruzioni per contattare un URL di Pastebin e recuperare script che eseguono un eseguibile malevolo ingannevolmente chiamato npm.exe. Questo caso evidenzia la necessità urgente di migliorare le misure di sicurezza della catena di approvvigionamento e la vigilanza nel monitoraggio degli sviluppatori di software di terze parti.
Parallelamente, ReversingLabs ha identificato diverse estensioni maligne nel Visual Studio Code Marketplace, rimosse dallo store. Queste estensioni, tra cui EthereumFoundation.Solidity-Language-for-Ethereum e ZoomVideoCommunications.Zoom, contenevano codice JavaScript offuscato per scaricare payload di seconda fase da un server remoto. La natura esatta di questi payload non è ancora nota.
Queste scoperte sottolineano ancora una volta l'importanza di esercitare cautela quando si scaricano strumenti e librerie da sistemi open-source per evitare di introdurre codice malevolo come dipendenza in un progetto più ampio. La possibilità di installare plugin e estendere la funzionalità degli ambienti di sviluppo integrato (IDE) li rende bersagli molto attraenti per gli attori malevoli. Le estensioni di VSCode sono spesso trascurate come rischio per la sicurezza durante l'installazione in un IDE, ma il compromesso di un IDE può essere un punto di ingresso per ulteriori compromessi nel ciclo di sviluppo aziendale.