L'aggiornamento che non puoi permetterti di ignorare: fine del supporto per Office 2016 e Office 2019

Leggi ora
Per le traduzioni dei siti utilizziamo l'intelligenza artificiale e, sebbene ci sforziamo di essere accurati, non sempre le traduzioni sono precise al 100%. La vostra comprensione è apprezzata.

Come Supply Chain di SolarWinds avrebbe potuto essere prevenuto utilizzando MetaDefender

Analisi dinamica Adaptive e Threat Intelligence per la difesa Supply Chain zero-day
Di OPSWAT
Condividi questo post

Introduzione: La violazione che ha ridefinito la sicurezza informatica

Alla fine del 2020, l'attacco alla catena di fornitura SolarWinds ha scosso la comunità della sicurezza informatica.

Iniettando codice maligno in un aggiornamento firmato digitalmente della piattaforma Orion di SolarWinds, gli avversari hanno ottenuto l'accesso nascosto a migliaia di organizzazioni del settore pubblico e privato. Quello che sembrava un aggiornamento software affidabile conteneva una backdoor che ha consentito una delle campagne di cyberspionaggio più devastanti della storia.

Questo episodio ha messo in luce una dolorosa realtà: le difese basate sulle firme e sulla reputazione non sono sufficienti contro minacce zero-day sofisticate e invisibili. Ma cosa sarebbe successo se le organizzazioni della catena di fornitura avessero implementato OPSWAT MetaDefender ?

Con l'ultima versione MetaDefender 2.4.0, OPSWAT una sandbox adattiva basata sull'emulazione, integrata con informazioni sulle minacce, in grado di rilevare le sottili anomalie che il malware SolarWinds cercava di nascondere.

Questo blog analizzerà come si è svolto l'attacco e, soprattutto, come MetaDefender avrebbe potuto impedirlo.

Come ha funzionato l'attacco di SolarWinds

L'attacco alla catena di approvvigionamento di SolarWinds è stato reso possibile dalla compromissione di una DLL legittima utilizzata nella piattaforma di gestione IT Orion (SolarWinds.Orion.Core.BusinessLayer.dll). Gli attori della minaccia hanno modificato furtivamente questo componente incorporandovi direttamente del codice dannoso.

Quella che sembrava essere una modifica minore e innocua, con poche righe poco appariscenti in una base di codice familiare, ha finito per introdurre una minaccia significativa. Questa DLL faceva parte di una piattaforma ampiamente utilizzata da organizzazioni del settore pubblico e privato, rendendo la portata dell'attacco senza precedenti.

All'interno della DLL compromessa era nascosta una backdoor completamente funzionale, realizzata con circa 4.000 righe di codice. Questo codice garantiva agli aggressori l'accesso occulto ai sistemi interessati, consentendo un controllo persistente sulle reti delle vittime senza che venissero lanciati allarmi.

Uno degli aspetti più critici di questo attacco è stato il suo posizionamento all'interno del processo di creazione del software stesso. La DLL manomessa recava una firma digitale valida, indicando che gli aggressori si erano infiltrati nell'infrastruttura di sviluppo o distribuzione del software di SolarWinds. Questo ha fatto apparire il codice maligno come affidabile e gli ha permesso di eseguire azioni privilegiate senza attivare i controlli di sicurezza standard.

Per mantenere la segretezza, gli aggressori hanno evitato di interrompere la funzionalità originale della DLL. Il payload iniettato consisteva in una modifica leggera: lanciava un nuovo metodo in un thread separato, garantendo che il comportamento dell'applicazione host rimanesse invariato. La chiamata al metodo è stata incorporata in una funzione esistente, RefreshInternal, ma eseguita in parallelo per evitare il rilevamento.

La logica della backdoor risiedeva in una classe denominata OrionImprovementBusinessLayer, un nome scelto deliberatamente per assomigliare a componenti legittimi. Questa classe ospitava la totalità della logica dannosa, comprese 13 classi interne e 16 funzioni. Tutte le stringhe erano offuscate, rendendo l'analisi statica molto più difficile.

