Sicurezza · 12 novembre 2026
Pubblicato anche in ไทย
Attaccanti compromettono bee-js e Swarm Desktop di Ethersphere per distribuire malware che ruba portafogli
Attaccanti hanno utilizzato l'automazione di rilascio del progetto Ethersphere per pubblicare versioni maligne di due suoi strumenti per la rete di archiviazione decentralizzata Swarm: bee-js 13.3.0 e Swarm Desktop 0.56.2.
Entrambi i rilasci scaricano ed eseguono codice costruito per rubare la chiave del portafoglio che Swarm Desktop conserva per il suo nodo, insieme alla password memorizzata che la sblocca. Il codice è anche costruito per installare una porta di accesso su macchine Windows, macOS e Linux.
Il pacchetto bee-js è la libreria JavaScript dietro Swarm Desktop e lo strumento da riga di comando swarm-cli. Swarm Desktop esegue un nodo Swarm sul computer di un utente e salva le chiavi private del nodo lì.
Entrambi i rilasci malvagi sono stati rimossi, e i manutentori del progetto hanno rilasciato un aggiornamento pulito di Swarm Desktop oggi. Nessuno dei due passaggi rimuove una porta di accesso già installata né protegge una chiave già inviata. Nessun furto di fondi era stato segnalato al momento della redazione.
Swarm Desktop 0.56.2 è apparso su GitHub intorno alle 00:36 UTC oggi ed è stato ritirato circa 8,5 ore dopo. L'aggiornatore integrato dell'app potrebbe offrirlo ai computer Windows x64 e ai Mac Apple Silicon entro circa 10 minuti, secondo un'analisi dell'incidente di Socket, un'azienda di sicurezza della catena di fornitura. I Mac Intel non gli sono mai stati offerti, e gli install Linux non si aggiornano automaticamente.
Il rilascio bee-js, versione 13.3.0, è stata l'ultima versione su npm per circa 75 minuti, dalle 00:09 alle 01:25 UTC oggi. Il suo codice viene eseguito come script postinstall, che npm esegue automaticamente durante l'installazione a meno che gli script di installazione non siano disabilitati. Un progetto non aveva bisogno di importare la libreria affinché il codice venisse eseguito.
I pacchetti swarm-cli e bee-dashboard del progetto stesso, e il codice sorgente di Swarm Desktop, accettavano intervalli di versione che includevano 13.3.0. Un'installazione nuova entro quella finestra avrebbe potuto incorporare la versione malvaga.
Nessuno dei rapporti ha fornito un conteggio di macchine infette. La stima approssimativa dell'azienda è che bee-js 13.3.0 sia stato scaricato circa 10 volte, incluso da scanner di sicurezza e mirror. Il conteggio dei download di Swarm Desktop 0.56.2 ha raggiunto 65 entro le 08:27 UTC, inclusi ricercatori.
I manutentori di Ethersphere hanno ritirato 0.56.2 e lo hanno sostituito oggi con un rilascio pulito, versione 0.56.3. Nel cambiamento che ha configurato il nuovo rilascio, uno di loro ha scritto che 0.56.2 era stato pubblicato da un attaccante utilizzando credenziali di integrazione continua rubate ed è stato ritirato.
La versione 0.56.3 è lo stesso codice della versione precedente, 0.56.1, firmato con un certificato Developer ID appena emesso, secondo la nota dell'incidente di quel manutentore. La nota dice che l'aggiornatore automatico dell'app sposterà gli install di 0.56.2 ad esso, sebbene i pacchetti Linux debbano ancora essere sostituiti manualmente. Un confronto del codice sorgente delle due versioni ha trovato nessun cambiamento oltre al numero di versione e alle note di rilascio.
Quando è stato controllato npm oggi, 13.2.0 era di nuovo l'ultima versione bee-js, e 13.3.0 non poteva più essere scaricato dal registro.
L'avviso GitHub per bee-js 13.3.0 dice: qualsiasi computer che ha questo pacchetto installato o in esecuzione dovrebbe essere considerato completamente compromesso. SafeDep, un'azienda di sicurezza della catena di fornitura del software, offre lo stesso consiglio per qualsiasi computer su cui è stato installato Swarm Desktop 0.56.2.
Entrambi i rilasci portano lo stesso caricatore. È poche righe di codice che scaricano più codice da api.frameworkmetrics[.]xyz e lo eseguono con i permessi dell'utente. In bee-js il caricatore è lo script postinstall, e in Swarm Desktop viene eseguito ogni volta che l'app si avvia.
Il codice scaricato cerca due file nella cartella dati di Swarm Desktop: config.yaml e data-dir/keys/swarm.key. Se entrambi sono presenti, li invia al server degli attaccanti.
Il file chiave è un keystore Ethereum crittografato, ma Swarm Desktop conserva la sua password in testo semplice in config.yaml. Con entrambi i file, gli attaccanti possono prendere i token xDAI e xBZZ del portafoglio del nodo, i suoi fondi del libretto degli assegni e la sua posta in gioco.
Il codice scaricato installa anche una porta di accesso. Su Linux e macOS, è una shell remota Go chiamata evjawbreaker, salvata in una cartella ~/.solidity nascosta. Viene eseguita in background come servizio utente su Linux e come LaunchAgent su macOS.
Su Windows, il codice scaricato installa un autentico client di accesso remoto ScreenConnect, firmato dal suo creatore, ConnectWise. Il client viene eseguito come servizio di sistema e si connette al relè degli attaccanti.
Entrambi i rilasci provenivano da bee-worker, l'account che Ethersphere utilizza per automatizzare i suoi rilasci. Nessuno dei due cambiamenti è stato firmato né presentato come richiesta di pull.