I ricercatori ESET forniscono un'analisi di un attacco effettuato da un attore di minacce allineato alla Cina precedentemente non divulgato che abbiamo chiamato Blackwood e che riteniamo sia operativo almeno dal 2018. Gli aggressori forniscono un sofisticato impianto, che abbiamo chiamato NSPX30, attraverso l'avversario Attacchi -in-the-middle (AitM) che dirottano le richieste di aggiornamento da software legittimo.
Punti chiave in questo post sul blog:
- Abbiamo scoperto che l'impianto NSPX30 veniva distribuito tramite i meccanismi di aggiornamento di software legittimi come Tencent QQ, WPS Office e Sogou Pinyin.
- Abbiamo rilevato l'impianto in attacchi mirati contro aziende cinesi e giapponesi, nonché contro individui situati in Cina, Giappone e Regno Unito.
- La nostra ricerca ha tracciato l'evoluzione di NSPX30 fino a una piccola backdoor del 2005 che abbiamo chiamato Project Wood, progettata per raccogliere dati dalle sue vittime.
- NSPX30 è un impianto multistadio che include diversi componenti come un contagocce, un programma di installazione, caricatori, un orchestratore e una backdoor. Entrambi gli ultimi due hanno i propri set di plugin.
- L'impianto è stato progettato in base alla capacità degli aggressori di intercettare i pacchetti, consentendo agli operatori NSPX30 di nascondere la propria infrastruttura.
- NSPX30 è anche in grado di inserirsi nella lista consentita in diverse soluzioni antimalware cinesi.
- Attribuiamo questa attività ad un nuovo gruppo APT che abbiamo chiamato Blackwood.
Profilo di Blackwood
Blackwood è un gruppo APT allineato alla Cina attivo almeno dal 2018, impegnato in operazioni di cyberspionaggio contro individui e aziende cinesi e giapponesi. Blackwood ha la capacità di condurre attacchi avversari nel mezzo per fornire l'impianto che abbiamo chiamato NSPX30 attraverso aggiornamenti di software legittimo e di nascondere la posizione dei suoi server di comando e controllo intercettando il traffico generato dall'impianto.
Panoramica della campagna
Nel 2020 è stata rilevata un’ondata di attività dannose su un sistema preso di mira situato in Cina. La macchina è diventata ciò che comunemente chiamiamo "magnete delle minacce", poiché abbiamo rilevato tentativi da parte di aggressori di utilizzare toolkit malware associati a diversi gruppi APT: Panda evasivo, LuoYue un terzo attore di minacce che tracciamo come LittleBear.
Su quel sistema abbiamo rilevato anche file sospetti che non appartenevano ai toolkit di questi tre gruppi. Ciò ci ha portato ad avviare un'indagine su un impianto che abbiamo denominato NSPX30; siamo stati in grado di tracciare la sua evoluzione fino al 2005.
Secondo la telemetria ESET, l'impianto è stato rilevato su un numero limitato di sistemi. Le vittime includono:
- individui non identificati situati in Cina e Giappone,
- un individuo di lingua cinese non identificato collegato alla rete di un'università pubblica di ricerca di alto profilo nel Regno Unito,
- una grande azienda manifatturiera e commerciale in Cina, e
- l'ufficio in Cina di una società giapponese nel settore verticale dell'ingegneria e della produzione.
Abbiamo anche osservato che gli aggressori tentano di compromettere nuovamente i sistemi in caso di perdita dell'accesso.
La Figura 1 è una distribuzione geografica degli obiettivi di Blackwood, secondo la telemetria ESET.
Evoluzione dell'NSPX30
Durante la nostra ricerca sull'impianto NSPX30, abbiamo mappato la sua evoluzione fino a un antenato precoce: una semplice backdoor che abbiamo chiamato Project Wood. Il campione più vecchio di Project Wood che siamo riusciti a trovare è stato compilato nel 2005 e sembra che sia stato utilizzato come base di codice per creare diversi impianti. Uno di questi impianti, da cui si è evoluto NSPX30, è stato chiamato DCM dai suoi autori nel 2008.
La Figura 2 illustra una sequenza temporale di questi sviluppi, basata sull'analisi dei campioni nella nostra raccolta e sulla telemetria ESET, nonché sulla documentazione pubblica. Tuttavia, gli eventi e i dati qui documentati rappresentano ancora un quadro incompleto di quasi due decenni di sviluppo e attività dannose da parte di un numero imprecisato di autori di minacce.
Nelle sezioni seguenti descriviamo alcuni dei nostri risultati relativi a Project Wood, DCM e NSPX30.
Progetto Legno
Il punto di partenza nell’evoluzione di questi impianti è una piccola backdoor compilata il 9 gennaioth, 2005, secondo i timestamp presenti nell'intestazione PE dei suoi due componenti: il caricatore e la backdoor. Quest'ultimo ha la capacità di raccogliere informazioni sul sistema e sulla rete, nonché di registrare le sequenze di tasti e acquisire schermate.
Abbiamo chiamato la backdoor Project Wood, in base a un nome mutex ricorrente, come mostrato nella Figura 3.
I timestamp di compilazione sono indicatori inaffidabili, poiché possono essere manomessi dagli aggressori; pertanto, in questo caso specifico, abbiamo considerato dati aggiuntivi. Innanzitutto, i timestamp dell'intestazione PE del caricatore e dei campioni backdoor; vedere la tabella 1. C'è solo una differenza di 17 secondi nel tempo di compilazione di entrambi i componenti.
Tabella 1. Timestamp della compilazione PE nei componenti del campione del 2005
SHA-1 |
Nome del file |
Timestamp di compilazione PE |
Descrizione |
9A1B575BCA0DC969B134 |
MainFuncOften.dll |
2005-01-09 08:21:22 |
Progetto Porta sul retro in legno. Il timestamp della tabella di esportazione corrisponde al timestamp della compilazione PE. |
834EAB42383E171DD6A4 |
N/A |
2005-01-09 08:21:39 |
Il caricatore di Project Wood contiene la backdoor incorporata come risorsa. |
Il secondo punto dati proviene dal campione contagocce che è stato compresso utilizzando UPX. Questo strumento inserisce la sua versione (Figura 4) nel file compresso risultante, in questo caso la versione 1.24 di UPX, che era rilasciato in 2003, prima della data di compilazione del campione.
Il terzo punto dati sono i metadati validi dei PE Rich Headers (Figura 5) che indicano che l'esempio è stato compilato utilizzando Visual Studio 6.0, rilasciato in 1998, prima della data di compilazione del campione.
Riteniamo improbabile che i timestamp, i metadati Rich Headers e la versione UPX siano stati tutti manipolati dagli aggressori.
Documentazione pubblica
Secondo un carta tecnica pubblicato dal SANS Institute nel settembre 2011, una backdoor senza nome e non attribuita (Project Wood) è stata utilizzata per prendere di mira una figura politica di Hong Kong tramite e-mail di spearphishing.
Nell'ottobre 2014 G DATA ha pubblicato a rapporto di una campagna chiamata Operazione TooHash, che da allora è stata attribuita a gelsemium Gruppo APT. Il rootkit G DATA denominato DirectsX carica una variante della backdoor Project Wood (vedere Figura 6) con alcune funzionalità viste in DCM e successivamente in NSPX30, come l'inserimento nella lista consentita nei prodotti di sicurezza informatica (dettagliati più avanti, nella Tabella 4).
DCM ovvero Spettro Oscuro
Il primo Project Wood è servito come base di codice per diversi progetti; uno di questi è un impianto chiamato DCM (vedi Figura 7) dai suoi autori.
Il rapporto di Tencent del 2016 descrive una variante DCM più sviluppata che si affida alle capacità AitM degli aggressori per compromettere le sue vittime fornendo il programma di installazione DCM come aggiornamento software e per esfiltrare i dati tramite richieste DNS verso server legittimi. L’ultima volta che abbiamo osservato l’utilizzo di DCM in un attacco è stato nel 2018.
Documentazione pubblica
Il DCM è stato documentato per la prima volta dalla società cinese Jiangmin nel 2012, anche se a quel punto rimase senza nome, e in seguito fu chiamato Dark Spectre da Tencent nel 2016.
NSPX30
Il campione più vecchio di NSPX30 che abbiamo trovato è stato compilato il 6 giugnoth, 2018. NSPX30 ha una configurazione dei componenti diversa rispetto a DCM perché il suo funzionamento è stato diviso in due fasi, basandosi completamente sulla capacità AitM dell'aggressore. Il codice di DCM è stato suddiviso in componenti più piccoli.
Abbiamo chiamato l'impianto in base ai percorsi PDB trovati negli esempi di plug-in:
- Z:Area di lavoromm32NSPX30Pluginspluginb001.pdb
- Z:WorkspaceCodeMMX30ProtrunkMMPluginshookdllReleasehookdll.pdb
Riteniamo che NSP si riferisca alla sua tecnica di persistenza: la DLL del caricatore persistente, che sul disco prende il nome msnsp.dll, è denominato internamente mynsp.dll (secondo i dati della tabella Export), probabilmente perché è installato come Winsock namesritmo pfornitore (NSP).
Infine, per quanto ne sappiamo, NSPX30 non è stato documentato pubblicamente prima di questa pubblicazione.
Analisi tecnica
Utilizzando la telemetria ESET, abbiamo determinato che le macchine vengono compromesse quando software legittimo tenta di scaricare aggiornamenti da server legittimi utilizzando il protocollo HTTP (non crittografato). Gli aggiornamenti software compromessi includono quelli per popolari software cinesi come Tencent QQ, Sogou Pinyin e WPS Office.
Nella Figura 8 è mostrata un'illustrazione della catena di esecuzione vista nella telemetria ESET.
Nella Tabella 2 forniamo un esempio di URL e indirizzo IP in cui è stato risolto il dominio sul sistema dell'utente al momento del download.
Tabella 2. URL osservato, indirizzo IP del server e nome del processo di un componente downloader legittimo
URL |
Visto per la prima volta |
Indirizzo IP |
ASN |
Downloader |
http://dl_dir.qq[.]com/ |
2021-10-17 |
183.134.93[.]171 |
AS58461 (CINANET) |
Tencentdl.exe |
Secondo la telemetria ESET e le informazioni DNS passive, gli indirizzi IP osservati in altri casi sono associati a domini di società di software legittime; abbiamo registrato fino a milioni di connessioni su alcuni di essi e abbiamo visto componenti software legittimi scaricati da tali indirizzi IP.
Ipotesi di impianto di rete
Non sappiamo ancora come esattamente gli aggressori siano in grado di fornire NSPX30 come aggiornamenti dannosi, poiché dobbiamo ancora scoprire lo strumento che consente agli aggressori di compromettere inizialmente i loro obiettivi.
Sulla base della nostra esperienza con gli autori di minacce allineati alla Cina che presentano queste capacità (Panda evasivo ed I Maghi), nonché recenti ricerche sugli impianti di router attribuiti a BlackTech ed Drago Camaro (Aka Panda Mustang), ipotizziamo che gli aggressori stiano installando un impianto di rete nelle reti delle vittime, possibilmente su dispositivi di rete vulnerabili come router o gateway.
Il fatto che non abbiamo trovato indicazioni di reindirizzamento del traffico tramite DNS potrebbe indicare che quando l'impianto di rete ipotizzato intercetta traffico HTTP non crittografato relativo agli aggiornamenti, risponde con il dropper dell'impianto NSPX30 sotto forma di DLL, file eseguibile o archivio ZIP contenente la DLL.
In precedenza, abbiamo menzionato che l’impianto NSPX30 utilizza la capacità di intercettazione dei pacchetti degli aggressori per rendere anonima la propria infrastruttura C&C. Nelle seguenti sottosezioni descriveremo come lo fanno.
Intercettazione HTTP
Per scaricare la backdoor, l'orchestratore esegue una richiesta HTTP (Figura 9) al sito web di Baidu – un legittimo motore di ricerca cinese e fornitore di software – con una peculiare User-Agent mascherato da Internet Explorer su Windows 98. La risposta dal server viene salvata in un file da cui il componente backdoor viene estratto e caricato in memoria.
I Richiesta-URI è personalizzato e include informazioni provenienti dall'agente di orchestrazione e dal sistema compromesso. Nelle richieste non intercettate, l'invio di tale richiesta al server legittimo restituisce un codice di errore 404. Una procedura simile viene utilizzata dalla backdoor per scaricare i plugin, utilizzando una procedura leggermente diversa Richiesta-URI.
L'impianto di rete dovrebbe semplicemente cercare le richieste HTTP GET www.baidu.com con quel particolare vecchio User-Agent e analizzare il Richiesta-URI per determinare quale carico utile deve essere inviato.
Intercettazione UDP
Durante la sua inizializzazione, la backdoor crea un socket di ascolto UDP passivo e lascia che il sistema operativo assegni la porta. Possono verificarsi complicazioni per gli aggressori che utilizzano backdoor passive: ad esempio, se firewall o router che utilizzano NAT impediscono la comunicazione in entrata dall'esterno della rete. Inoltre, il controller dell'impianto deve conoscere l'esatto indirizzo IP e la porta della macchina compromessa per contattare la backdoor.
Riteniamo che gli aggressori abbiano risolto quest'ultimo problema utilizzando la stessa porta su cui la backdoor ascolta i comandi per esfiltrare anche i dati raccolti, in modo che l'impianto di rete sappia esattamente dove inoltrare i pacchetti. La procedura di esfiltrazione dei dati, per impostazione predefinita, inizia dopo la creazione del socket ed è composta da query DNS per il file microsoft.com dominio; i dati raccolti vengono allegati al pacchetto DNS. La Figura 10 mostra un'acquisizione della prima query DNS inviata dalla backdoor.
Viene inviata la prima query DNS 180.76.76[.]11:53 (un server che, al momento in cui scrivo, non espone alcun servizio DNS) e per ciascuna delle seguenti query, l'indirizzo IP di destinazione viene modificato nell'indirizzo successivo, come mostrato nella Figura 11.
I 180.76.76.0/24 è di proprietà di Baidu e, cosa interessante, alcuni server su questi indirizzi IP espongono servizi DNS, come ad esempio 180.76.76.76, che è di Baidu servizio DNS pubblico.
Riteniamo che quando i pacchetti di query DNS vengono intercettati, l'impianto di rete li inoltra al server degli aggressori. L'impianto può facilmente filtrare i pacchetti combinando diversi valori per creare un'impronta digitale, ad esempio:
- indirizzo IP di destinazione
- Porta UDP (abbiamo osservato 53, 4499e 8000),
- ID transazione della corrispondenza della query DNS 0xFEAD,
- nome di dominio e,
- Query DNS con dati estranei aggiunti.
Conclusioni
Utilizzare la capacità AitM degli aggressori per intercettare i pacchetti è un modo intelligente per nascondere la posizione della loro infrastruttura C&C. Abbiamo osservato vittime situate al di fuori della Cina – cioè in Giappone e nel Regno Unito – contro le quali l’orchestratore è riuscito a utilizzare la backdoor. Gli aggressori hanno quindi inviato comandi alla backdoor per scaricare i plugin; ad esempio, la vittima del Regno Unito ha ricevuto due plugin progettati per raccogliere informazioni e chat da Tencent QQ. Pertanto, sappiamo che il sistema AitM era in atto e funzionava, e dobbiamo supporre che lo fosse anche il meccanismo di esfiltrazione.
Alcuni server, ad esempio in 180.76.76.0/24 rete - sembra essere anycasted, il che significa che potrebbero esserci più server geolocalizzati in tutto il mondo per rispondere alle richieste (legittime) in arrivo. Ciò suggerisce che l’intercettazione della rete viene probabilmente eseguita più vicino agli obiettivi piuttosto che più vicino alla rete di Baidu. Anche l’intercettazione da parte di un ISP cinese è improbabile perché Baidu ha parte della sua infrastruttura di rete al di fuori della Cina, quindi le vittime al di fuori della Cina potrebbero non passare attraverso alcun ISP cinese per raggiungere i servizi Baidu.
NSPX30
Nelle sezioni seguenti descriveremo le principali fasi di esecuzione del malware.
Stage 1
La Figura 12 illustra la catena di esecuzione quando il componente legittimo carica una DLL dropper dannosa che crea diversi file su disco.
Il contagocce viene eseguito RsStub.exe, un componente software legittimo del prodotto antimalware cinese Rising Antivirus, di cui si abusa per trasferire lateralmente i malware dannosi comx3.dll.
La Figura 13 illustra le principali fasi adottate durante l'esecuzione di questo componente.
Quando RsStub.exe chiamate ExitProcess, viene eseguita la funzione di caricamento dello shellcode anziché il codice della funzione API legittima.
Il caricatore decodifica la DLL del programma di installazione dal file comx3.dll.txt; lo shellcode carica quindi la DLL del programma di installazione in memoria e chiama il suo punto di ingresso.
DLL di installazione
Il programma di installazione utilizza tecniche di bypass dell'UAC tratte da implementazioni open source per creare un nuovo processo con privilegi elevati. Quello utilizzato dipende da diverse condizioni, come mostrato nella Tabella 3.
Tabella 3. Condizione principale e rispettive sottocondizioni che devono essere soddisfatte per applicare una tecnica di bypass UAC
Le condizioni verificano la presenza di due processi: noi lo crediamo avp.exe è un componente del software antimalware di Kaspersky e rstray.exe un componente di Rising Antivirus.
Il programma di installazione tenta di disabilitare l'invio di esempi da parte di Windows Defender e aggiunge una regola di esclusione per la DLL del caricatore msnsp.dll. Lo fa eseguendo due comandi PowerShell tramite cmd.exe:
- cmd /c powershell -inputformat none -outputformat none -NonInteractive -Command Set-MpPreference -SubmitSamplesConsent 0
- cmd /c powershell -inputformat none -outputformat none -NonInteractive -Command Add-MpPreference -ExclusionPath "C:Programmi (x86)File comunimicrosoft sharedTextConvmsnsp.dll"
Il programma di installazione rilascia quindi la DLL del caricatore persistente in C:Programmi (x86)File comunimicrosoft sharedTextConvmsnsp.dll e ne stabilisce la persistenza utilizzando l'API WSCInstallNameSpazio per installare la DLL come a Provider dello spazio dei nomi Winsock detto msnsp, come mostrato nella Figura 14.
Di conseguenza, la DLL verrà caricata automaticamente ogni volta che un processo utilizza Winsock.
Infine, il programma di installazione rilascia la DLL del caricatore mshlp.dll e la DLL dell'agente di orchestrazione crittografata WIN.cfg a C:ProgramDataWindows.
Stage 2
Questa fase inizia con l'esecuzione di msnsp.dll. La Figura 15 illustra la catena di carico nella Fase 2.
Orchestrator
La Figura 16 illustra le principali attività svolte dall'orchestratore, tra cui l'ottenimento della backdoor e il caricamento dei plug-in.
Una volta caricato, l'agente di orchestrazione crea due thread per eseguire le proprie attività.
Discussione dell'orchestratore 1
L'orchestratore elimina il file dropper originale dal disco e tenta di caricare la backdoor msfmtkl.dat. Se il file non esiste o non si apre, l'orchestratore utilizza le API Internet di Windows per aprire una connessione al sito Web legittimo dell'azienda cinese Baidu come spiegato in precedenza.
La risposta del server viene salvata in un file temporaneo soggetto ad una procedura di validazione; se tutte le condizioni sono soddisfatte, il payload crittografato che si trova all'interno del file viene scritto in un nuovo file e rinominato come msfmtkl.dat.
Dopo aver creato il nuovo file con il payload crittografato, l'orchestratore ne legge il contenuto e decrittografa il payload utilizzando RC4. Il PE risultante viene caricato in memoria e il suo punto di ingresso viene eseguito.
Discussione dell'orchestratore 2
A seconda del nome del processo corrente, l'orchestratore esegue diverse azioni, incluso il caricamento di plugin e l'aggiunta di esclusioni per consentire l'inserimento delle DLL di caricamento nei database locali di tre prodotti software antimalware di origine cinese.
La tabella 4 descrive le azioni intraprese quando il nome del processo corrisponde a quello di una suite di software di sicurezza in cui l'orchestratore può consentire i propri caricatori.
Tabella 4. Azioni dell'orchestrator durante l'esecuzione in un processo con il nome di un software di sicurezza specifico
Nome del processo |
Software mirato |
Action |
qqpcmgr.exe qqpctray.exe qqpcrtp.exe |
Tenta di caricare la DLL legittima TAVinterface.dll per utilizzare la funzione esportata CreaTaveInstance per ottenere un'interfaccia Quando si chiama una seconda funzione dall'interfaccia, passa un percorso di file come parametro. |
|
360safe.exe 360tray.exe |
Tenta di caricare la DLL legittima deepscancloudcom2.dll per utilizzare le funzioni esportate XDOpen, XDAdRecordsExe XDChiudi, aggiunge una nuova voce nel file di database SQL speedmem2.hg. |
|
360sd.exe |
Tenta di aprire il file sl2.db per aggiunge una struttura binaria con codifica base64 che contiene il percorso della DLL del caricatore. |
|
kxescore.exe kxetray.exe |
Tenta di caricare la DLL legittima securitykxescankhistory.dll per utilizzare la funzione esportata KSDllGetClassObject per ottenere un'interfaccia Quando chiama una delle funzioni da vtable, passa un percorso di file come parametro. |
La Tabella 5 descrive le azioni intraprese quando il nome del processo corrisponde a quello del software di messaggistica istantanea selezionato. In questi casi, l'orchestratore carica i plug-in dal disco.
Tabella 5. Azioni dell'Ochestrator durante l'esecuzione in un processo con il nome di uno specifico software di messaggistica istantanea
Nome del processo |
Software mirato |
Action |
qq.exe |
Tenta di creare un mutex denominato OTTIENI IL BLOCCO MESSAGGIO QQ. Se il mutex non esiste già, carica i plugin c001.dat, c002.date c003.dat dal disco. |
|
wechat.exe |
Carica il plugin c006.dat. |
|
telegramma.exe |
Carica il plugin c007.dat. |
|
skype.exe |
Carica il plugin c003.dat. |
|
cc.exe |
Sconosciuto; possibilmente CloudChat. |
|
raidcall.exe |
||
aa.exe |
Sconosciuto; possibilmente una domanda da Social network YY. |
|
aliim.exe |
Carica il plugin c005.dat. |
Dopo aver completato le azioni corrispondenti, il thread ritorna.
Gruppo di plugin “c”
Dalla nostra analisi del codice dell'orchestratore comprendiamo che potrebbero esistere almeno sei plugin del gruppo “c”, di cui al momento ne conosciamo solo tre.
La tabella 6 descrive le funzionalità di base dei plugin identificati.
Tabella 6. Descrizione dei plugin del gruppo “c”
Nome del plugin |
Descrizione |
c001.dat |
Ruba informazioni dai database QQ, incluse credenziali, registri di chat, elenchi di contatti e altro ancora. |
c002.dat |
Aggancia diverse funzioni da Tencent QQ KernelUtil.dll ed Common.dll nella memoria del QQ.exe processo, consentendo l'intercettazione di messaggi diretti e di gruppo e query SQL sui database. |
c003.dat |
Collega diverse API: - CoCreateInstance - waveInOpen - waveInClose - waveInAddBuffer - waveOutOpen - waveOutWrite - waveOutClose Ciò consente al plug-in di intercettare conversazioni audio in diversi processi. |
Porta posteriore
Abbiamo già condiviso diversi dettagli sullo scopo fondamentale della backdoor: comunicare con il suo responsabile ed esfiltrare i dati raccolti. La comunicazione con il controller si basa principalmente sulla scrittura dei dati di configurazione del plug-in in un file non crittografato denominato licenza.date richiamare funzionalità dai plugin caricati. La tabella 7 descrive i comandi più rilevanti gestiti dalla backdoor.
Tabella 7. Descrizione di alcuni comandi gestiti dalla backdoor
ID comando |
Descrizione |
0x04 |
Crea o chiude una shell inversa e gestisce input e output. |
0x17 |
Sposta un file con i percorsi forniti dal controller. |
0x1C |
Disinstalla l'impianto. |
0x1E |
Raccoglie informazioni sui file da una directory specificata o raccoglie informazioni sull'unità. |
0x28 |
Termina un processo con un PID fornito dal controller. |
Gruppi di plugin “a” e “b”
Il componente backdoor contiene le proprie DLL plug-in incorporate (vedere Tabella 8) che vengono scritte su disco e forniscono alla backdoor le sue funzionalità di base di spionaggio e raccolta di informazioni.
Tabella 8. Descrizioni dei gruppi di plugin “a” e “b” incorporati nella backdoor
Nome del plugin |
Descrizione |
a010.dat |
Raccoglie le informazioni sul software installato dal registro. |
b010.dat |
Acquisisce screenshot. |
b011.dat |
Keylogger di base. |
Conclusione
Abbiamo analizzato gli attacchi e le capacità di un attore di minacce che abbiamo chiamato Blackwood, che ha effettuato operazioni di cyberspionaggio contro individui e aziende provenienti da Cina, Giappone e Regno Unito. Abbiamo mappato l'evoluzione di NSPX30, l'impianto personalizzato implementato da Blackwood, a partire dal 2005 fino a una piccola backdoor che abbiamo chiamato Project Wood.
È interessante notare che l'impianto Project Wood del 2005 sembra essere opera di sviluppatori con esperienza nello sviluppo di malware, viste le tecniche implementate, portandoci a credere che dobbiamo ancora scoprire di più sulla storia della backdoor primordiale.
Per qualsiasi domanda sulla nostra ricerca pubblicata su WeLiveSecurity, contattaci all'indirizzo threatintel@eset.com.
ESET Research offre report di intelligence APT privati e feed di dati. Per qualsiasi domanda su questo servizio, visitare il Intelligence sulle minacce ESET .
IOC
File
SHA-1 |
Nome del file |
Nome rilevamento ESET |
Descrizione |
625BEF5BD68F75624887D732538B7B01E3507234 |
minibrowser_shell.dll |
Win32/Agent.AFYI |
Contagocce iniziale NSPX30. |
43622B9573413E17985B3A95CBE18CFE01FADF42 |
comx3.dll |
Win32/Agent.AFYH |
Caricatore per l'installatore. |
240055AA125BD31BF5BA23D6C30133C5121147A5 |
msnsp.dll |
Win32/Agent.AFYH |
Caricatore persistente. |
308616371B9FF5830DFFC740318FD6BA4260D032 |
mshlp.dll |
Win32/Agent.AFYH |
Caricatore per l'orchestratore. |
796D05F299F11F1D78FBBB3F6E1F497BC3325164 |
comx3.dll.txt |
Win32/TrojanDropper.Agent.SWR |
Programma di installazione decrittografato. |
82295E138E89F37DD0E51B1723775CBE33D26475 |
WIN.cfg |
Win32/Agent.AFYI |
Orchestratore decifrato. |
44F50A81DEBF68F4183EAEBC08A2A4CD6033DD91 |
msfmtkl.dat |
Win32/Agent.VKT |
Backdoor decifrato. |
DB6AEC90367203CAAC9D9321FDE2A7F2FE2A0FB6 |
c001.dat |
Win32/Agent.AFYI |
Credenziali e plug-in per il furto di dati. |
9D74FE1862AABAE67F9F2127E32B6EFA1BC592E9 |
c002.dat |
Win32/Agent.AFYI |
Plug-in per l'intercettazione dei messaggi Tencent QQ. |
8296A8E41272767D80DF694152B9C26B607D26EE |
c003.dat |
Win32/Agent.AFYI |
Plug-in di acquisizione audio. |
8936BD9A615DD859E868448CABCD2C6A72888952 |
a010.dat |
Win32/Agent.VKT |
Plugin per la raccolta di informazioni. |
AF85D79BC16B691F842964938C9619FFD1810C30 |
b011.dat |
Win32/Agent.VKT |
Plug-in per il keylogger. |
ACD6CD486A260F84584C9FF7409331C65D4A2F4A |
b010.dat |
Win32/Agent.VKT |
Plug-in per la cattura dello schermo. |
Network NetPoulSafe
IP |
Dominio |
Provider di hosting |
Visto per la prima volta |
Dettagli |
104.193.88[.]123 |
www.baidu[.]com |
Pechino Baidu Netcom Scienza e Tecnologia Co., Ltd. |
2017-08-04 |
Sito Web legittimo contattato dall'orchestratore e componenti backdoor per scaricare i payload. La richiesta HTTP GET viene intercettata da AitM. |
183.134.93[.]171 |
dl_dir.qq[.]com |
IRT‑CHINANET‑ZJ |
2021-10-17 |
Parte dell'URL da cui è stato scaricato il dropper da un software legittimo. |
Tecniche MITRE ATT&CK
Questa tabella è stata creata utilizzando versione 14 del quadro MITRE ATT&CK.
tattica |
ID |
Nome |
Descrizione |
Sviluppo delle risorse |
Capacità di sviluppo: malware |
Blackwood ha utilizzato un impianto personalizzato chiamato NSPX30. |
|
Accesso iniziale |
Compromesso della catena di fornitura |
Il componente dropper di NSPX30 viene fornito quando richieste legittime di aggiornamento software vengono intercettate tramite AitM. |
|
|
Interprete di comandi e script: PowerShell |
Il componente di installazione di NSPX30 utilizza PowerShell per disabilitare l'invio di campioni di Windows Defender e aggiunge un'esclusione per un componente di caricamento. |
|
Interprete di comandi e script: Shell dei comandi di Windows |
Il programma di installazione di NSPX30 può utilizzare cmd.exe quando si tenta di bypassare l'UAC. La backdoor di NSPX30 può creare una shell inversa. |
||
Interprete di comandi e script: Visual Basic |
Il programma di installazione di NSPX30 può utilizzare VBScript quando tenta di ignorare l'UAC. |
||
API nativa |
Programma di installazione di NSPX30 e utilizzo della backdoor CreaProcessoA/W API per eseguire componenti. |
||
Persistenza |
Flusso di esecuzione dell'hijack |
Il caricatore di NSPX30 viene caricato automaticamente in un processo all'avvio di Winsock. |
|
Aumento dei privilegi |
Esecuzione attivata da eventi |
Il programma di installazione di NSPX30 modifica il registro per modificare il valore della chiave di un pulsante multimediale (APPCOMMAND_LAUNCH_APP2) per puntare al relativo eseguibile del caricatore. |
|
Meccanismo di controllo dell'elevazione abusiva: bypassare il controllo dell'account utente |
Il programma di installazione di NSPX30 utilizza tre tecniche per tentare di aggirare l'UAC. |
||
Evasione della difesa |
Deoffuscare/decodificare file o informazioni |
I file di installazione, orchestrazione, backdoor e configurazione di NSPX30 vengono decrittografati con RC4 o combinazioni di istruzioni bit a bit e aritmetiche. |
|
Impair difese: disabilita o modifica gli strumenti |
Il programma di installazione di NSPX30 disabilita l'invio di campioni di Windows Defender e aggiunge un'esclusione per un componente del caricatore. L'orchestratore di NSPX30 può alterare i database del software di sicurezza per consentire l'inserimento dei suoi componenti del caricatore. Il software mirato include: Tencent PC Manager, 360 Safeguard, 360 Antivirus e Kingsoft AntiVirus. |
||
Rimozione dell'indicatore: eliminazione dei file |
NSPX30 può rimuovere i suoi file. |
||
Rimozione dell'indicatore: chiara persistenza |
NSPX30 può rimuoverne la persistenza. |
||
Esecuzione di comandi indiretti |
Il programma di installazione di NSPX30 esegue PowerShell tramite la Command Shell di Windows. |
||
Mascheramento: corrisponde al nome o alla posizione legittimi |
I componenti di NSPX30 sono archiviati nella cartella legittima %DATI PROGRAMMA%Intel. |
||
Modifica il registro |
Il programma di installazione di NSPX30 può modificare il registro quando tenta di bypassare l'UAC. |
||
File o informazioni offuscati |
I componenti di NSPX30 vengono archiviati crittografati su disco. |
||
File o informazioni offuscati: payload incorporati |
Il contagocce di NSPX30 contiene componenti incorporati. Il caricatore di NSPX30 contiene shellcode incorporato. |
||
Esecuzione proxy binario di sistema: Rundll32 |
È possibile caricare il programma di installazione di NSPX30 rundll32.exe. |
||
Accesso alle credenziali |
Avversario nel mezzo |
L'impianto NSPX30 viene consegnato alle vittime tramite attacchi AitM. |
|
Credenziali dagli archivi di password |
Plug-in NSPX30 c001.dat può rubare credenziali dai database Tencent QQ. |
||
Ricerca e Sviluppo |
Scoperta di file e directory |
La backdoor e i plugin di NSPX30 possono elencare i file. |
|
Interrogare il Registro di sistema |
NSPX30 a010.dat plugin raccoglie varie informazioni sul software installato dal registro. |
||
Scoperta del software |
NSPX30 a010.dat il plugin raccoglie informazioni dal registro. |
||
Scoperta delle informazioni di sistema |
La backdoor di NSPX30 raccoglie informazioni di sistema. |
||
Scoperta della configurazione di rete del sistema |
La backdoor di NSPX30 raccoglie varie informazioni sulla scheda di rete. |
||
Scoperta delle connessioni di rete del sistema |
La backdoor di NSPX30 raccoglie informazioni sulla scheda di rete. |
||
Scoperta del proprietario/utente del sistema |
La backdoor di NSPX30 raccoglie informazioni sul sistema e sull'utente. |
||
Collezione |
Acquisizione input: registrazione chiavi |
Plug-in NSPX30 b011.dat è un keylogger di base. |
|
Archivia i dati raccolti: Archivia tramite la libreria |
I plugin NSPX30 comprimono le informazioni raccolte utilizzando zlib. |
||
Cattura audio |
Plug-in NSPX30 c003.dat registra flussi audio in ingresso e in uscita. |
||
Raccolta automatizzata |
L'orchestratore e la backdoor di NSPX30 avviano automaticamente i plugin per raccogliere informazioni. |
||
Gestione temporanea dei dati: gestione temporanea dei dati locali |
I plugin di NSPX30 memorizzano i dati in file locali prima dell'esfiltrazione. |
||
Screen Capture |
Plug-in NSPX30 b010.dat prende screenshot. |
||
Comando e controllo |
Protocollo del livello di applicazione: protocolli Web |
L'orchestrator e i componenti backdoor di NSPX30 scaricano i payload utilizzando HTTP. |
|
Protocollo a livello di applicazione: DNS |
La backdoor di NSPX30 esfiltra le informazioni raccolte utilizzando il DNS. |
||
Codifica dati: codifica standard |
I dati raccolti per l'esfiltrazione vengono compressi con zlib. |
||
Offuscamento dei dati |
La backdoor di NSPX30 crittografa le sue comunicazioni C&C. |
||
Protocollo di livello non applicativo |
La backdoor di NSPX30 utilizza UDP per le comunicazioni C&C. |
||
delega |
Le comunicazioni di NSPX30 con il suo server C&C vengono proxy da un componente non identificato. |
||
exfiltration |
Esfiltrazione automatizzata |
Quando disponibile, la backdoor di NSPX30 esfiltra automaticamente tutte le informazioni raccolte. |
|
Limiti delle dimensioni del trasferimento dati |
La backdoor di NSPX30 estrae i dati raccolti tramite query DNS con una dimensione del pacchetto fissa. |
||
Esfiltrazione su protocollo alternativo: Esfiltrazione su protocollo non crittografato non C2 |
La backdoor di NSPX30 esfiltra le informazioni raccolte utilizzando il DNS. |
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://www.welivesecurity.com/en/eset-research/nspx30-sophisticated-aitm-enabled-implant-evolving-since-2005/
- :ha
- :È
- :non
- :Dove
- $ SU
- 08
- 1
- 10
- 11
- 12
- 13
- 14
- 15%
- 16
- 17
- 179
- 180
- 19
- 2005
- 2008
- 2011
- 2014
- 2016
- 2018
- 2020
- 24
- 360
- 7
- 75
- 77
- 8
- 9
- 98
- a
- capace
- Chi siamo
- accesso
- Secondo
- Il mio account
- azioni
- attivo
- attività
- attori
- aggiunta
- aggiuntivo
- Inoltre
- indirizzo
- indirizzi
- Aggiunge
- Dopo shavasana, sedersi in silenzio; saluti;
- contro
- Agente
- aka
- Tutti
- lista consentita
- quasi
- già
- anche
- alternativa
- Sebbene il
- an
- .
- analizzare
- analizzato
- ed
- antivirus
- in qualsiasi
- api
- API
- appare
- elettrodomestici
- Applicazioni
- APPLICA
- APT
- Archivio
- SONO
- in giro
- AS
- valutare
- associato
- assumere
- At
- attacco
- attacchi
- tentativo
- il tentativo
- Tentativi
- Audio
- gli autori
- automaticamente
- disponibile
- precedente
- porta posteriore
- Backdoor
- Baidu
- basato
- basic
- BE
- perché
- diventare
- stato
- prima
- essendo
- CREDIAMO
- MIGLIORE
- bitwise
- entrambi
- costruito
- pulsante
- by
- aggirare
- detto
- chiamata
- Bandi
- Campagna
- Materiale
- funzionalità
- capacità
- capace
- catturare
- svolta
- Custodie
- casi
- catena
- il cambiamento
- cambiato
- chiacchierare
- Cina
- Cinese
- pulire campo
- più vicino
- Chiude
- CO
- codice
- codebase
- raccogliere
- collezione
- collettore
- COM
- combinazioni
- combinando
- viene
- comunemente
- comunicare
- Comunicazione
- Comunicazioni
- Aziende
- azienda
- compilato
- completando
- componente
- componenti
- compromesso
- Compromissione
- condizione
- condizioni
- Segui il codice di Condotta
- Configurazione
- collegato
- veloce
- Connessioni
- considerato
- consiste
- contatti
- contiene
- testuali
- di controllo
- controllore
- Conversazioni
- SOCIETÀ
- Corrispondente
- potuto
- creare
- creato
- crea
- Credenziali
- Corrente
- costume
- Cybersecurity
- Scuro
- dati
- punti dati
- Banca Dati
- banche dati
- Data
- DCM
- DCM
- decenni
- Predefinito
- consegnare
- consegnato
- consegna
- dipende
- schierare
- schierato
- distribuzione
- descrivere
- descrive
- descrizione
- progettato
- destinazione
- dettagliati
- dettagli
- rilevato
- rivelazione
- Determinare
- determinato
- sviluppato
- sviluppatori
- Mercato
- sviluppi
- DID
- differenza
- diverso
- dirette
- scopri
- scoperto
- distribuzione
- Diviso
- dns
- do
- documentazione
- effettua
- dominio
- domini
- scaricare
- Gocce
- durante
- ogni
- Presto
- facilmente
- elevata
- incorporato
- Abilita
- consentendo
- codifica
- crittografato
- impegnandosi
- motore
- Ingegneria
- iscrizione
- errore
- stabilisce
- eventi
- evoluzione
- si è evoluta
- evoluzione
- di preciso
- esempio
- eseguire
- eseguito
- esegue
- esecuzione
- esecuzione
- esfiltrazione
- mostra
- esistere
- esperienza
- ha spiegato
- esploratore
- export
- fatto
- fallisce
- Caratteristiche
- figura
- Compila il
- File
- filtro
- Trovare
- I risultati
- impronta
- firewall
- Nome
- fisso
- i seguenti
- Nel
- modulo
- Avanti
- essere trovato
- da
- completamente
- function
- funzionalità
- funzioni
- gateway
- generato
- geografico
- ottenere
- GitHub
- Dare
- dato
- Go
- Gruppo
- Gruppo
- ha avuto
- Maniglie
- Avere
- intestazioni
- qui
- nascondere
- alto profilo
- storia
- Hong
- 香港
- Come
- Tuttavia
- HTML
- http
- HTTPS
- ID
- identificato
- if
- illustra
- Immagine
- implementazioni
- implementato
- in
- includere
- inclusi
- Compreso
- In arrivo
- Aumenta
- indicare
- indicazioni
- individuale
- individui
- informazioni
- Infrastruttura
- inizialmente
- inizialmente
- avviato
- ingresso
- Richieste
- Inserti
- interno
- install
- installato
- esempio
- invece
- Istituto
- istruzioni
- Intelligence
- Interfaccia
- internamente
- Internet
- ai miglioramenti
- indagine
- IP
- Indirizzo IP
- Gli indirizzi IP
- ISP
- emittente
- IT
- SUO
- stessa
- Gennaio
- Giappone
- Giapponese
- giugno
- Le
- Regno
- Sapere
- conoscenze
- conosciuto
- Kong
- grandi
- Cognome
- dopo
- lanciare
- strato
- principale
- meno
- Guidato
- a sinistra
- legittimo
- Consente di
- probabile
- Lista
- Ascolto
- ascolta
- elenchi
- caricare
- caricatore
- Caricamento in corso
- carichi
- locale
- collocato
- località
- bloccare
- Guarda
- perso
- Ltd
- macchina
- macchine
- Principale
- maggiore
- maligno
- il malware
- direttore
- manipolata
- consigliato per la
- partita
- fiammiferi
- corrispondenza
- Maggio..
- significato
- meccanismo
- meccanismi di
- Media
- Memorie
- menzionato
- messaggio
- messaggi
- di cartone
- Metadati
- Microsoft
- forza
- milioni
- modificare
- Scopri di più
- maggior parte
- soprattutto
- multiplo
- devono obbligatoriamente:
- Nome
- Detto
- Bisogno
- esigenze
- Rete
- reti
- New
- no
- Nessuna
- Avviso..
- numero
- ottenere
- ottenendo
- si è verificato
- ottobre
- of
- Offerte
- Office
- Vecchio
- il più vecchio
- on
- ONE
- esclusivamente
- aprire
- open source
- operativo
- sistema operativo
- operazione
- Operazioni
- Operatori
- or
- minimo
- origine
- i
- Altro
- nostro
- su
- produzione
- al di fuori
- ancora
- proprio
- Di proprietà
- P&E
- pacchetti
- pagina
- parametro
- parte
- particolare
- Passi
- passivo
- Password
- sentiero
- percorsi
- PC
- particolare
- Eseguire
- eseguita
- esegue
- persistenza
- immagine
- posto
- Platone
- Platone Data Intelligence
- PlatoneDati
- per favore
- plug-in
- i plugin
- punto
- punti
- politico
- Popolare
- forse
- PowerShell
- presenza
- presenti
- prevenire
- in precedenza
- Precedente
- un bagno
- probabilmente
- Problema
- procedura
- processi
- i processi
- Prodotto
- Prodotti
- Programma
- progetto
- progetti
- protocollo
- fornire
- purché
- fornitore
- delega
- la percezione
- Pubblicazione
- pubblicamente
- pubblicato
- scopo
- query
- piuttosto
- raggiungere
- ricevuto
- recente
- record
- record
- ricorrenti
- riferimento
- si riferisce
- per quanto riguarda
- registrato
- registro
- relazionato
- pertinente
- basandosi
- resti
- rimozione
- rimuovere
- rispondere
- rapporto
- Report
- richiesta
- richieste
- riparazioni
- ricercatori
- risoluto
- risorsa
- quelli
- risposta
- colpevole
- risultante
- problemi
- invertire
- Ricco
- crescita
- router
- Regola
- stesso
- salvato
- Scienze
- Scienza e Tecnologia
- screenshot
- Cerca
- motore di ricerca
- Secondo
- secondo
- sezioni
- problemi di
- vedere
- sembrare
- sembra
- visto
- selezionato
- inviato
- Settembre
- servito
- server
- Server
- servizio
- Servizi
- Set
- alcuni
- condiviso
- Conchiglia
- mostrato
- Spettacoli
- simile
- Un'espansione
- semplicemente
- da
- SIX
- Taglia
- leggermente diversa
- piccole
- inferiore
- So
- Social
- Software
- componenti software
- Soluzioni
- alcuni
- sofisticato
- specifico
- specificato
- spettro
- dividere
- spionaggio
- Stage
- tappe
- Standard
- inizia a
- iniziato
- Di partenza
- Passi
- Ancora
- Tornare al suo account
- memorizzati
- flussi
- Corda
- La struttura
- studio
- soggetto
- sottomissione
- tale
- suggerisce
- suite
- ondata
- sospettoso
- sistema
- SISTEMI DI TRATTAMENTO
- tavolo
- Fai
- preso
- prende
- Target
- mirata
- obiettivi
- task
- per l'esame
- tecniche
- Tecnologia
- temporaneo
- Tencent
- di
- che
- I
- Regno Unito
- il Regno Unito
- il mondo
- loro
- Li
- tema
- poi
- Là.
- perciò
- Strumenti Bowman per analizzare le seguenti finiture:
- di
- Terza
- questo
- quelli
- minaccia
- attori della minaccia
- tre
- Attraverso
- tempo
- time line
- timestamp
- a
- Traccia
- pista
- Trading
- traffico
- trasferimento
- innescato
- seconda
- Uk
- capire
- Unito
- UK
- Università
- Sconosciuto
- improbabile
- SENZA NOME
- Aggiornanento
- Aggiornamenti
- URL
- us
- uso
- utilizzato
- Utente
- usa
- utilizzando
- un valido
- convalida
- APPREZZIAMO
- Valori
- Variante
- vario
- verificare
- versione
- verticale
- via
- Vittima
- vittime
- Visita
- visivo
- Vulnerabile
- Prima
- Modo..
- we
- sito web
- Sito web
- WELL
- sono stati
- Che
- quando
- ogni volta che
- quale
- larghezza
- wikipedia
- volere
- finestre
- con
- legno
- Lavora
- lavoro
- mondo
- sarebbe
- scrittura
- scritto
- ancora
- zefiro
- Codice postale