Diagramma che mostra le fasi dell'attacco alla supply chain di SolarWinds, dall'infezione del malware al comando e controllo e alle azioni dell'aggressore

Perché la sicurezza tradizionale ha mancato l'obiettivo

  • Le firme digitali non sono sufficienti: La DLL era firmata, quindi gli strumenti AV e endpoint la consideravano legittima.
  • L'analisi statica è fallita: L'offuscamento e le stringhe criptate hanno camuffato la logica sospetta.
  • I controlli di runtime eludevano il rilevamento: Grazie alla sua furtività, la backdoor non ha innescato anomalie fino a quando non sono state soddisfatte condizioni molto specifiche.
  • Punto cieco della catena di approvvigionamento: I team che si occupano di sicurezza spesso si fidano degli aggiornamenti software senza farli esplodere in una sandbox.

Non si trattava di un semplice malware, ma di una compromissione della catena di approvvigionamento progettata per essere invisibile.

Come MetaDefender avrebbe potuto rilevarlo

A differenza delle sandbox basate su macchine virtuali, che sono facili da eludere, MetaDefender utilizza l'emulazione a livello di istruzione e l'analisi adattiva delle minacce. Ciò gli consente di individuare comportamenti nascosti anche quando gli aggressori cercano di mascherarli.

Una sandbox svolge un ruolo fondamentale per scoprire questo tipo di attacco. Anche se la DLL dannosa è firmata digitalmente e realizzata con cura per simulare un comportamento legittimo, una sandbox può rilevare la backdoor inserita analizzando le anomalie a livello binario.

Le regole YARA e i controlli di reputazione sono stati intenzionalmente disattivati per questa scansione sandbox per simulare le condizioni originali dell'attacco SolarWinds, poiché all'epoca non erano disponibili.

A sinistra, vediamo il file legittimo SolarWinds.Orion.Core.BusinessLayer.dll. A destra, la versione troianizzata responsabile del famigerato incidente di SolarWinds.

Esaminiamo i risultati principali emersi dall'analisi della sandbox:

  • Crittografia delle stringhe: il codice impiega una tipica tecnica di offuscamento presente in vari malware: la compressione seguita dalla codifica base64.
Interfaccia utente MetaDefender che mostra il rilevamento di stringhe dannose collegate alla prevenzione degli attacchi alla catena di approvvigionamento di SolarWinds

Le query WMI sono comunemente associate al fingerprinting del sistema. In questo caso, le relative stringhe sono state crittografate per evitare il rilevamento.

Interfaccia utente MetaDefender che mostra il rilevamento di elementi dannosi collegati alla prevenzione dell'attacco alla catena di approvvigionamento di SolarWinds

Molteplici indicatori legati all'escalation dei privilegi, allo spoofing dell'identità dell'utente e alla manomissione del controllo degli accessi.

Avviso MetaDefender relativo a un file PE .NET che esegue operazioni con privilegi elevati, rilevante ai fini della prevenzione degli attacchi alla catena di approvvigionamento di SolarWinds
.NET PE presenta prove significative di operazioni ad alto privilegio ed elude le restrizioni di accesso.
.NET PE Importa funzioni non gestite per modificare i privilegi dei processi
L'interfaccia utente MetaDefender segnala attività potenzialmente dannose nell'ambito dell'analisi volta a prevenire attacchi alla catena di approvvigionamento di SolarWinds
Trovati riferimenti a privilegi critici di Windows
Interfaccia utente MetaDefender che mostra un verdetto di sospetto per un file, in relazione alla prevenzione degli attacchi alla catena di approvvigionamento di SolarWinds
.NET PE usa i riferimenti ai membri per l'enumerazione o lo spoofing dei contesti utente di Windows
MetaDefender segnala un file PE .NET sospetto, dimostrando la capacità di prevenzione e rilevamento degli attacchi alla catena di approvvigionamento di SolarWinds
.NET PE utilizza i riferimenti ai membri per la modifica delle ACL

