SOC Prime Bias: Critico

06 Mag 2026 14:15

La società media CloudZ RAT potrebbe rubare messaggi OTP usando il plugin Pheno

Author Photo
Ruslan Mikhalov Capo della Ricerca sulle Minacce presso SOC Prime linkedin icon Segui
La società media CloudZ RAT potrebbe rubare messaggi OTP usando il plugin Pheno
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Sommario

Cisco Talos ha identificato un’intrusione in cui gli aggressori hanno distribuito il trojan di accesso remoto CloudZ insieme a un plugin personalizzato chiamato Pheno. L’attività prende di mira i sistemi Windows 10 e 11 che si affidano a Microsoft Phone Link per sincronizzarsi con i dispositivi mobili. Sfruttando il bridge Phone Link sulla workstation, gli aggressori possono accedere ai contenuti SMS e ai messaggi di password monouso senza inserire malware direttamente sul telefono stesso. La catena di infezione utilizza un dropper basato su Rust, un loader .NET, la persistenza tramite task schedulati e diversi metodi di consegna del payload.

Indagine

Talos ha tracciato l’intrusione ad un falso aggiornamento di ScreenConnect che ha consegnato un loader compilato in Rust chiamato systemupdates.exe or Windows-interactive-update.exe. Quel loader ha decriptato e rilasciato un componente .NET, che poi ha installato CloudZ RAT attraverso un’attività pianificata che ha lanciato regasm.exe. Dopo l’installazione, CloudZ ha recuperato il plugin Pheno da un server di staging e l’ha utilizzato per accedere ai dati archiviati nel database SQLite di Phone Link. Gli investigatori hanno anche identificato un’infrastruttura di comando e controllo, inclusi l’indirizzo IP 185.196.10.136 e diversi domini malevoli legati alla campagna.

Mitigazione

Cisco Talos ha notato che rilevamenti di ClamAV come Win.Packed.Msilheracles and Win.Trojan.CloudZRAT, insieme alle regole Snort 66408–66410 and 301492, possono aiutare a identificare la minaccia. Bloccare i domini malevoli conosciuti e l’indirizzo IP, mentre si limita l’esecuzione di binari non firmati da percorsi come ProgramData, può aiutare a fermare la catena del loader. Le organizzazioni possono anche ridurre l’esposizione disattivando o monitorando attentamente Microsoft Phone Link e facendo rispettare il minimo privilegio sulla creazione ed esecuzione delle attività pianificate.

Risposta

Se questa attività viene rilevata, isolare immediatamente l’host interessato e raccogliere immagini di memoria e disco per l’analisi forense. Gli investigatori dovrebbero confermare la presenza del SystemWindowsApis task schedulato e di eventuali binari correlati a CloudZ, quindi rimuoverli dal sistema. L’infrastruttura di comando e controllo identificata dovrebbe essere bloccata e le credenziali potenzialmente esposte dovrebbero essere reimpostate, specialmente dove potrebbe essere stata intercettata un’autenticazione basata su OTP. Un esame più ampio del sistema dovrebbe anche esaminare altri metodi di persistenza e controllare l’attività PowerShell and regasm.exe per abusi correlati.

