Microsoft rilascia utility per rimuovere Solorigate dalle reti infette

L’attacco alla catena di fornitura di SolarWinds tramite lo strumento SolarWinds Orion si è dimostrato uno degli incidenti di pirateria informatica più devastanti degli ultimi anni, colpendo migliaia di organizzazioni pubbliche e private in tutto il mondo. Una delle caratteristiche principali di questo attacco è la distribuzione di file binari tramite aggiornamenti legittimi, che hanno consentito il furto di credenziali, attacchi di escalation di privilegi e infine il furto di informazioni sensibili.

Microsoft è una delle istituzioni che ha investito la maggior parte delle risorse nell’indagine su questo attacco complesso, che ha consentito il rilevamento del codice sorgente, degli indicatori di coinvolgimento e dei modelli di comportamento associati al gruppo di hacker responsabile dell’operazione del malware Solorigate.

Per fornire metodi di difesa migliori contro tali incidenti, Microsoft ha deciso di rendere open source il codice CodeQL, un set di query utilizzato durante le indagini di Solorigate, in modo che altre organizzazioni possano condurre analisi simili. Utilizzando queste query, i ricercatori saranno in grado di rilevare qualsiasi codice sorgente che condivide somiglianze con Solorigate, sia nei suoi elementi di base che nelle funzionalità.

L’utilizzo di queste query per rilevare indicatori di compromissione non è un metodo infallibile (gli autori delle minacce potrebbero limitare le funzioni analizzate di Solorigate); tuttavia, l’utilizzo di questo metodo come parte di un quadro completo affronterebbe al meglio questa nuova variante del rischio informatico.

COS’È ESATTAMENTE CODEQL?

Questo è un motore di analisi del codice semantico che fa parte di GitHub e funziona principalmente in due fasi; in primo luogo, come parte della compilazione del codice sorgente in binari, CodeQL crea un database per acquisire il modello di codice di compilazione, analizzando il codice sorgente e creando il proprio modello di compilazione.

Successivamente, questo database viene utilizzato per eseguire query allo stesso modo di qualsiasi altro database, poiché il linguaggio CodeQL è stato appositamente progettato da Microsoft per facilitare la selezione di alcune condizioni di codice complesse. I suoi sviluppatori assicurano che CodeQL sia una risorsa utile poiché il suo approccio in due fasi sblocca più scenari, inclusa la possibilità di utilizzare l’analisi statica per l’analisi del codice reattivo su una rete completa.

L’utilizzo dei database CodeQL consentirà ai ricercatori di eseguire ricerche semantiche su una moltitudine di codici diversi per trovare condizioni di codice collegabili a una build dannosa specifica. CodeQL aiuterà ad analizzare migliaia di repository per trovare repository per alcune varianti di errori potenzialmente correlati a Solorigate.

Queste query valutano i flag di compromissione a livello di codice, disponibili anche nel repository GitHub per CodeQL. Questa piattaforma ospita tutte le informazioni necessarie per rilevare un potenziale attacco di Solorigate, nonché indicazioni per altre query.

RILEVAMENTO DELLE MINACCE A LIVELLO DI CODICE

In questa ricerca, Microsoft ha utilizzato due tattiche principali per rilevare gli indicatori di compromissione: il primo approccio si basa sulla ricerca di una particolare sintassi a livello di codice, mentre il secondo si concentra sul rilevamento di schemi semantici generali per le tecniche presenti negli indicatori a livello di codice di compromesso.

Inoltre, la scrittura e l’esecuzione di query sintattiche è un processo relativamente veloce e offre molteplici vantaggi rispetto alla ricerca di espressioni regolari ricercabili. I modelli semantici cercano tecniche generali, come i nomi dei processi di hashing, i ritardi prima di contattare i server C2, tra gli altri. Questi sono durevoli per variazioni sostanziali, ma sono più complicati da creare e ad alta intensità di calcolo quando si analizzano più basi di codice contemporaneamente.

La combinazione di questi due approcci consente di rilevare scenari potenzialmente dannosi, sebbene i ricercatori non dovrebbero dimenticare che un attore di minacce potrebbe modificare sia la sintassi che le sue tecniche di attacco, quindi CodeQL dovrebbe essere considerato solo uno strumento ausiliario nel contesto di un approccio di sicurezza completo.

Sebbene nella sua descrizione questo set di query si concentri sugli indicatori di coinvolgimento a livello di codice di Solorigate, gli sviluppatori di CodeQL affermano che lo strumento fornisce più opzioni per le query e le funzionalità backdoor e altre tecniche di evasione.