SOC Prime Bias: Critico

16 Jan 2026 13:25 UTC

Come i download di software autentico possono nascondere backdoor remoti

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Segui
Come i download di software autentico possono nascondere backdoor remoti
shield icon

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

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:

    1. 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.
    2. Rilascio del Payload: All’esecuzione, l’installer estrae due binari malevoli—logger.exe and Libserver.exe—nella stessa directory e li lancia immediatamente come processi figli.
    3. Persistenza (T1546.016): logger.exe scrive una voce di chiave Run (HKCUSoftwareMicrosoftWindowsCurrentVersionRun) che punta a se stesso, assicurando persistenza al riavvio.
    4. Iniezione di Codice (T1574.005 / T1055.005): Libserver.exe inietta un DLL riflessivo in explorer.exe per ottenere un’esecuzione ad alto privilegio e apre una shell inversa al C2 dell’attaccante.
    5. Evasione (Masquerading – T1036.011): Tutti i binari mantengono la convenzione di denominazione “RustDesk” per mimetizzarsi con il software legittimo.
  • 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."