Scoperto un nuovo rootkit per Linux invisibile agli antivirus: la minaccia si chiama Curing
Il problema nel runtime Linux è correlato all’interfaccia io_uring e consente ai rootkit di passare inosservati, aggirando i moderni strumenti di sicurezza aziendale. Questa caratteristica è stata scoperta dai ricercatori di ARMO, che hanno creato unrootkit proof-of-concept chiamato Curing, che dimostra gli attacchi utilizzando io_uring.
io_uring è un’interfaccia del kernel Linux per operazioni di I/O asincrone. È stato introdotto nel 2019 in Linux 5.1 per risolvere i problemi di prestazioni e scalabilità nel sistema I/O tradizionale.
Invece di affidarsi a chiamate di sistema che causano carichi pesanti e portano al blocco dei processi, io_uring utilizza buffer ad anello condivisi tra i programmi e il kernel di sistema e mette in coda le richieste di I/O in modo che possano essere elaborate in modo asincrono.
Secondo i ricercatori, il problema si verifica perché la maggior parte degli strumenti di sicurezza monitora le chiamate di sistema e gli hook sospetti (come ptrace o seccomp), ma ignora completamente tutto ciò che riguarda io_uring, creando un pericoloso “punto cieco” nel sistema.
Gli esperti spiegano che io_uring supporta un’ampia gamma di operazioni, tra cui la lettura e la scrittura di file, la creazione e l’accettazione di connessioni di rete, l’avvio di processi, la modifica dei permessi dei file e la lettura del contenuto delle directory, il che lo rende uno strumento potente, soprattutto quando si tratta di rootkit. I rischi erano così grandi che gli sviluppatori di Google decisero di disabilitare io_uring di default su Android e ChromeOS.
Per mettere alla prova la loro teoria, ARMO ha sviluppato Curing, un rootkit che utilizza io_uring per ricevere comandi da un server remoto ed eseguire operazioni arbitrarie senza richiamare chiamate di sistema. I test di Curing con diverse soluzioni di sicurezza note hanno dimostrato che la maggior parte di esse non era in grado di rilevarne l’attività.
Inoltre, ARMO riferisce di aver testato strumenti commerciali e di aver confermato la loro incapacità di rilevare malware tramite io_uring. Tuttavia, i ricercatori non hanno rivelato quali soluzioni commerciali sono state testate. Per coloro che desiderano testare la resilienza dei propri ambienti contro tali minacce, ARMO ha già ospitato Curing su GitHub .
I ricercatori ritengono che il problema possa essere risolto utilizzando Kernel Runtime Security Instrumentation (KRSI), che consentirà di collegare i programmi eBPF agli eventi del kernel correlati alla sicurezza.
L'articolo Scoperto un nuovo rootkit per Linux invisibile agli antivirus: la minaccia si chiama Curing proviene da il blog della sicurezza informatica.