Red Hot Cyber
La cybersecurity è condivisione. Riconosci il rischio, combattilo, condividi le tue esperienze ed incentiva gli altri a fare meglio di te.
Cerca

MacOS sotto attacco dal software pirata: un nuovo Malware rappresenta una seria minaccia per gli Utenti

Redazione RHC : 28 Gennaio 2024 08:31

Gli esperti di Kaspersky Lab hanno scoperto una famiglia precedentemente sconosciuta di malware macOS distribuito con software piratato. Il payload è una backdoor con la possibilità di eseguire qualsiasi script con diritti di amministratore.

La campagna dannosa osservata dai ricercatori prende di mira macOS 13.6 e versioni successive, ovvero sia dispositivi con processori Intel che dispositivi con Apple Silicon. Le immagini compromesse contengono non solo una versione pirata di alcuni software, ma anche un relativo attivatore, che l’utente è invitato a eseguire per consentire l’“applicazione delle patch”

L’attivatore sembra abbastanza semplice: ha un solo pulsante “PATCH”. Dopo aver premuto il quale il sistema chiede all’utente una password.

Come funziona l’infezione

I ricercatori scrivono che è diventato subito chiaro che l’attivatore in realtà non è così semplice. Memorizza il pacchetto di installazione di Python 3.9.6 e un file Mach-O aggiuntivo nella cartella Risorse. Il file principale del tipo Fat Mach-O, implementa in realtà lo stesso pulsante “PATCH”, quando viene premuto e si verificano due eventi:

  • Il file eseguibile dello strumento dalla cartella delle risorse viene avviato con diritti di amministratore, per il quale viene utilizzata la funzione obsoleta AuthorizationExecuteWithPrivileges, che richiama una finestra per l’immissione della password dell’amministratore;
  • il pacchetto di installazione di Python viene copiato nella directory /tmp/ con i file temporanei.

Inoltre, si verifica effettivamente il “patch” di un’applicazione pirata. Lo strumento confronta i primi 16 byte del file eseguibile modificato con la sequenza incorporata nel codice “Attivatore” e li rimuove se corrispondono.

“È divertente che dopo questo l’applicazione diventi funzionante“. Gli aggressori hanno quindi utilizzato versioni già hackerate delle applicazioni per costringere l’utente a eseguire gli “Activator”.

Una volta completato il “patch”, viene eseguito payload dannoso: il malware contatta il server di comando e controllo e da lì scarica uno script crittografato. Questo utilizza un metodo interessante e insolito per comunicare con il centro di comando e nascondere l’attività nel traffico, garantendo quasi completamente che il payload dannoso venga scaricato.

Per ottenere l’indirizzo del server, il programma raccoglie un URL da due elenchi di parole codificate nel suo codice, aggiungendo una sequenza casuale di cinque lettere come dominio di terzo livello. Una volta ottenuto un indirizzo, interroga il server DNS nel tentativo di ottenere il record TXT per quel dominio. I record TXT possono contenere varie informazioni sul dominio necessarie all’applicazione, quindi la richiesta stessa di tale record sembra del tutto normale.

L’assemblaggio dei record TXT

Dopo aver esaminato le possibili combinazioni di parole incorporate nel codice (erano le stesse per tutti i campioni studiati), gli esperti hanno scoperto che di tutti i domini di secondo livello, solo uno funzionava: imohub[.]net. Non importa quale dominio di terzo livello viene utilizzato, l’importante è che sia presente nella richiesta.

La risposta ricevuta dal server DNS contiene tre record TXT, che il programma successivamente elabora e assembla in un messaggio completo. Ogni voce è un pezzo di testo cifrato codificato Base64, in cui il primo byte contiene un numero di sequenza che viene rimosso durante il riassemblaggio. Il testo cifrato risultante viene crittografato utilizzando l’algoritmo AES in modalità CBC. Il messaggio decrittografato è uno script Python.

Lo script contatta apple-health[.]org ogni 30 secondi e tenta di scaricare ed eseguire il seguente script. Il completamento richiede 14.400 secondi, trascorsi i quali il processo terminerà e verrà caricata una nuova versione dello script.

Obiettivo principale: eseguire comandi arbitrari sulla macchina

Questo script Python ha finalmente rivelato gli obiettivi degli aggressori dietro questa campagna. Il suo scopo principale è eseguire comandi arbitrari ricevuti dal server. A giudicare dal codice responsabile dell’elaborazione dei comandi, si tratta di script Python codificati in Base64.

Oltre ad eseguire i comandi, lo script raccoglie e invia al server le seguenti informazioni:

  • versione del sistema operativo;
  • elenco delle directory in /Utenti/;
  • un campo dove verranno inserite informazioni sulla disponibilità del software antivirus nelle versioni future;
  • elenco delle applicazioni installate;
  • tipo di processore;
  • indirizzo IP esterno del dispositivo;
  • un campo vuoto che presumibilmente può essere utilizzato per inviare informazioni sulla versione del payload dannoso.
Sezione di codice responsabile dell’esecuzione dei comandi ricevuti

È interessante notare che al momento dello studio il server non ha restituito alcun comando e dopo un po’ ha smesso del tutto di rispondere. Pertanto gli esperti hanno scaricato nuovamente lo script Python della terza fase e hanno scoperto che nella nuova versione c’erano delle modifiche.

Redazione
La redazione di Red Hot Cyber è composta da un insieme di persone fisiche e fonti anonime che collaborano attivamente fornendo informazioni in anteprima e news sulla sicurezza informatica e sull'informatica in generale.