Da sempre le soluzioni antivirus sono ritenute un importante scudo contro le minacce informatiche. Un motivo sufficiente per riscuotere l’interesse dei cybercriminali quali potenziali punti di ingresso nella rete aziendale, sia perché un antivirus manipolato non è più in grado di impedire gli attacchi informatici, sia perché spesso si presta alla veicolazione di tali attacchi.
Questo nuovo approccio la dice lunga sull’evoluzione dei cyberattacchi e sulle possibili risposte.
Perché veicolare un attacco informatico tramite soluzioni antivirus?
Può sembrare illogico: i cybercriminali non rischiano di far scattare l’allarme quando attaccano un antivirus? Con la costante evoluzione di questi software, il tentativo degli aggressori di celare il malware utilizzando codici offuscati si rivela sempre più difficile. Pertanto, ora tentano di disattivare l’antivirus prima di lanciare l’attacco vero e proprio. Oppure usano il programma antivirus per ottenere privilegi più elevati sul computer attaccato: attribuirsi privilegi d’uso su una macchina è sempre e comunque il Santo Graal dei cybercriminali.
Come sottolineato da Sébastien Viou, Cyber Evangelist, Stormshield: «Molti attacchi iniziano con il tentativo di prendere il controllo di un servizio non protetto e con un basso livello di privilegi».
Ulteriori vulnerabilità consentono poi di prendere il controllo di processi di livello superiore, che consentono l’esecuzione di comandi. Da questo punto in poi, si può estendere il raggio d’azione.
Ancora secondo Viou, questo approccio è abbastanza semplice. Più difficile e dispendioso in termini di tempo è identificare le vulnerabilità sfruttabili, ma alla fine dei conti, gli aggressori trovano sempre quello che cercano, anche nelle soluzioni antivirus. Se riescono a manipolare la protezione antivirus, i cybercriminali possono ottenere privilegi amministrativi su un computer, o persino attribuirsi il ruolo di amministratori di dominio.
Estensione della superficie d’attacco
Le soluzioni antivirus sono dei software. Ciò significa linee di codice e potenziali bug che possono evolvere in vulnerabilità.
Per Viou: «Nella programmazione, in media, c’è un bug circa ogni 1.000 linee di codice. E un software può contenere diverse migliaia di linee di codice. Qualunque software aggiunto a un dispositivo ne aumenta la superficie di attacco. È un rischio che si corre sempre».
Le tre fasi di un attacco
Un esempio di una diffusa vulnerabilità sfruttata per manipolare un antivirus è rappresentato dai collegamenti simbolici a file o cartelle. Lo scopo è quello di attirare l’attenzione del programma antivirus su un file diverso da quello contenente il malware.
Il secondo passo è quello di acquisire diritti di accesso. Le soluzioni di sicurezza dispongono di privilegi elevati sulla postazione di lavoro in modo da poter interrompere processi o applicazioni se necessario. Se si riesce a entrare nella gestione del sistema come amministratore, si ha accesso illimitato al dispositivo e non solo.
Come avverte Viou: «dato che il software antivirus di norma è installato su tutti i computer dell’azienda, trovare una vulnerabilità su un computer significa che può essere sfruttata sul resto dei dispositivi».
La terza fase dell’attacco è la più dannosa: «Gli aggressori cercano di essere discreti nelle fasi iniziali per infettare il maggior numero possibile di computer prima di passare al furto di dati, al blocco delle postazioni di lavoro o all’interruzione della produzione. Di solito questo è il momento in cui si nota l’attacco: improvvisamente non si ha più accesso alle applicazioni e ai dati. Da qui in poi il panico è più che giustificato, perché è già troppo tardi».
Il ruolo dell’architettura software
Prima di essere immesse sul mercato, le soluzioni di sicurezza informatica vengono controllate per verificare che non ci siano bug o errori strutturali. Nonostante queste precauzioni, nessuna soluzione di sicurezza può garantire l’assoluta assenza di bug. Pertanto, per mitigare i rischi che possono sorgere, si dovrebbe optare per architetture più robuste e sicure. Ad esempio, la scelta di un’architettura software basata su microservizi offre una maggiore resilienza rispetto a una soluzione monolitica. Questo tipo di architettura consiste nel segmentare i diritti di accesso a determinati processi e nell’isolare il flusso di lavoro di ogni servizio, riducendo al minimo la superficie di attacco e limitando la diffusione del malware. Inoltre, la scelta di tecnologie affidabili, conformi alle direttive europee, riduce anche i rischi derivanti da potenziali backdoor.