Come i download di software autentico possono nascondere backdoor remoti
Detection stack
- AIDR
- Alert
- ETL
- Query
Sintesi
Gli attaccanti stanno operando un sito di download fittizio di RustDesk (rustdesk.work) che distribuisce un installer trojanizzato: una configurazione legittima di RustDesk associata a un caricatore malevolo soprannominato Winos4.0. Quando eseguito, il dropper impianta logger.exe and Libserver.exe, quindi carica il backdoor in memoria per ridurre i residui sul disco. L’impianto stabilisce un comando e controllo verso 207.56.13.76 su TCP/5666, consentendo l’accesso remoto persistente. Questa attività è guidata da ingegneria sociale e impersonificazione del marchio, non da una vulnerabilità software di RustDesk.
Indagine
Gli analisti hanno ottenuto il binario malevolo rustdesk-1.4.4-x86_64.exe e hanno osservato che scrive un installer legittimo di RustDesk più un logger.exe armato sul disco. Il logger.exe componente genera Libserver.exe, che quindi mette in scena WinosStager DLLs e un ampio payload nella memoria senza persistere quei moduli su disco. La telemetria di rete ha confermato comunicazioni in uscita verso 207.56.13.76:5666, valutato come il canale C2 della campagna. Gli investigatori hanno estratto IOCs chiave, tra cui il dominio falsificato (rustdesk.work), i nomi dei file rilasciati e gli hash dei file associati.
Mitigazione
Enforce verified software acquisition practices and download RustDesk only from the official source (rustdesk.com). TCP/5666, e aggiungi rilevamenti/regole di blocco per le connessioni a rustdesk.work. Blocca 207.56.13.76 e il dominio malevolo attraverso DNS, proxy e controlli del firewall.
Risposta
Crea rilevamenti per l’esecuzione di logger.exe and Libserver.exe, e avvisa su qualsiasi connessione di rete a 207.56.13.76:5666. Caccia proattivamente attraverso gli endpoint per l’installer trojanizzato (e qualsiasi indicatore SHA-256 ) e controlla se RustDesk è stato installato da fonti non approvate. Se il compromesso è confermato, isola gli host interessati, termina l’albero dei processi malevoli, rimuovi gli artefatti correlati e ruota le credenziali potenzialmente esposte (specialmente eventuali account usati durante l’installazione o sessioni remote successive).
Flusso d’Attacco
Rilevamenti
File di Registro di RustDesk Creato (via file_event)
Visualizza
Attività Possibile di Command and Control tramite Tentativo di Comunicazione del Dominio Software di Accesso Remoto (via dns)
Visualizza
Software Alternativo di Accesso/Management Remoto (via process_creation)
Visualizza
IOC (SourceIP) da rilevare: Come i download di software reale possono nascondere backdoor remote
Visualizza
IOC (HashSha256) da rilevare: Come i download di software reale possono nascondere backdoor remote
Visualizza
IOC (DestinationIP) da rilevare: Come i download di software reale possono nascondere backdoor remote
Visualizza
Rilevazione dell’Attività di Rete di Winos4.0 tramite Server Malevolo di Comando e Controllo [Connessione di Rete di Windows]
Visualizza
Installer di RustDesk Trojanizzato con Backdoor Winos4.0 [Creazione del Processo di Windows]
Visualizza
Esecuzione della Simulazione
Prerequisito: Il Controllo Pre‑volo della Telemetria e Baseline deve essere superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente i TTP identificati e mirare a generare l’esatta telemetria prevista dalla logica di rilevamento.
-
Narrativa dell’Attacco & Comandi:
- Consegna & Esecuzione: Un attaccante consegna un installer di RustDesk trojanizzato (
rustdesk-1.4.4-x86_64.exe) tramite un’email di phishing. Il file viene salvato in%TEMP%ed eseguito con privilegi elevati. - Rilascio del Payload: All’esecuzione, l’installer estrae due binari malevoli—
logger.exeandLibserver.exe—nella stessa directory e li lancia immediatamente come processi figli. - Persistenza (T1546.016):
logger.exescrive una voce di chiave Run (HKCUSoftwareMicrosoftWindowsCurrentVersionRun) che punta a se stesso, assicurando persistenza al riavvio. - Iniezione di Codice (T1574.005 / T1055.005):
Libserver.exeinietta un DLL riflessivo inexplorer.exeper ottenere un’esecuzione ad alto privilegio e apre una shell inversa al C2 dell’attaccante. - Evasione (Masquerading – T1036.011): Tutti i binari mantengono la convenzione di denominazione “RustDesk” per mimetizzarsi con il software legittimo.
- Consegna & Esecuzione: Un attaccante consegna un installer di RustDesk trojanizzato (
-
Script di Test di Regressione: Lo script di seguito automatizza i passaggi 1‑3, producendo i tre eventi di creazione di processo richiesti. Utilizza PowerShell per copiare binari malevoli preposizionati (simulati con segnaposto benigni per sicurezza) e li avvia con la corretta relazione padre-figlio.
# ------------------------------------------------- # Script di Simulazione – Installer di RustDesk Trojanizzato # ------------------------------------------------- # Prerequisito: Due eseguibili segnaposto benigni collocati in C:Malware (denominati logger.exe & Libserver.exe) # In un vero test red-team questi sarebbero i payload malevoli reali. # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" $loggerPath = "$payloadDirlogger.exe" $libserverPath = "$payloadDirLibserver.exe" # 1. Distribuire un installer fittizio (semplicemente una copia di un exe benigno) Write-Host "[*] Distribuzione di un falso installer RustDesk..." New-Item -ItemType Directory -Path $payloadDir -Force | Out-Null Copy-Item -Path "C:WindowsSystem32notepad.exe" -Destination $installerPath -Force # 2. Simulare il rilascio di payload – copiare i binari segnaposto Write-Host "[*] Rilasciando payloads..." Copy-Item -Path "C:Malwarelogger.exe" -Destination $loggerPath -Force Copy-Item -Path "C:MalwareLibserver.exe" -Destination $libserverPath -Force # 3. Eseguire l'installer (crea il processo genitore) Write-Host "[*] Eseguendo l'installer..." $installer = Start-Process -FilePath $installerPath -PassThru # 4. Avviare logger.exe come figlio di installer Write-Host "[*] Avviando logger.exe (figlio di installer)..." Start-Process -FilePath $loggerPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow # 5. Avviare Libserver.exe come figlio di installer Write-Host "[*] Avviando Libserver.exe (figlio di installer)..." Start-Process -FilePath $libserverPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow Write-Host "[+] Simulazione completata. Verifica avvisi in SIEM." -
Comandi di Pulizia: Rimuovi i file temporanei e termina qualsiasi processo rimanente.
# ------------------------------------------------- # Script di pulizia – Rimozione degli artefatti di simulazione # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" Write-Host "[*] Interruzione dei processi avviati..." Get-Process -Name "logger","Libserver","rustdesk-1.4.4-x86_64" -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] Eliminazione dei file..." Remove-Item -Path $installerPath -Force -ErrorAction SilentlyContinue Remove-Item -Recurse -Force -Path $payloadDir -ErrorAction SilentlyContinue Write-Host "[+] Pulizia completata."