Proteggiti dal falso CleanMyMac: la minaccia SHub Stealer
Un pericolo crescente minaccia gli utenti Mac: un sito contraffatto che imita CleanMyMac, l’utility popolare per la pulizia dei computer Apple, sta distribuendo SHub Stealer, un malware sofisticato progettato per rubare dati sensibili. A differenza di altri malware, questo non sfrutta vulnerabilità tecniche, ma convince gli utenti a eseguire comandi dannosi nel Terminale.
La soluzione rapida
Se non hai ancora eseguito comandi dal sito cleanmymacos.org o da siti simili, chiudi immediatamente la pagina e non tornare. Se hai dubbi di aver scaricato il malware, accedi a Finder, premi Cmd + Shift + G e naviga verso ~/Library/LaunchAgents/. Se trovi un file denominato com.google.keystone.agent.plist che non hai installato, eliminalo. Controlla anche ~/Library/Application Support/Google/ e rimuovi qualsiasi cartella GoogleUpdate.app non installata da te.
Come funziona l’attacco
Il sito falso cleanmymacos[.]org è stato creato per assomigliare alla pagina ufficiale di CleanMyMac. Ai visitatori viene mostrata quella che sembra un’opzione di installazione avanzata, tipica di utenti esperti. La pagina istruisce gli utenti ad aprire il Terminale, incollare un comando e premere Invio. Non c’è alcun prompt di download, immagine disco o avviso di sicurezza.
Questo comando esegue tre azioni in rapida successione:
- Stampa una riga rassicurante (macOS-CleanMyMac-App: https://macpaw.com/cleanmymac/us/app) per far sembrare legittimo l’output del Terminale
- Decodifica un collegamento codificato in base64 che nasconde la vera destinazione
- Scarica uno script shell dal server dell’attaccante e lo esegue immediatamente
Dalla prospettiva dell’utente, non accade nulla di inusuale. Questa tecnica, nota come ClickFix, è diventata un metodo comune di distribuzione per i malware Mac. Poiché il comando viene eseguito volontariamente, protezioni come Gatekeeper, i controlli di notarizzazione e XProtect offrono poca protezione una volta che l’utente incolla il comando e preme Invio.
Cosa ruba SHub Stealer
Una volta installato, SHub Stealer esegue un’operazione sistematica di furto di dati. Il malware raccoglie informazioni da:
- Browser: cerca 14 browser basati su Chromium (Chrome, Brave, Edge, Opera, Vivaldi, Arc e altri), rubando password salvate, cookie e dati di compilazione automatica
- Estensioni di criptovalute: scansiona 102 estensioni di portafogli cripto note, incluse MetaMask, Phantom, Coinbase Wallet, Trust Wallet e Keplr
- Applicazioni di portafogli desktop: prende di mira 23 app di portafogli, tra cui Exodus, Electrum, Atomic Wallet, Ledger Live, Trezor Suite e Bitcoin Core
- Keychain di macOS: accede all’archivio crittografato di Apple per password, credenziali Wi-Fi e chiavi private
- Account iCloud: raccoglie dati dell’account
- Safari e Telegram: ruba cookie, dati di navigazione e file di sessione
- File di sviluppatori: copia cronologie shell (.zsh_history e .bash_history) e .gitconfig, che spesso contengono chiavi API o token di autenticazione
Tutti questi dati vengono compressi in un archivio ZIP e caricati sul server dell’attaccante.
Il backdoor persistente
Ciò che distingue SHub Stealer da altri malware è la sua capacità di rimanere nel sistema anche dopo la pulizia iniziale. Se il malware rileva determinate applicazioni di portafogli installate, scarica una versione modificata del file logico principale dell’applicazione dal server dell’attaccante e lo sostituisce silenziosamente.
Sono stati confermati cinque portafogli cripto con backdoor:
- Exodus: a ogni sblocco del portafoglio, l’app modificata invia silenziosamente la password e la frase seed dell’utente agli attaccanti
- Atomic Wallet: invia password e mnemonico a ogni sblocco
- Ledger Wallet: disabilita la convalida del certificato TLS e mostra una procedura guidata di recupero falsa che chiede la frase seed
- Ledger Live: riceve le stesse modifiche di Ledger Wallet
- Trezor Suite: mostra una sovrapposizione di aggiornamento di sicurezza falsa che chiede la frase seed
Tutti questi backdoor inviano i dati rubati allo stesso endpoint: wallets-gate[.]io/api/injection, suggerendo un unico operatore dietro tutti i backdoor.
Protezione a lungo termine
SHub Stealer installa anche un LaunchAgent, un’attività in background che macOS esegue automaticamente ogni volta che l’utente accede. Si trova in:
~/Library/LaunchAgents/com.google.keystone.agent.plist
La posizione e il nome sono scelti per imitare l’aggiornatore legittimo Keystone di Google. L’attività viene eseguita ogni sessanta secondi e consente agli attaccanti di eseguire comandi sul Mac infetto in qualsiasi momento fino alla scoperta e rimozione del meccanismo di persistenza.
Cosa fare se sei stato colpito
Se hai eseguito il comando dal sito falso:
Cambia le tue password: la password di accesso a macOS e tutte le password archiviate nel browser o in Keychain devono essere considerate compromesse. Cambiale da un dispositivo di cui ti fidi.
Considera i tuoi portafogli cripto compromessi: se hai Exodus, Atomic Wallet, Ledger Live, Ledger Wallet o Trezor Suite installati e hai eseguito il comando, assumi che la tua frase seed e la password del portafoglio siano state esposte. Sposta i tuoi fondi in un nuovo portafoglio creato su un dispositivo pulito immediatamente. Le frasi seed non possono essere cambiate, e chiunque ne abbia una copia può accedere al portafoglio.
Revoca i token sensibili: se la cronologia della shell conteneva chiavi API, chiavi SSH o token di sviluppatore, revocali e rigenerali.
Esegui uno strumento di rimozione malware: utilizza Malwarebytes for Mac per rilevare e rimuovere i componenti rimanenti dell’infezione, incluso il LaunchAgent e i file modificati.
La regola di oro per la sicurezza
La parte più efficace di questo attacco è anche la più semplice: convince la vittima a eseguire il comando dannoso da sola. Presentando un comando del Terminale come un passaggio di installazione legittimo, la campagna aggira molte protezioni integrate di macOS.
Per la maggior parte degli utenti, la regola più sicura è anche la più semplice: installa il software solo dall’App Store o dal sito ufficiale dello sviluppatore. L’App Store gestisce l’installazione automaticamente, quindi non c’è comando del Terminale, nessun dubbio e nessun momento in cui devi decidere se fidarti di un sito casuale.
Technical Deep Dive
Architettura del malware e geofencing
Il primo script che arriva sul Mac della vittima è un loader che esegue diversi controlli di sistema prima di continuare l’attacco. Uno dei controlli iniziali esamina le impostazioni della tastiera macOS per verificare se è installata una tastiera in lingua russa. Se la rileva, il malware invia un evento cis_blocked al server dell’attaccante e si chiude.
Questa è una forma di geofencing. Il malware collegato a gruppi di criminali informatici russofoni spesso evita di infettare macchine che sembrano appartenere a utenti nei paesi della CSI (Comunità degli Stati Indipendenti, che include Russia e diverse nazioni vicine). Evitando sistemi che sembrano appartenere a utenti russi, gli attaccanti riducono il rischio di attirare l’attenzione delle forze dell’ordine locali.
Tracciamento della campagna e infrastruttura C2
Se il sistema supera il controllo di geofencing, il loader invia un profilo della macchina al server di comando e controllo (C2) in res2erch-sl0ut[.]com. Il rapporto include l’indirizzo IP esterno del dispositivo, il nome host, la versione di macOS e le impostazioni della tastiera.
Ogni rapporto è contrassegnato con un hash di build univoco di 32 caratteri che funge da ID di tracciamento. Lo stesso identificatore appare nelle comunicazioni successive con il server, consentendo agli operatori di collegare l’attività a una vittima o una campagna specifica.
Confrontando i payload serviti con e senza hash di build, viene rivelato un altro campo a livello di campagna nel builder del malware: BUILD_NAME. Nel campione legato a un hash di build, il valore è impostato su “PAds”; nella versione senza hash, il campo è vuoto. Il valore è incorporato nello script di heartbeat del malware e inviato al server C2 durante ogni controllo di beacon insieme all’ID bot e all’ID build.
La struttura di “PAds” corrisponde al tipo di tag di fonte di traffico comunemente utilizzato nelle campagne pay-per-install o pubblicitarie per tracciare l’origine delle infezioni. Se questa interpretazione è corretta, suggerisce che le vittime potrebbero raggiungere il sito falso di CleanMyMac attraverso posizionamenti a pagamento piuttosto che ricerca organica o link diretti.
Payload AppleScript e prompt di password falso
Una volta che il loader conferma un bersaglio praticabile, scarica ed esegue il payload principale: uno script AppleScript ospitato in res2erch-sl0ut[.]com/debug/payload.applescript. AppleScript è il linguaggio di automazione integrato di Apple, che consente al malware di interagire con macOS utilizzando funzioni di sistema legittime.
Il primo atto è chiudere la finestra del Terminale che lo ha lanciato, rimuovendo il segno più ovvio che qualcosa sia accaduto. Successivamente arriva la raccolta della password. Lo script visualizza una finestra di dialogo che imita da vicino un prompt di sistema macOS legittimo. Il titolo recita “System Preferences”, la finestra mostra l’icona del lucchetto di Apple e il messaggio dice:
“Required Application Helper. Please enter password for continue.”
La formulazione goffa (“for continue” invece di “to continue”) è un indizio che il prompt è falso, anche se molti utenti sotto pressione potrebbero non notarlo. Se l’utente inserisce la propria password, il malware controlla immediatamente se è corretta utilizzando lo strumento da riga di comando macOS dscl. Se la password è sbagliata, viene registrata e il prompt appare di nuovo. Lo script ripeterà il prompt fino a dieci volte fino a quando non viene inserita una password valida o i tentativi si esauriscono.
Questa password è preziosa perché sblocca il Keychain di macOS, il sistema di archiviazione crittografato di Apple per password salvate, credenziali Wi-Fi, token di app e chiavi private. Senza la password di accesso, il database Keychain è solo dati crittografati. Con essa, i contenuti possono essere decifrati e letti.
Modifica delle applicazioni di portafoglio e sostituzione app.asar
La maggior parte dei malware infostealer sono operazioni “smash-and-grab”: vengono eseguiti una volta, prendono tutto e se ne vanno. SHub fa questo, ma va oltre. Se trova determinate applicazioni di portafoglio installate, scarica una sostituzione per il file logico principale dell’applicazione dal server dell’attaccante e lo sostituisce silenziosamente.
I bersagli sono app basate su Electron, applicazioni desktop costruite su tecnologie web il cui nucleo logico risiede in un file chiamato app.asar. SHub termina l’applicazione in esecuzione, scarica un app.asar sostitutivo dal server C2, sovrascrive l’originale all’interno del bundle dell’applicazione, rimuove la firma del codice e firma nuovamente l’app in modo che macOS l’accetti. Il processo viene eseguito silenziosamente in background.
Indicatori di compromissione (IOC)
Domini:
- cleanmymacos[.]org — sito di phishing che imita CleanMyMac
- res2erch-sl0ut[.]com — server di comando e controllo primario (consegna del loader, telemetria, esfiltrazione dei dati)
- wallets-gate[.]io — C2 secondario utilizzato dai backdoor dei portafogli per esfiltrazione di frasi seed e password





