Back to Posts

Share this post

DiamondFox

Posted by: voidsec

Reading Time: 5 minutes

Recentemente una nuova botnet è passata alla ribalta, grazie a Xylitol, il suo nome è DiamondFox, anche conosciuta col nome di Gorynch, è una botnet general purpose con svariate funzionalità.

Ecco come si presenta il pannello di controllo della botnet:


panelclients
stat1

Il malware, scritto in VB6, ha molte funzioni al suo intero, una tra le più interessanti è lo scraper di carte di credito, un modulo del bot che ricerca nella RAM del computer infetto, generalmente un Point of Sale System (POS), i dati relativi alle carte di credito (numero e CVV).

functionOltre alle solite e stra-note funzioni quali:

  • DDoS
  • Download & Execute: da notare che è possibile effettuare un execute direttamente in memoria, senza scrivere il file scaricato sul disco e pertanto riducendo il rischio di essere rilevati dai prodotti antivirus.

Sono presenti delle funzioni un po’ più sfiziose come:

  • Lo stealing del wallet bitcoin con la possibilità di cambiare al volo gli indirizzi bitcoin con quello del portafogli del botmaster.
  • La possibilità di veicolare malware o spam attraverso account Facebook & Twitter.
  • Il redirect di siti web, effettuato tramite modifica del file host di Windows.
  • Il furto di credenziali quali password, FTP, RDP, Instant Messaging e Mail memorizzate nel sistema.
  • Lo spreading del bot tramite USB

Durante la fase di build del bot è possibile specificare varie opzioni:
builderTra queste è possibile configurare la “persistenza” del malware con differenti percorsi d’installazione:

  • APPDATA – %APPDATA%
  • TEMP – %TEMP%
  • PROGRAMFILES – %PROGRAMFILES%
  • WINDIR – %WINDIR%

E le seguenti opzioni:

  • HKCU (registry)
  • Winlogon
  • Startup Folder

Per il registro di sistema HKCU, la seguente chiave viene generata:
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\ & BOTNAME

Per il metodo Winlogon, il percorso all’applicativo DiamondFox viene aggiunto ai seguenti percorsi: HKEY_LOCAL_MACHINE\software\microsoft\Windows NT\currentversion\winlogon\Userinit
HKEY_LOCAL_MACHINE64\software\microsoft\windows\currentversion\winlogon\Userinit

Con il metodo “Startup Folder”, DiamondFox viene semplicemente copiato nell’esecuzione automatica dell’utente, rinominato come “WordPad.exe”

builder2Sono inoltre presenti funzioni di anti-reversing, ormai onnipresenti nei bot, per rendere più difficile il lavoro di reverse da parte dei ricercatori, tra cui un controllo sul nome della macchina infetta per evitare che il bot venga fatto girare in un ambiente controllato:
ANTIVIRUS
VWINXP-MALTEST
(Utilizzato da AVAST. Ho individuato il nome durante il takeover di una botnet dal nome Cythosia, articolo che non ha mai potuto vedere la luce poiché coinvolgeva una nota Università Italiana)
MALWARE-STAR
VMG-CLIENT
HOME-OFF-D5F0AC
NAMAMO-AAAFC41B
BRIAN-BCAD2EA45
CANON
PAN-1E6ECC1F78B
VM_WINXP
WOLF
TEST
COMPUTERNAME
USER-2A6E79DA98
CITY5
Z-235
XP-SILO5YEIYKEX
JH-C64A2618CF31
SYSTEM-78358297

Le impostazioni del bot possono essere salvate o nella parte finale dell’eseguibile (EOF) del bot o in una risorsa CUSTOM “101”. La configurazione è “criptata” sempre con lo stesso metodo “buggato” dello XOR tramite chiave hardcoded.

configLa funzionalità che più tra tutte ho trovato interessante e innovativa è quella di poter generare un bot in versione “Lite” nella quale sono incluse funzionalità limitate: Download & Execute, visitare una pagina web e la “disinstallazione” del bot. La versione Lite viene generata dal builder come file VBS.

Il VBS ha interessanti risvolti, con modifiche minime può essere offuscato per essere reso completamente FUD (Fully Undetectable) e quindi bypassare gli antivirus, può inoltre essere utilizzato all’interno delle macro della suite Office.

obfCall Home

DiamondFox è una Botnet HTTP e durante il processo di comunicazione con il server di C&C il valore User-Agent viene utilizzato come “filtro”, senza il valore corretto la richiesta non viene processata dal server.

I dati inviati in una richiesta POST sono “criptati” tramite XOR grazie ad una chiave hardcoded nei sorgenti del bot. (In contemporanea alla scrittura di questo articolo, è stato pubblicato un post molto simile dei ricercatori di CYLANCE che dimostra come il bot utilizzi uno XOR “buggato” e non faccia pertanto un vero XOR con la chiave memorizzata).

Per quanto riguarda l’upload dei file rubati dalla vittima, i file vengono processati da “post.php”, e inseriti nella directory “logs/”. Lo sviluppatore della botnet si è dimenticato un piccolo e insignificante particolare: controllare la presenza di estensioni multiple. Questa funzionalità è stata in parte fixata durante l’ultimo aggiornamento del pannello di C&C della botnet, poiché, come individuato da Xylitol, era possibile caricare ed eseguire file sul server di comando e controllo. (POC)

I file vengono salvati dal web server seguendo questo schema:
logs/wallet
logs/scr
logs/rdp
logs/ftp
logs/mail
logs/pass
logs/kyl
logs/dump

Una botnet simile può essere utilizzata sia per attacchi APT sia per incrementare il trend dei malware as a service.

di VoidSec

Back to Posts