"graph TB %% Class definitions classDef technique fill:#ffe699 %% Node definitions step1_user_exec["<b>Tecnica</b> – <b>T1204.002 Esecuzione Utente: File Malevolo</b><br/><b>Descrizione</b>: L’utente viene indotto ad eseguire un eseguibile malevolo che si maschera come un falso aggiornamento di ScreenConnect."] class step1_user_exec technique step2_persistence["<b>Tecnica</b> – <b>T1218.009 Esecuzione Proxy Binario di Sistema: Regsvcs/Regasm</b><br/><b>Descrizione</b>: Codice malevolo è eseguito via regsvcs o regasm tramite un’attività pianificata, sfruttando i binari .NET fidati."] class step2_persistence technique step3_obfuscation["<b>Tecnica</b> – <b>T1027 File o Informazioni Offuscati</b><br/><b>Descrizione</b>: Il payload è confezionato con ConfuserEx e XORu2011criptato per nascondere la sua vera funzionalità."] class step3_obfuscation technique step4_dynamic_api["<b>Tecnica</b> – <b>T1027.007 Risoluzione API Dinamica</b><br/><b>Descrizione</b>: A runtime il malware risolve le API richieste, controllando gli strumenti di analisi per evitare la rilevazione statica."] class step4_dynamic_api technique step5_indicator_removal["<b>Tecnica</b> – <b>T1027.005 Rimozione Indicatore dagli Strumenti</b><br/><b>Descrizione</b>: Il codice interrompe l’esecuzione se vengono rilevati servizi di sicurezza, rimuovendo qualsiasi indicatore osservabile."] class step5_indicator_removal technique step6_reflective_load["<b>Tecnica</b> – <b>T1620 Caricamento Riflettente del Codice</b><br/><b>Descrizione</b>: Il payload .NET è caricato direttamente in memoria in modo riflettente, senza lasciare file sul disco."] class step6_reflective_load technique step7_process_discovery["<b>Tecnica</b> – <b>T1057 Scoperta di Processi</b><br/><b>Descrizione</b>: Il malware enumera i processi in esecuzione per individuare e possibilmente disattivare gli strumenti di sicurezza."] class step7_process_discovery technique step8_browser_creds["<b>Tecnica</b> – <b>T1555.003 Credenziali dai Browser Web</b><br/><b>Descrizione</b>: Le password memorizzate nel browser vengono estratte e preparate per l’esfiltrazione."] class step8_browser_creds technique step9_steal_cookie["<b>Tecnica</b> – <b>T1539 Furto di Cookie di Sessione Web</b><br/><b>Descrizione</b>: I cookie di sessione web attivi vengono catturati dal browser."] class step9_steal_cookie technique step10_use_cookie["<b>Tecnica</b> – <b>T1550.004 Uso di Materiale di Autenticazione Alternativa: Cookie di Sessione Web</b><br/><b>Descrizione</b>: I cookie rubati vengono riutilizzati per autenticarsi ai servizi web di destinazione."] class step10_use_cookie technique step11_browser_info["<b>Tecnica</b> – <b>T1217 Scoperta di Informazioni sul Browser</b><br/><b>Descrizione</b>: Ulteriori dati del browser e messaggi OTP sono raccolti per ulteriori abusi."] class step11_browser_info technique step12_bits_jobs["<b>Tecnica</b> – <b>T1197 Job BITS</b><br/><b>Descrizione</b>: I job BITS scaricano plugin malevoli aggiuntivi utilizzando bitsadmin, curl o PowerShell."] class step12_bits_jobs technique step13_exfil_encrypted["<b>Tecnica</b> – <b>T1048.002 Esfiltrazione su Protocollo Non-C2 Crittografato Asimmetrico</b><br/><b>Descrizione</b>: I dati raccolti vengono inviati tramite una socket TCP crittografata che non fa parte di un canale C2 standard."] class step13_exfil_encrypted technique step14_c2_web["<b>Tecnica</b> – <b>T1071.001 Protocollo a Livello di Applicazione: Protocolli Web</b><br/><b>Descrizione</b>: Il traffico di comando e controllo utilizza HTTP/S con useru2011agents rotanti e intestazioni antiu2011caching."] class step14_c2_web technique %% Connections step1_user_exec –>|conduce a| step2_persistence step2_persistence –>|conduce a| step3_obfuscation step3_obfuscation –>|conduce a| step4_dynamic_api step4_dynamic_api –>|conduce a| step5_indicator_removal step5_indicator_removal –>|conduce a| step6_reflective_load step6_reflective_load –>|conduce a| step7_process_discovery step7_process_discovery –>|conduce a| step8_browser_creds step8_browser_creds –>|conduce a| step9_steal_cookie step9_steal_cookie –>|conduce a| step10_use_cookie step10_use_cookie –>|conduce a| step11_browser_info step11_browser_info –>|conduce a| step12_bits_jobs step12_bits_jobs –>|conduce a| step13_exfil_encrypted step13_exfil_encrypted –>|conduce a| step14_c2_web "

Flusso di Attacco

Esecuzione di Simulazione

Prerequisito: Il Controllo Pre‑volo di Telemetria & Baseline deve essere passato.

Motivazione: Questa sezione descrive 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 di Attacco:
    L’attaccante ha compromesso un account utente a basso privilegio e desidera stabilire la persistenza mentre conferma che il loader .NET di CloudZ è attivo. Essi:

    1. Creare un’attività pianificata che lancia uno script PowerShell (C:Tempcloudz.ps1).
    2. Eseguire immediatamente il task con schtasks /run per garantire che lo script venga eseguito.
    3. All’interno dello script, enumerare tutti i processi utilizzando Get‑CimInstance Win32_Process per testare la presenza del loader .NET.
    4. Il processo PowerShell e il schtasks comando producono entrambi record Sysmon EventID 1 i cui CommandLine campi contengono le esatte stringhe che la regola osserva, causando un allerta.
  • Script di Test di Regressione:

    #-------------------------------------------------
    # Script di persistenza & verifica in stile CloudZ
    #-------------------------------------------------
    $taskName = "CloudZ_Persistence"
    $scriptPath = "C:Tempcloudz.ps1"
    
    # 1️⃣ Scrivi il payload PowerShell che interroga i processi
    @"
    # Payload CloudZ – enumerazione di processi
    Get-CimInstance Win32_Process | Out-Null
    "@ | Set-Content -Path $scriptPath -Encoding ASCII
    
    # 2️⃣ Registra un'attività pianificata che esegue il payload
    $action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-NoProfile -ExecutionPolicy Bypass -File `"$scriptPath`""
    $trigger = New-ScheduledTaskTrigger -AtLogOn
    Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -Force
    
    # 3️⃣ Esegui immediatamente l'attività (genera schtasks /run)
    schtasks /run /tn "$taskName"
    
    # 4️⃣ Breve pausa per consentire la registrazione
    Start-Sleep -Seconds 5
  • Comandi di Pulizia:

    # Rimuovi attività pianificata
    Unregister-ScheduledTask -TaskName "CloudZ_Persistence" -Confirm:$false
    
    # Elimina lo script del payload
    Remove-Item -Path "C:Tempcloudz.ps1" -Force
    
    # Facoltativamente, interrompi Sysmon (ripristina la configurazione originale) se necessario
    # & "$env:ProgramFilesSysinternalsSysmon.exe" -u