
Un finto installer di LastPass nasconde un driver che disattiva l'antivirus
Un finto installer di LastPass Authenticator su GitHub usava un driver firmato da Microsoft per disattivare l'antivirus, poi rubava le password salvate nel browser.
Un finto installer di LastPass offerto su GitHub disattiva l'antivirus e altri software di sicurezza, poi ruba le password salvate sulla macchina su cui viene eseguito, hanno riferito i ricercatori di LastPass e Delphos Labs il 17 settembre. La catena inizia con una pagina di download e termina con un driver kernel di Windows, e LastPass ha dichiarato che nessuno dei suoi sistemi, servizi o vault dei clienti è stato toccato: gli attaccanti hanno solo preso in prestito il nome dell'azienda.
L'esca è una pagina GitHub contraffatta, github.com/LastPass-Authenticator, che si posiziona nei risultati di ricerca per termini come "LastPass Authenticator download" ed è costruita per sembrare una pagina prodotto autentica di LastPass. Premere il pulsante di download non avvia un normale download: manda il visitatore attraverso diverse pagine GitHub e poi a un server degli attaccanti, che serve un grande archivio ZIP. Il vero LastPass Authenticator è distribuito da lastpass.com e dagli app store ufficiali, non da GitHub. Gli archivi visti dai ricercatori erano di 148 MB e 127,9 MB, riempiti con file spazzatura in modo che i servizi di scansione con limiti di dimensione per l'upload li saltino.
Dentro lo ZIP c'è una copia rinominata di vsdbg.exe, un vero strumento di debug di Microsoft, collocata accanto a un file malevolo chiamato vsdbg.dll. Quando il finto installer viene eseguito, Windows carica la DLL dell'attaccante dalla stessa cartella invece di quella legittima, un trucco noto come DLL side-loading. Il loader poi tenta tre modi diversi per ottenere i diritti di amministratore, raggiunge SYSTEM (il livello di privilegio più alto su una macchina Windows) e installa un driver kernel come servizio. Un driver kernel è un software che gira al livello più profondo del sistema operativo, sotto lo strato in cui operano i programmi antivirus e gli strumenti di endpoint detection and response (EDR), ed è per questo che può agire senza essere visto da loro.
Il driver, che i ricercatori hanno chiamato Alinubx.sys, contiene una lista di 145 nomi di processi antivirus e di sicurezza e termina ognuno di quelli che trova in esecuzione. Poiché agisce dal kernel, quegli strumenti di sicurezza ordinari (in user-mode) non possono bloccare l'uccisione né tantomeno osservarla. Caricare un driver correttamente firmato ma sfruttabile per ottenere quel tipo di accesso è una tecnica nota chiamata bring your own vulnerable driver, o BYOVD. Il driver è firmato attraverso la catena Microsoft Windows Hardware Compatibility Publisher, con data di firma marzo 2023, anni prima di questa campagna. Come hanno detto i ricercatori, "l'attestazione Microsoft prova che un driver è passato attraverso una pipeline di fiducia. Non prova che il driver sia sicuro". La kill list è solo la parte del codice del driver che è stata eseguita qui. Lo stesso codice può anche nascondere file, iniettarsi in altri programmi e reindirizzare il traffico web, ma quelle funzioni richiedono un file di configurazione che gli attaccanti non hanno incluso, quindi sono rimaste spente.
Con il software di sicurezza disattivato, lo stealer ha raccolto le password salvate da più di due dozzine di browser, file di wallet di criptovalute e sessioni di login per Discord, Steam e Telegram, insieme al contenuto di Windows Credential Manager e a qualsiasi file chiamato come "password", "seed" o "recovery". Per Chrome ed Edge, che usano la crittografia app-bound di Google per fermare proprio questo tipo di furto, lo stealer inietta codice nel browser e chiede al servizio del browser stesso di decifrare le password. I dati rubati vengono impacchettati in uno ZIP e inviati a un server degli attaccanti.
Perché nulla l'ha intercettato. Il driver è una copia rinominata di CcProtect.sys, un driver del prodotto cinese di cifratura dei dischi CnCrypt che è già elencato nel catalogo LOLDrivers come process killer, con codice proof-of-concept pubblico. I due file condividono lo stesso nome prodotto, versione e submitter; sono stati cambiati solo il nome del file e la descrizione. Quell'unico cambiamento ha fatto crollare il rilevamento: l'originale noto era segnalato da 7 su circa 70 motori ad agosto, mentre il driver rinominato non era segnalato da nessuno. La rinomina non è però sfuggita alla blocklist dei driver vulnerabili di Microsoft, perché nemmeno l'originale era mai stato inserito. La blocklist, attivata per impostazione predefinita dall'aggiornamento di Windows 11 del 2022, confronta hash di file noti, e un driver rinominato o ricompilato produce un nuovo hash che la lista non contiene. Delphos ha controllato la lista il 20 agosto e non ha trovato nessuna delle due versioni, e al momento del report del 17 settembre Alinubx.sys non era ancora presente.
Delphos ha segnalato il driver a Microsoft il 19 agosto. Microsoft ha risposto che il comportamento non rientra nella sua definizione di vulnerabilità di sicurezza, perché il driver non è un componente Microsoft, e ha indirizzato i ricercatori al canale separato che valuta i driver per la blocklist. Delphos ha inviato di nuovo lì lo stesso giorno.
Cosa fare se il finto installer è stato eseguito. Considera ogni password salvata nel browser su quella macchina come rubata, insieme a qualsiasi file di wallet di criptovalute, alle sessioni Discord, Steam e Telegram e a qualsiasi cosa in Windows Credential Manager, perché lo stealer copia quei dati prima che inizi il lavoro del driver. Cambia quelle password da un dispositivo separato e pulito, non da quello compromesso, e controlla l'attività degli account per qualsiasi cosa tu non abbia fatto. Il driver resta caricato, uccide di nuovo gli strumenti di sicurezza e riesegue lo stealer a ogni riavvio, quindi gli strumenti che normalmente ripulirebbero la macchina non sono affidabili. Una macchina che ha eseguito questo payload va trattata come una compromissione a livello kernel e, dove possibile, sottoposta a un controllo forense a livello kernel o ricostruita.
Cosa possono cercare i difensori. I ricercatori consigliano di cercare la discendenza e il comportamento del driver invece di un singolo nome di file, dato che gli operatori possono rinominarlo di nuovo come hanno fatto qui. I segnali da tenere d'occhio includono un servizio creato come NvFsFilter; un driver scritto in C:\Windows\System32\drivers\nvfsflt64.sys; un driver i cui dettagli di firma nominano Henan Dafeng Software o contengono "CnCrypt"; il percorso del dispositivo \\.\Alinubx; e il caricamento di un driver seguito dall'uccisione di processi di sicurezza. Un rilevamento comunitario per il driver esatto è pubblicato su LOLDrivers, anche se confronta per hash e quindi condivide la stessa debolezza una volta che il file cambia. Gli indicatori completi sono nel report congiunto.
Da dove viene. La pagina LastPass era una delle tante esche: il server degli attaccanti serviva pagine di impersonificazione per almeno 40 marchi, ha detto LastPass, e una seconda pagina falsa quasi identica per un prodotto "macOS LastPass" è stata rimossa prima che il team potesse esaminarla. I finti repository GitHub che distribuiscono questa famiglia di stealer non sono nuovi: Trend Micro ha documentato lo stealer BoryptGrab diffuso in questo modo a marzo, e Arctic Wolf ha segnalato un'ondata separata di quasi 300 repository simili a luglio. Delphos valuta con alta confidenza che il loader sia stato costruito con il crypter Cruciferra, uno strumento a pagamento la cui kill list predefinita contiene anch'essa 145 nomi e il cui driver è intercambiabile, e con moderata confidenza che lo stealer, che LastPass chiama Rapuncel, sia un parente di BoryptGrab piuttosto che la stessa build. Quante persone siano state infettate non è noto; il report non fornisce un numero di vittime.
Per le organizzazioni che vogliono far rivedere le proprie macchine, i propri servizi e la propria infrastruttura interna partendo dalla sicurezza, AEU-I offre IT, infrastruttura e consulenza security-first.
Come Proteggerti
- Scarica LastPass Authenticator solo da lastpass.com o dall'app store ufficiale del tuo telefono, e mai da una pagina GitHub o da un link che ti è stato inviato.
- Se hai scaricato questo installer da GitHub, non eseguirlo, e chiedi a qualcuno di tecnico di controllare o reinstallare completamente Windows su quel computer, perché l'antivirus su di esso non è più affidabile.
- Cambia qualsiasi password tu abbia salvato nel browser su quel computer, e fallo da un dispositivo diverso che non è stato colpito.
- Attiva la verifica in due passaggi per i tuoi account email, Discord, Steam e Telegram, così che una password rubata da sola non basti per entrare.
- Controlla l'attività recente e la cronologia di accesso di quegli account per qualsiasi cosa tu non abbia fatto personalmente, e segnala qualsiasi cosa strana al provider.
- Assicurati che gli aggiornamenti di Windows siano installati, dato che le protezioni integrate contro i driver pericolosi noti funzionano solo quando il sistema è aggiornato.
I Termini Spiegati
- kernel driver Un software che gira nel nucleo più profondo di Windows, più in basso dei normali programmi, così può fare cose che le app di sicurezza ordinarie non riescono a vedere né a fermare.
- DLL side-loading Un trucco in cui un programma viene indotto a caricare un file dannoso che si trova accanto a lui nella stessa cartella, perché Windows lo scambia per quello vero.
- BYOVD Abbreviazione di bring your own vulnerable driver, una tecnica in cui gli attaccanti usano un driver realmente firmato e fidato ma con poteri pericolosi.
- endpoint detection and response (EDR) Software di sicurezza installato su un computer che sorveglia comportamenti sospetti e cerca di fermare gli attacchi mentre avvengono.
- blocklist Un elenco di file che Windows è istruito a rifiutare di caricare perché sono noti come pericolosi.
- hash Un breve codice calcolato dal contenuto di un file, usato per identificarlo, che cambia completamente se cambia anche solo il nome del file o un byte.
- crypter Uno strumento a pagamento venduto agli attaccanti che camuffa il software dannoso in modo che i programmi di sicurezza non lo riconoscano.
- stealer Software malevolo il cui unico compito è copiare password salvate, sessioni di login e file di wallet da un computer e inviarli all'attaccante.