Duqu ir sarežģīts trojietis, kuru ir izveidojuši skandalozu popularitāti guvušā datortārpa Stuxnet autori. Duqu galvenais uzdevums ir nodrošināt uzbrucējiem piekļuvi sistēmai, lai nozagtu konfidenciālu informāciju. Pirmo reizi šis trojietis tika pamanīts 2011.gada septembrī, tomēr pēc Kaspersky Lab rīcībā esošajām ziņām ar Duqu saistīta kaitīgā koda pēdas ir parādījušās jau 2007.gada augustā. Uzņēmuma speciālisti ir reģistrējuši vairāk nekā desmit incidentu, kas notikuši ar šīs kaitīgās programmatūras līdzdalību, turklāt lielākā daļa tās upuru atrodas Irānā. Analizējot šo incidentu rezultātā cietušo organizāciju nodarbošanos, kā arī tās informācijas raksturu, kuras iegūšanai bija paredzēti uzbrukumi, var izdarīt pieņēmumu, ka trojieša veidotāju galvenais mērķis bija nozagt informāciju par automatizētajām vadības sistēmām, ko izmanto dažādās rūpniecības nozarēs, kā arī vākt ziņas par vairāku Irānas organizāciju komerciālajiem sakariem.
Viens no svarīgākajiem ar Duqu saistītajiem neatrisinātajiem jautājumiem – kā šis trojietis pēc upura datora inficēšanas veic informācijas apmaiņu ar saviem komandserveriem (C&C). Duqu modulis, kas atbild par saziņu ar komandserveriem, ir daļa no tā bibliotēkas ar galveno kodu (Payload DLL). Detalizēti izpētot šo bibliotēku, Kaspersky Lab eksperti atklāja, ka daļa tās koda, kas ir atbildīga par saziņu ar komandserveri, ir uzrakstīta nezināmā programmēšanas valodā, un nosauca šo sektoru par Duqu Framework.
Atšķirībā no pārējā Duqu koda Duqu Framework nav uzrakstīts valodā C++ un nav kompilēts, izmantojot Microsoft's Visual C++ 2008. Iespējams, ka autori ir lietojuši savus izstrādes līdzekļus, lai radītu starpposma kodu ar C, vai arī viņi ir izmantojuši pilnīgi citu programmēšanas valodu. Lai kā tas būtu, eksperti secināja, ka šī valoda ir objektorientēta un pilnīgi piemērota tīkla lietojumprogrammu izstrādei.
Duqu Framework izmantotā valoda ir augsti specializēta. Tā ļauj Payload DLL strādāt neatkarīgi no citiem Duqu moduļiem un vairākos veidos nodrošina savienojumu ar izvēlēto komandserveri, tostarp izmantojot Windows HTTP, starpprocesu saziņas datplūsmas tīkla ligzdas un starpniekserverus. Bez tam tā ļauj bibliotēkai apstrādāt komandservera tiešos HTTP pieprasījumus, nemanāmi nosūta nozagto datu kopijas no inficētā datora uz komandserveri un pat spēj nogādāt papildu kaitīgos moduļus citos tīklā iekļautajos datoros, t.i., rada iespēju kontrolēti un slepeni inficēt arī citus datorus.
«Ņemot vērā projekta Duqu vērienīgumu, ir pilnīgi iespējams, ka ar Duqu Framework izveidi ir nodarbojusies pavisam cita komanda, nevis tā, kas izstrādāja draiverus un rakstīja izmantotājus sistēmas inficēšanai,» uzskata Kaspersky Lab galvenais antivīrusu eksperts Aleksandrs Gostevs. «Ievērojot ārkārtīgi augsto individualizācijas un ekskluzivitātes līmeni, kāds sasniegts programmēšanas valodas izveidē, var izteikt pieņēmumu, ka tā ir izstrādāta ne tikai lai nepiederošām personām apgrūtinātu iespēju saprast kiberspiegošanas operācijas īpatnības un mijiedarbību ar komandserveriem, bet arī nošķirtu šo projektu no citu grupu darba, kuras piedalījās Duqu veidošanā un bija atbildīgas par kaitīgās programmatūras papildelementu uzrakstīšanu.»
Aleksandrs Gostevs ir pārliecināts, ka specializētas programmēšanas valodas radīšana liecina par projektā iesaistīto izstrādātāju ārkārtīgi augsto kvalifikāciju un norāda uz to, ka projekta īstenošanai bija piesaistīti ievērojami finanšu un cilvēku resursi.
Kaspersky Lab vēršas pie programmētāju kopienas ar lūgumu pēc palīdzības trojieša Duqu izpētē: ja jums kaut kas ir zināms par izstrādes līdzekli, valodu vai kompilatoru, kas var ģenerēt šādu kodu, lūdzu, sazinieties ar mūsu ekspertiem pa e-pastu [email protected].
Ar visu Igora Sumenkova un Kostina Raju sagatavoto Duqu Framework analīzi var iepazīties tīmekļa vietnē www.securelist.com/ru.