SOC Prime Bias: Medio

07 Apr 2026 17:52

Resoker RAT Utilizza Telegram per Comando e Controllo

Author Photo
Ruslan Mikhalov Capo della Ricerca sulle Minacce presso SOC Prime linkedin icon Segui
Resoker RAT Utilizza Telegram per Comando e Controllo
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riepilogo

ResokerRAT è un trojan di accesso remoto recentemente identificato che utilizza l’API del Bot di Telegram per il comando e controllo. Persiste tramite un valore di registro Run e include capacità di elevare i privilegi, catturare schermate, bloccare Task Manager e indebolire i controlli UAC. Per ridurre la visibilità, esegue PowerShell in una finestra nascosta e tenta di terminare i comuni strumenti di analisi. Il rilevamento può avvenire tramite il suo mutex, le modifiche chiave al registro e l’attività C2 basata su Telegram.

Indagine

L’analisi di Resoker evidenzia la creazione di mutex, logica anti-debug e la terminazione aggressiva dei processi mirata a strumenti di sicurezza e analisi. Il malware imposta un hook per la tastiera, accetta un set definito di comandi consegnati tramite Telegram e modifica i valori di registro per disabilitare Task Manager e allentare il comportamento UAC. I payload successivi possono essere recuperati tramite l’esecuzione nascosta di PowerShell, supportando l’espansione modulare dopo il compromesso iniziale.

Mitigazione

Monitora il mutex noto e attiva un avviso sulle modifiche del registro legate a DisableTaskMgr e alle chiavi relative a UAC. Restringi o blocca l’accesso in uscita agli endpoint dell’API di Telegram dove possibile e applica il controllo delle applicazioni per prevenire l’esecuzione non autorizzata di PowerShell. Le rilevazioni basate su host che segnalano comportamenti di keyboard-hook e attività sospette di PowerShell in finestra nascosta possono ulteriormente ridurre l’impatto.

Risposta

Se rilevato, isola l’host, interrompi il processo malevolo e rimuovi l’elemento di persistenza della chiave Run. Preserva le prove volatili (valore del mutex, indicatori del bot/C2 di Telegram, telemetria della linea di comando) ed esegui una verifica forense completa per ulteriori payload o persistenza. Ripristina le modifiche al registro che influenzano Task Manager e UAC, ruota le credenziali esposte se si sospetta il furto e riapplica le politiche di esecuzione a privilegio minimo per prevenire recidive.

"graph TB %% Class definitions classDef action fill:#ffcc99 classDef technique fill:#99ccff classDef persistence fill:#ffd699 classDef command_and_control fill:#ffdd99 %% Node definitions action_execution["<b>Azione</b> – <b>T1059.001 PowerShell</b>: Esegui comando PowerShell nascosto tramite Resoker.exe<br/><b>Tecnica</b>: Usa PowerShell per eseguire comandi"] class action_execution action tech_hide_window["<b>Tecnica</b> – <b>T1564.003 Finestra Nascosta</b>: Esegui comando in finestra nascosta per eludere la visibilità dell’utente"] class tech_hide_window technique action_process_enum["<b>Azione</b> – <b>T1057 Scoperta dei Processi</b>: Enumera i processi in esecuzione e termina gli strumenti di analisi"] class action_process_enum action action_keylogging["<b>Azione</b> – <b>T1056.001 Keylogging</b>: Installa un hook globale di tastiera a bassou2011livello per catturare input"] class action_keylogging action persistence_run_key["<b>Persistenza</b> – <b>T1037.005 Chiavi di Registro Run</b>: Crea voce di registro HKCU Run per l’avvio automaticou2011start"] class persistence_run_key persistence defense_disable_taskmgr["<b>Tecnica</b> – <b>T1562.001 Disabilita Task Manager</b>: Imposta il valore del registro DisableTaskMgr a 1"] class defense_disable_taskmgr technique action_screen_capture["<b>Azione</b> – <b>T1113 Acquisizione Schermo</b>: Acquisisci schermo tramite PowerShell e salva file PNG"] class action_screen_capture action action_download["<b>Azione</b> – <b>T1059.001 PowerShell</b> e <b>T1202 Esecuzione Comando Indiretto</b>: Scarica file aggiuntivi utilizzando comandi PowerShell nascosti"] class action_download action c2_telegram["<b>Comando e Controllo</b> – <b>T1102.002 Servizio Web</b> e <b>T1102.003 Messaggi UnilateralEu2011i</b>: Comunicare con l’attaccante tramite API Bot di Telegram su HTTPS"] class c2_telegram command_and_control %% Connections showing attack flow action_execution –>|utilizza| tech_hide_window action_execution –>|attiva| action_process_enum action_process_enum –>|termina| action_keylogging action_process_enum –>|stabilisce| persistence_run_key persistence_run_key –>|rafforza| defense_disable_taskmgr action_process_enum –>|abilita| action_screen_capture action_screen_capture –>|invoca| action_download action_download –>|esfiltrare tramite| c2_telegram "

Flusso dell’attacco

Esecuzione di Simulazione

Prerequisito: Il controllo preliminare di Telemetria e Baseline deve essere superato.

Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica di avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirano a generare la telemetria esatta attesa dalla logica di rilevamento.

  • Narrativa dell’Attacco e Comandi:
    Un avversario che ha ottenuto un punto d’appoggio su una workstation Windows desidera catturare il desktop dell’utente senza sollevare segnali visivi. Lancia PowerShell con l’opzione -WindowStyle Hidden carica .NET System.Windows.Forms and System.Drawing assembly, cattura lo schermo principale usando il metodo CopyFromScreen e scrive il bitmap in un file temporaneo. Il comando è costruito in una singola linea per garantire che l’intera stringa appaia nel log del Blocco Script di PowerShell, corrispondendo a tutti e quattro i selettori di rilevamento.

  • Script di Test di Regressione:

    # Acquisizione schermo silenziosa – riproduce la telemetria di rilevamento
    $psCommand = @"
    Aggiungi-Tipo -NomeAssembly System.Windows.Forms
    Aggiungi-Tipo -NomeAssembly System.Drawing
    $bounds = [System.Windows.Forms.Screen]::PrimaryScreen.Bounds
    $bitmap = New-Object System.Drawing.Bitmap $bounds.Width, $bounds.Height
    $graphics = [System.Drawing.Graphics]::FromImage($bitmap)
    $graphics.CopyFromScreen($bounds.Location, [System.Drawing.Point]::Empty, $bounds.Size)
    $output = "C:Tempscreenshot.png"
    $bitmap.Save($output, [System.Drawing.Imaging.ImageFormat]::Png)
    Write-Host "Screenshot salvata in $output"
    "@
    
    # Esegui PowerShell nascosto con il comando assemblato
    powershell -WindowStyle Hidden -Command $psCommand
  • Comandi di Pulizia:

    # Rimuovi lo screenshot e qualsiasi oggetto residuo
    Remove-Item -Path "C:Tempscreenshot.png" -ErrorAction SilentlyContinue