Sicurezza Informatica
Perfctl: il malware nascosto che prende di mira milioni di server Linux
Il malware perfctl prende di mira milioni di server Linux con tecniche avanzate di evasione: come rilevarlo e proteggersi con misure di sicurezza specifiche.
Un nuovo malware chiamato “perfctl” è stato recentemente scoperto da Aqua Nautilus e sta sfruttando più di 20.000 tipi di configurazioni errate per attaccare i server Linux connessi a Internet. Questa minaccia mette a rischio potenzialmente milioni di server in tutto il mondo, esponendo migliaia di vittime a vari attacchi, tra cui l’esecuzione di cryptominer e proxy-jacking.
Architettura e tecniche di evasione di Perfctl
Il malware perfctl impiega diverse tecniche sofisticate per rimanere nascosto sui sistemi Linux infetti. Queste includono:
- Utilizzo di rootkit per nascondere la propria presenza.
- Evitare attività rumorose: il malware entra in uno stato di inattività quando rileva l’accesso di nuovi utenti al server, riattivandosi solo quando il sistema torna in uno stato di inattività.
- Comunicazione interna attraverso Unix socket e comunicazione esterna tramite TOR per mascherare il traffico di rete.
- Persistenza del malware: una volta eseguito, il malware si copia in vari punti del disco con nomi fuorvianti e si esegue come servizio di sistema. Successivamente, il file binario originale viene eliminato per evitare il rilevamento.
- Tentativo di sfruttamento della vulnerabilità Polkit (CVE-2021-4043) per ottenere privilegi di root.
Una volta che il malware si insedia nel server, viene utilizzato principalmente per eseguire attività di cryptomining, utilizzando XMRIG per sfruttare la CPU del server e generare criptovalute come Monero. In alcuni casi, è stato rilevato anche il download di software di proxy-jacking, consentendo al malware di sfruttare la larghezza di banda del server infetto.
Come funziona l’attacco di Perfctl
L’attacco inizia sfruttando vulnerabilità o configurazioni errate del server. Una volta ottenuto l’accesso iniziale, il payload principale viene scaricato da un server controllato dagli attaccanti, installato nella directory /tmp
, e il processo iniziale viene terminato e rimosso per occultare le tracce. Il malware utilizza anche rootkit per modificare il comportamento di varie funzioni e nascondere la sua attività all’amministratore del sistema.
Durante la persistenza, perfctl manipola lo script ~/.profile
per eseguire il malware all’accesso dell’utente e verificare se il file /root/.config/cron/perfcc
è eseguibile. Se lo è, il malware viene avviato, mascherando ulteriormente la sua presenza.
Evasione della sicurezza
Perfctl utilizza rootkit che sovrascrivono vari simboli di libreria come Libpam
e Libpcap
. Questo gli consente di bypassare i processi di autenticazione, evitare il monitoraggio del traffico di rete e nascondere specifiche attività dannose. Le utility legittime del sistema come ldd
, lsof
, top
, e crontab
vengono modificate per non mostrare le attività del malware quando vengono utilizzate dall’amministratore del server.
Impatto principale dell’attacco
L’obiettivo principale di perfctl è il cryptomining, utilizzando risorse di sistema come la CPU per generare criptovalute, con conseguente rallentamento delle prestazioni del server. Il malware stabilisce comunicazioni con pool di mining attraverso la rete TOR, rendendo difficile il tracciamento del traffico malevolo.
Come rilevare Perfctl
I seguenti segnali possono aiutare a identificare l’infezione da parte di perfctl:
- Picchi anomali nell’uso della CPU: attività di cryptomining possono causare un utilizzo eccessivo della CPU durante i periodi di inattività del sistema.
- Analisi delle directory: cercare file binari sospetti nelle directory
/tmp
,/usr
e/root
. - Monitoraggio dei processi: individuare processi come
httpd
osh
che presentano comportamenti anomali o che vengono eseguiti da percorsi inusuali. - Controllo del traffico di rete: analizzare il traffico per identificare comunicazioni con pool di cryptomining o attraverso TOR, e verificare eventuali connessioni a indirizzi IP noti per attività malevole.
Misure di sicurezza e mitigazione
Per proteggersi da perfct Aquasec consiglia:
- Applicare patch e aggiornamenti di sicurezza: assicurarsi che tutte le vulnerabilità siano risolte, in particolare quelle legate a software di accesso pubblico come RocketMQ e Polkit.
- Limitare l’esecuzione di file: settare l’opzione
noexec
sulle directory/tmp
e/dev/shm
per evitare l’esecuzione diretta di file binari. - Disabilitare servizi non necessari: ridurre la superficie di attacco disabilitando servizi non utilizzati.
- Gestione dei privilegi: implementare politiche di accesso rigide e usare RBAC (Role-Based Access Control) per limitare l’accesso a utenti e processi.
- Segmentare la rete: isolare i server critici dalla rete pubblica e limitare il traffico in uscita verso servizi TOR o pool di cryptomining.
- Implementare protezioni runtime: utilizzare strumenti di sicurezza avanzati per rilevare rootkit, cryptominer e malware fileless.