È presente un array statico di byte di grandi dimensioni (1096 byte), comunemente utilizzato per incorporare o mettere in scena un payload nascosto. In questo caso, memorizza valori interi che rappresentano hash di nomi di processi, probabilmente per la ricognizione o il filtraggio. Poiché Sandbox ha segnalato questa anomalia, gli analisti sarebbero stati in grado di indagare ulteriormente.

MetaDefender UI segnala il file come potenzialmente dannoso, mostrando il rilevamento tramite array statico per la prevenzione degli attacchi alla catena di approvvigionamento di SolarWinds
.NET PE contiene un grande array statico

In sintesi, una classe con 4.000 righe di codice può sembrare grande, ma in un grande progetto software con migliaia di file è davvero facile sbagliare. È qui che la sandbox si rivela preziosa. Evidenzia i comportamenti strani e dice agli analisti dove guardare, ciò che conta davvero.

In che modo unaSandbox Adaptive con Threat Intelligence avrebbe fermato l'attacco?

1. Analisi della struttura profonda (DSA)

Prima dell'esecuzione, Sandbox disassembla i binari per estrarre la logica incorporata. Nel caso di SolarWinds, avrebbe segnalato:

  • L'array statico grande da 1096 byte utilizzato per lo stage degli hash dei processi.
  • Stringhe compresse + codificate in base64 tipiche del malware.
  • L'insolita classe OrionImprovementBusinessLayer e le sue funzioni offuscate.

2. Motore anti-evasione di nuova generazione

MetaDefender 2.4.0 affronta in modo specifico le tattiche utilizzate nell'attacco SolarWinds:

  • Esporre i payload di sola memoria → Rileva il codice che non scrive mai su disco.
  • Deobfuscazione del flusso di controllo per .NET → Perfetto per decomprimere le DLL offuscate come Orion.
  • Decodifica Base64 automatica → Smaschera le stringhe crittografate utilizzate dagli aggressori.

3. Arricchimento dell Threat Intelligence

Il rilevamento non si limita alla sandbox. MetaDefender si integra con MetaDefender Threat Intelligence, fornendo:

  • 50B+ IOC (IP, URL, domini, hash) per l'arricchimento.
  • Ricerca per similarità per rilevare varianti di malware noti, anche se modificati.
  • Threat Scoring per dare priorità a questa DLL come ad alta gravità.

I vantaggi di MetaDefender 2.4.0

L'ultima versione aggiunge funzionalità che si rifanno direttamente alle minacce di SolarWinds:

  • Esposizione del payload solo in memoria → Avrebbe rivelato l'esecuzione furtiva in memoria di SolarWinds.
  • Disimballaggio del malware impacchettato → Identifica i payload nascosti all'interno di array statici.
  • Binari pseudo-ricostruiti → Permette agli analisti di vedere un quadro completo delle DLL offuscate.
  • Estrazione YARA e configurazione migliorata → Estrae le configurazioni del malware nonostante la crittografia.
  • Disimballaggio del caricatore .NET → Direttamente pertinente alla logica .NET offuscata della DLL Orion.

Mentre iniziavamo a scrivere questo articolo, è stata resa pubblica una nuova campagna contro la catena di fornitura dell'ecosistema npm (npm è un gestore di pacchetti JavaScript incluso in Node.js, che consente l'esecuzione di JavaScript al di fuori del browser). Questa recente campagna ha coinvolto un worm autoreplicante chiamato "Shai-Hulud", che è riuscito a compromettere centinaia di pacchetti software. Questo incidente è stato analizzato in dettaglio nella pubblicazione di OPSWAT "From Dune to npm: Shai-Hulud Worm Redefines Supply Chain Risk".

Tuttavia, questa nuova campagna è particolarmente rilevante nel contesto del presente articolo, poiché dimostra anche che le capacità di rilevamento MetaDefender sono aggiornate ed efficaci contro le violazioni della catena di approvvigionamento. Si veda il nostro rapporto sul file dannoso bundle.js, che rileva il download di librerie tramite codice offuscato, classificando tale attività come «Probabilmente dannosa».

