CSIRT Toscana

Typosquatting: rilevata distribuizione di pacchetti NPM malevoli (BL01/250314/CSIRT-ITA)

Data:
14 Marzo 2025 12:25

Sintesi

Ricercatori di sicurezza hanno recentemente rilevato la pubblicazione di pacchetti NPM opportunamente predisposti per simulare librerie legittime e distribuire il malware BeaverTail al fine di collezionare informazioni sensibili dai sistemi compromessi.

Descrizione

In analogia a quanto pubblicato da questo CSIRT nell’ambito del bollettino BL01/220325/CSIRT-ITA, è stata recentemente rilevata la distribuzione di pacchetti NPM opportunamente predisposti per simulare librerie legittime.

La tecnica

Utilizzando la tecnica denominata “ typosquatting ”, sono stati resi disponibili pacchetti NPM con nomi molto simili a quelli delle librerie legittime. Questa strategia mira a ingannare gli sviluppatori, inducendoli a scaricare versioni dannose dei pacchetti originali.

Nel dettaglio, risulterebbero essere stati pubblicati negli ultimi mesi i seguenti pacchetti:

  1. is-buffer-validator
  2. yoojae-validator
  3. event-handle-package
  4. array-empty-validator
  5. react-event-dependency
  6. auth-validator

Gli attori malevoli hanno creato e mantenuto dei repository GitHub per cinque dei pacchetti malevoli, conferendo un’apparenza di legittimità open-source alle librerie ed aumentando la probabilità che il codice malevolo sia integrato nei flussi di lavoro degli sviluppatori.

Il codice malevolo

Qualora installato uno dei suddetti pacchetti, il malware BeaverTail provvede a stabilire una connessione con server di comando e controllo (C2) al fine di prelevare ulteriori componenti malevoli. Nel dettaglio, BeaverTail provvede ad istanziare un ambiente Python opportunamente predisposto per eseguire il RAT InvisibleFerret, i cui obiettivi vanno oltre il furto di credenziali, cercando di integrarsi nei flussi di sviluppo e assicurare una persistenza più duratura.

I malware collezionano i dettagli inerenti al sistema, provvedendo all’esfiltrazione dei dati sensibili, quali credenziali memorizzate nei browser e chiavi di portafogli di criptovalute, inviandoli ai server C2 tramite richieste HTTP POST.

Durante le fasi di infezione vengono utilizzate tecniche di offuscamento come la codifica Base85 e la crittazione XOR, per nascondere il codice malevolo. Inoltre, viene impiegata la tecnica denominata “control flow flattening” rendere il codice più difficile da comprendere e da analizzare durante le fasi di reverse engineering e/o durante l’analisi statica.

Infine, malware è progettato per funzionare su Windows, macOS e Linux e la persistenza sui sistemi è garantita attraverso modifiche al registro di sistema, su sistemi Windows, o tramite l’utilizzo di appositi script shell su sistemi Unix-based.

Per eventuali ulteriori approfondimenti si consiglia di consultare il link all’analisi, disponibile nella sezione Riferimenti.

Azioni di mitigazione

Gli utenti e le organizzazioni possono far fronte a questa tipologia di attacchi verificando scrupolosamente che i pacchetti NPM da installare corrispondano alle versioni lecite.

Infine, si raccomanda di valutare la verifica e l’implementazione – sui propri apparati di sicurezza – degli Indicatori di Compromissione (IoC) forniti dai ricercatori di sicurezza e presenti nell’apposito bollettino nella sezione Riferimenti.

Riferimenti

Indicatori di compromissione

Tipologia Indicatore
ip-dst 172.86.84.38
ip-dst|port 172.86.84.38:1224
sha256 6a104f07ab6c5711b6bc8bf6ff956ab8cd597a388002a966e980c5ec9678b5b0
github-username alextucker0519
github-username alximmykola379
github-username edan0831
github-username elondavid888
url http://172.86.84.38:1224/client/9/902
url http://172.86.84.38:1224/pdown
url http://172.86.84.38:1224/uploads
github-repository https://github.com/alextucker0519/array-empty-validator
github-repository https://github.com/alximmykola379/yoojae-validator
github-repository https://github.com/edan0831/is-buffer-validator
github-repository https://github.com/elondavid888/react-event-dependency
github-repository https://github.com/kevin-tra/auth-validator
github-username kevin-tra

Change log

Versione Note Data
1.0 Pubblicato il 14-03-2025 14/03/2025

Il presente articolo è un prodotto originale di csirt.gov.it, riproposto qui a solo scopo di aumentarne la visibilità. Può essere visualizzato in versione originale al seguente link