Gli esperti anti-malware di Kaspersky Lab hanno scoperto che una parte del Trojan Duqu è stato scritto in un linguaggio di programmazione sconosciuto
Duqu è un Trojan molto sofisticato, creato dalle stesse persone che hanno generato il worm Stuxnet. Lo scopo principale è quello di agire in modalità backdoor all’interno del sistema e facilitare in questo modo la sottrazione di informazioni private. Duqu è stato scoperto per la prima volta nel settembre 2011, ma secondo Kaspersky Lab la prima traccia del malware Duqu risale all’agosto 2007. Gli esperti dell’azienda hanno raccolto dozzine di casi che riguardavano Duqu e nella maggior parte dei casi le vittime erano localizzate in Iran. Da un’analisi delle attività delle vittime e delle informazioni sottratte, è chiaro che il principale obiettivo degli attacchi fosse la sottrazione di informazioni relative ai sistemi di controllo industriali utilizzati in un certo numero di aziende così come attività di intelligence sulle relazioni commerciali di una serie di aziende iraniane.
Il grande mistero mai risolto di Duqu riguarda la comunicazione tra il programma nocivo e il Command and Control (C&C) server del sistema infettato. Il modulo Duqu responsabile della comunicazione con il C&Cs è parte del Payload DLL. Dopo un’attenta analisi del Payload DLL, i ricercatori di Kaspersky Lab hanno scoperto che una specifica sezione all’interno del Payload DLL, che comunicava esclusivamente con i C&Cs, era scritta in un linguaggio di programmazione sconosciuto. I ricercatori di Kaspersky Lab hanno nominato questa sezione sconosciuta “Duqu Framework”.
A differenza del resto di Duqu, il Duqu Framework non è scritto in C++ e non è compilato con Microsoft Visual C++ 2008. E’ possibile quindi che gli autori abbiano utilizzato un framework casalingo per generare il codice C intermediario e che abbiano usato un linguaggio di programmazione totalmente diverso. I ricercatori di Kaspersky Lab hanno confermato comunque che il linguaggio è object-oriented e che gestisce un proprio set di attività che sono compatibili per le applicazioni di rete.
Il linguaggio del Framework Duqu è molto tecnico e consente al Payload DLL di operare indipendentemente dagli altri moduli Duqu e di connettersi ai C&C dedicati attraverso diversi percorsi inclusi HTTP Windows, socket di rete e server proxy. Consente anche al Payload DLL di processare le richieste dei server HTTP direttamente dal C&C, di trasmettere copie delle informazioni rubate dalla macchina infettata al C&C e di infettare altre macchine presenti nella rete.
“Considerate le dimensioni del progetto Duqu, è possible che il responsabile della creazione del Framework Duqu sia un altro gruppo di persone, che hanno realizzato i driver e scritto gli exploit di infezione del sistema”, ha dichiarato Alexander Gostev, Chief Security Expert ad Kaspersky Lab. “Visto l’alto livello di personalizzazione e di esclusività del linguaggio di programmazione, è anche possible che questo sia stato creato non solo per evitare che venisse intercettato da esterni, ma anche per tenerlo separato dagli altri gruppi Duqu responsabili della scrittura di alcune parti del programma nocivo”.
Secondo Alexander Gostev, la creazione di un linguaggio dedicato dimostra la competenza tecnica dei cyber criminali e il fatto che sono state necessarie notevoli risorse economiche per la creazione del progetto.
La versione completa dell’analisi del Framework Duqu di Igor Soumenkov e Costin Raiu e disponibile a questo indirizzo