Interfaccia utente MetaDefender che mostra gli indicatori di minaccia e il verdetto per la prevenzione degli attacchi alla catena di approvvigionamento di SolarWinds
.NET PE contiene un grande array statico

Seguendo le migliori pratiche descritte nel post sopra citato, tutte le dipendenze open source dovrebbero essere considerate inaffidabili fino a quando la loro sicurezza non sia stata dimostrata. Se gli aggiornamenti dei pacchetti npm interessati fossero stati analizzati in anticipo in MetaDefender , i comportamenti dannosi e sospetti sarebbero stati individuati prima che si diffondessero.

Nel loro insieme, queste caratteristiche dimostrano come MetaDefender sia stato progettato appositamente per garantire quel livello di occultamento e offuscamento su cui hanno fatto affidamento gli autori degli attacchi a SolarWinds e NPM.

Esempio di caso: Come sarebbe stato il rapporto Sandbox

1. Risultati statici

a. Nome di classe offuscato sospetto (OrionImprovementBusinessLayer).

b. Grandi array statici collegati a valori hash.

c. Stringhe Base64 crittografate.

2. Risultati dinamici

a. Interrogazione del sistema WMI.

b. Tentativi di escalation dei privilegi.

c. Creazione di thread nascosti al di fuori del flusso di lavoro principale di Orion.

3. Correlazione Threat Intelligence

a. La ricerca di somiglianza mostra una corrispondenza >95% con i campioni APT noti.

b. La correlazione IOC identifica le sovrapposizioni dell'infrastruttura C2.

c. Il punteggio delle minacce classifica la DLL come "dannosa ad alta confidenza".

Lezioni per i difensori: SolarWinds e oltre

La violazione di SolarWinds è stata un campanello d'allarme, ma gli attacchi alla supply chain continuano ad aumentare. Secondo il 2025 Threat Landscape Report di OPSWAT , le infrastrutture critiche rimangono un obiettivo primario e i caricatori basati su file e offuscati sono sempre più comuni.

MetaDefender offre agli addetti alla sicurezza:

Resilienza zero-day

Rilevamento comportamentale che non si basa su conoscenze pregresse.

Protezione Supply Chain

Ogni aggiornamento, patch o file consegnato dal fornitore può essere fatto esplodere.

Garanzia di conformità

Soddisfa i requisiti di rilevamento zero-day NIST, NIS2, HIPAA e NERC CIP.

Informazioni utili

IOC ad alta fedeltà inseriti direttamente nelle pipeline SIEM e SOAR.

Creare una difesa pronta per il giorno zero

L'attacco alla catena di approvvigionamento di SolarWinds non era inevitabile: semplicemente non era stato individuato. Se fosse stato in funzione MetaDefender , la DLL offuscata sarebbe stata neutralizzata, decodificata e segnalata molto prima che raggiungesse gli ambienti di produzione.

Oggi che gli aggressori hanno affinato le loro tattiche di evasione, il sandboxing basato sull'emulazione non è più facoltativo. È la base di qualsiasi strategia di difesa zero-day seria.

Grazie a MetaDefender 2.4.0 e a OPSWAT Threat Intelligence, le organizzazioni possono passare dal reagire alle violazioni al neutralizzarle in modo proattivo, prima ancora che si verifichino.

Scopri di più su MetaDefender .

Esplora OPSWAT Threat Intelligence

Contattate OPSWAT per rendere la vostra organizzazione pronta per lo Zero-Day.

Esplora OPSWAT Threat Intelligence

Contattate OPSWAT per rendere la vostra organizzazione pronta per lo Zero-Day.

Rimanete aggiornati con OPSWAT!

Iscriviti oggi stesso per ricevere gli ultimi aggiornamenti sull'azienda, storie, informazioni sugli eventi e altro ancora.