Bring your own vulnerable driver (BYOVD): la tecnica di attacco sempre più popolare tra i cyber attaccanti

Al momento stai visualizzando Bring your own vulnerable driver (BYOVD): la tecnica di attacco sempre più popolare tra i cyber attaccanti

È una tecnica di attacco sempre più diffusa per compromettere, principalmente, sistemi aziendali bypassando le soluzioni di sicurezza: si chiama Bring your own vulnerable driver (BYOVD) ed è estremamente pericolosa ed efficace.

In un attacco BYOVD l’attaccante abusa di driver legittimi e firmati, ma vulnerabili, di soluzioni di sicurezza per sfruttarne le vulnerabilità, eseguire l’escalation dei privilegi e disabilitare le soluzioni di sicurezza in esecuzione sul sistema bersaglio.

Questa tecnica, detto in breve, consiste nell’installare sul sistema bersaglio driver con vulnerabilità note anziché scrivere exploit da zero.

Ransomware e BYOVD: BlackByte e Kasseika

Questa tecnica ad esempio è usata dal gruppo ransomware BlackByte. La più recente versione del ransomware, scritta in Go, si basa sull’exploit di una vulnerabilità di un driver legittimo di Windows. Sfruttando questa falla gli attaccanti riescono a bypassare la soluzioni di sicurezza.

In particolare, l’exploit del driver vulnerabile RTCore64.sys consente agli attaccanti di ottenere sufficienti privilegi per terminare più di 1000 driver su cui si basano numerosi e noti prodotti di sicurezza. Il driver RTCore64.sys si trova in Micro-Star MSI Afterburner ed è afflitto dalla vulnerabilità CVE-2019-16098. Questa è una vulnerabilità di escalation dei privilegi ed esecuzione di codice arbitrario remoto.

Anche la nuova operazione ransomware Kasseika sfrutta questa tecnica. Kasseika sfrutta il driver Martini (Martini.sys/viragt64.sys) parte dell’Agent System dell’antivirus italiano VirIT di TG Soft. La routine di attacco inizia con una email di phishing che tenta di estorcere, dai dipendenti, le credenziali di accesso al loro sistema. Una volta ottenuto l’accesso, gli attaccanti scaricano (a meno che non sia già presente sul sistema) il driver vulnerabile al solo scopo di exploitarlo ed ottenere privilegi di amministrazione sufficienti a terminare oltre 991 processi diversi in una lista integrata nel malware. La quasi totalità di questi processi sono legati a prodotti antivirus, tool di sicurezza e analisi oppure utilità di sistema. Arrestati i processi relativi alle soluzioni di sicurezza il ransomware ha la strada spianata e può avviare la routine di criptazione dei file.

Rootkit e BYOVD: il caso del gruppo APT Lazarus

Non solo ransomware: il gruppo hacker Lazarus, sospettato di legami con la Corea del Nord, ha usato questa tecnica per distribuire un rootkit per sistemi Windows.

In questo caso Lazarus utilizza il driver vulnerabile dbutil_2_3.sys presente nel firmware di Dell. Questo driver è afflitto dalla vulnerabilità CVE-2021-21551, che Dell ha corretto nel Maggio 2021. Gli attaccanti usano in particolare una DLL chiamata FudModule.dll che tenta di disabilitare varie funzionalità di monitoraggio di Windows. La libreria è usata quindi per modificare le variabili del kernel e rimuovere le callback usate dalle soluzioni di sicurezza.

Un rootkit è un tipo di malware sviluppato per fornire accesso e controllo illegittimo su un dispositivo bersaglio.

Mitigazioni degli attacchi BYOVD

La mitigazione più diretta consiste nell’aggiornare i sistemi operativi giunti all’EOL (end of life, ovvero senza più supporto da parte del produttore) come Windows 7 o Windows Server 2008, perché sono estremamente vulnerabili ad attacchi BYOVD.

Nel caso in cui non sia possibile passare da un’infrastruttura legacy, ci sono alcune misure che è possibile prendere:

  • eseguire regolari audit del kernel e applicare patch e update dei produttori;
  • aumentare i privilegi necessari per caricare driver;
  • implementare strumenti di protezione del kernel che verifichino che solo utenti autorizzati possano caricare driver;
  • monitorare il Registro Eventi di Windows;
  • utilizzare funzionalità come il Sistema di individuazione comportamentale per rilevare i casi in cui i processi di sicurezza vengono terminati.

In generale, dato che gli attaccanti usano vulnerabilità già ben note è utile tenere traccia delle più recenti problematiche di sicurezza e creare una blacklist di driver noti per essere sfruttabili.