Resoker RAT Utilizza Telegram per Comando e Controllo
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
Rilevamenti
Possibile abuso di Telegram come canale di comando e controllo (via dns_query)
Visualizza
Possibili Punti di Persistenza [ASEPs – Software/NTUSER Hive] (via registry_event)
Visualizza
Download o Upload tramite Powershell (via cmdline)
Visualizza
IOC (DestinationIP) da rilevare: Resoker: Un Trojan di Accesso Remoto Basato su Telegram
Visualizza
IOC (HashMd5) da rilevare: Resoker: Un Trojan di Accesso Remoto Basato su Telegram
Visualizza
IOC (SourceIP) da rilevare: Resoker: Un Trojan di Accesso Remoto Basato su Telegram
Visualizza
Rilevamento di Esecuzione di ResokerRAT [Creazione Processo di Windows]
Visualizza
Rilevamento di esecuzione silenziosa di PowerShell per Acquisizione Schermo [PowerShell di Windows]
Visualizza
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 Hiddencarica .NETSystem.Windows.FormsandSystem.Drawingassembly, cattura lo schermo principale usando il metodoCopyFromScreene 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