Attenzione a Perfctl, malware Linux che minaccia milioni di sistemi

Perfctl è un’ insidiosa minaccia informatica scoperta dai ricercatori di Aqua Security che sta prendendo di mira i sistemi Linux in tutto il mondo. Questo malware, in circolazione almeno dal 2021, ha già infettato migliaia di macchine e potrebbe potenzialmente colpire milioni di sistemi connessi a Internet. Il malware si distingue in particolare per la sua furtività, le tecniche di persistenza, la capacità di sfruttare oltre 20.000 configurazioni errate comuni e l’ampia gamma di attività dannose che può eseguire. Tra le sue principali funzionalità vi sono il mining furtivo di criptovalute, la trasformazione dei dispositivi infetti in proxy per il traffico Internet e l’installazione di ulteriori famiglie di malware.

Il nome “Perfctl” deriva da una combinazione dello strumento di monitoraggio Linux “perf” e “ctl”, un’abbreviazione comunemente utilizzata con gli strumenti da riga di comando. Questa scelta non è casuale: fa parte di una strategia più ampia volta a mimetizzare il malware nell’ambiente Linux, rendendo più difficile la sua individuazione.

Il processo di infezione di Perfctl inizia con lo sfruttamento di una vulnerabilità o di una configurazione errata. Il codice exploit scarica il payload principale da un server, spesso precedentemente compromesso dagli attaccanti e convertito in un canale per la distribuzione anonima del malware. In particolare una delle caratteristiche più preoccupanti di Perfctl è la sua abilità nello sfruttare CVE-2023-33246, una vulnerabilità critica con un punteggio di gravità di 10 su 10, che è stata corretta l’anno scorso in Apache RocketMQ, una popolare piattaforma di messaggistica e streaming utilizzata su numerosi sistemi Linux.

In un attacco osservato dai ricercatori, il payload è stato chiamato “httpd”. Una volta eseguito, il file si copia dalla memoria in una nuova posizione nella directory /tmp, si esegue e quindi termina il processo originale ed elimina il payload scaricato. Perfctl impiega una serie di tecniche sofisticate per nascondere la propria presenza e garantire la persistenza sui sistemi infetti: molti componenti del malware vengono installati come rootkit, riuscendo a nascondersi dal sistema operativo e dagli strumenti amministrativi. Il malware utilizza inoltre nomi di processi e file identici o simili a quelli comunemente presenti negli ambienti Linux, così da sfuggire anche ad un controllo sui task in esecuzione. In ogni caso nel momento in cui un utente effettua l’accesso al sistema, Perfctl interrompe le attività facilmente rilevabili. Allo stesso scopo gli eventuali messaggi di errore che possono essere innescati dalle attività del malware vengono soppressi, così da evitare la comparsa di avvisi visibili all’utente. Il malware fa uso inoltre di un socket Unix su TOR per le comunicazioni esterne, rendendo difficile tracciare il traffico malware. Infine il file di installazione viene eliminato dopo l’esecuzione, e il malware continua ad operare come servizio in backgroud.

La persistenza sul sistema compromesso viene garantita con la modifica dello script ~/.profile, che assicura che il malware venga caricato prima dei carichi di lavoro legittimi previsti per l’esecuzione sul server. Inoltre, si copia dalla memoria a multiple posizioni del disco, rendendo più difficile la sua completa rimozione.

Oltre al già citato mining di criptovalute, Perfctl trasforma i dispositivi infetti in proxy a scopo di lucro, permettendo a clienti paganti di inoltrare il loro traffico Internet attraverso le macchine compromesse. Questa funzionalità, nota come “proxy-jacking”, consente agli attaccanti di mascherare l’origine del traffico malevolo. Il malware funge anche da backdoor per l’installazione di altre famiglie di malware, ampliando potenzialmente la portata e l’impatto dell’infezione: Perfctl può essere sfruttato per varie attività dannose, rappresentando così un pericolo significativo per utenti singoli e per organizzazioni e aziende.

Secondo i ricercatori il numero di macchine infette da Perfctl si conti in migliaia, basandosi su dati provenienti da servizi come Shodan e Censys. Tuttavia, il bacino di macchine potenzialmente vulnerabili, ovvero quelle che non hanno ancora installato la patch per CVE-2023-33246 o che contengono una configurazione errata sfruttabile, potrebbe ammontare a milioni.

Aqua Security ha condiviso gli indicatori di compromissione, utili a verificare se un sistema sia stato colpito da Perfctl. Ma dal momento che il malware effettua operazioni di mining, ogni picco insolito di utilizzo della CPU dovrebbe da solo essere motivo sufficiente a destare sospetto, specialmente se ciò accade durante periodi di inattività della macchina. A livello preventivo, è importante installare la patch per la vulnerabilità CVE-2023-33246 e correggere le configurazioni errate segnalate dai ricercatori.