NullReceiver su npm: il C2 si nasconde in transazioni Ethereum “vuote” e sfugge ai blocchi
Featured

NullReceiver su npm: il C2 si nasconde in transazioni Ethereum “vuote” e sfugge ai blocchi

Ricercatori di sicurezza hanno individuato una nuova evoluzione delle tecniche di command and control basate su blockchain che prende di mira gli sviluppatori tramite pacchetti npm trojanizzati. La tattica, chiamata NullReceiver, rappresenta un passo avanti rispetto a EtherHiding, metodo già noto per nascondere informazioni malevole su reti pubbliche come Ethereum.

In questo caso l’obiettivo è rendere più difficile per i difensori identificare e bloccare l’infrastruttura di comando e controllo, sfruttando transazioni apparentemente innocue.

NullReceiver è stata osservata in almeno due librerie JavaScript pubblicate su npm con nomi simili a componenti UI, rimosse poi dal registro dopo alcune centinaia di download. Il punto chiave è che il malware non incorpora un indirizzo C2 fisso nel codice e non utilizza smart contract o campi calldata delle transazioni. Invece, codifica l’indirizzo IP del server C2 direttamente nei byte dell’indirizzo destinatario di un trasferimento Ethereum vuoto, quindi con valore zero e dati zero. Questo rende la transazione economica, poco sospetta e priva di un payload facilmente riconoscibile.

Il flusso è semplice ma efficace. Il codice malevolo consulta un wallet controllato dagli attaccanti, recupera la transazione in uscita più recente e legge il campo To. I primi quattro byte esadecimali dell’indirizzo di destinazione vengono convertiti in numeri e interpretati come un indirizzo IPv4. In un esempio analizzato, i byte iniziali corrispondono a 166.88.134.62, mentre i byte rimanenti possono contenere testo ASCII, usato come firma o messaggio, senza influire sul decoding dell’IP.

Rispetto a EtherHiding, che spesso richiede un indirizzo di destinazione noto e monitorabile e può includere URL o script completi, NullReceiver elimina il problema del bersaglio fisso. Gli attaccanti possono generare indirizzi usa e getta e aggiornare il C2 semplicemente pubblicando una nuova transazione, riducendo la possibilità di blocco preventivo. Per la sicurezza della supply chain, questo scenario rafforza la necessità di controlli su dipendenze npm, analisi del codice, verifica delle versioni e monitoraggio dei comportamenti a runtime quando possibile.

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.