Ներածություն
1 թվականի սեպտեմբերի 2011-ին Հունգարիայից VirusTotal կայք է ուղարկվել ~DN1.tmp անունով ֆայլ: Այն ժամանակ ֆայլը հայտնաբերվեց որպես վնասակար միայն երկու հակավիրուսային շարժիչների կողմից՝ BitDefender-ը և AVIRA-ն: Ահա թե ինչպես սկսվեց Դուկուի պատմությունը. Առաջ նայելով, պետք է ասել, որ Duqu չարամիտ ծրագրերի ընտանիքն անվանվել է այս ֆայլի անունով։ Այնուամենայնիվ, այս ֆայլը բոլորովին անկախ լրտեսող ծրագրերի մոդուլ է՝ keylogger ֆունկցիաներով, տեղադրված է, հավանաբար, օգտագործելով վնասակար ներբեռնիչ-կաթող, և կարող է համարվել միայն որպես «վճարման բեռ», որը բեռնված է Duqu չարամիտ ծրագրի կողմից իր շահագործման ընթացքում, և ոչ որպես բաղադրիչ ( մոդուլ) Duqu-ի: Duqu-ի բաղադրիչներից մեկը Virustotal ծառայությանն ուղարկվել է միայն սեպտեմբերի 9-ին։ Դրա տարբերակիչ առանձնահատկությունը C-Media-ի կողմից թվային ստորագրված դրայվերն է: Որոշ փորձագետներ անմիջապես սկսեցին նմանություններ անել չարամիտ ծրագրերի մեկ այլ հայտնի օրինակի հետ՝ Stuxnet-ի հետ, որն օգտագործում էր նաև ստորագրված դրայվերներ: Աշխարհի տարբեր հակավիրուսային ընկերությունների կողմից հայտնաբերված Duqu-ով վարակված համակարգիչների ընդհանուր թիվը կազմում է տասնյակ: Շատ ընկերություններ պնդում են, որ Իրանը կրկին գլխավոր թիրախն է, սակայն, դատելով վարակների աշխարհագրական բաշխվածությունից, դա չի կարելի հստակ ասել։
Այս դեպքում դուք պետք է վստահորեն խոսեք միայն մեկ այլ ընկերության մասին՝ նորածին բառով
Համակարգի ներդրման կարգը
Հունգարական CrySyS (Բուդապեշտի տեխնոլոգիական և տնտեսագիտական համալսարանի կրիպտոգրաֆիայի և համակարգերի անվտանգության հունգարական լաբորատորիա) մասնագետների կողմից անցկացված հետաքննությունը հանգեցրեց տեղադրողին (կաթողին), որի միջոցով վարակվել է համակարգը: Դա Microsoft Word ֆայլ էր, որը շահագործում էր win32k.sys վարորդի խոցելիությունը (MS11-087, նկարագրված է Microsoft-ի կողմից 13թ. նոյեմբերի 2011-ին), որը պատասխանատու է TTF տառատեսակների մատուցման մեխանիզմի համար։ Exploit-ի shellcode-ն օգտագործում է «Dexter Regular» կոչվող տառատեսակը, որը ներկառուցված է փաստաթղթում, որտեղ Showtime Inc.-ը նշված է որպես տառատեսակի ստեղծող: Ինչպես տեսնում եք, Duqu-ի ստեղծողները անծանոթ չեն հումորի զգացմանը. Դեքսթերը սերիական մարդասպան է, Showtime-ի կողմից արտադրված համանուն հեռուստասերիալի հերոսը: Դեքսթերը սպանում է միայն (հնարավորության դեպքում) հանցագործներին, այսինքն՝ խախտում է օրենքը հանուն օրինականության։ Հավանաբար, այս կերպ Duqu-ի ծրագրավորողները հեգնում են, որ բարի նպատակներով ապօրինի գործունեությամբ են զբաղվում։ Նամակներ ուղարկելը կատարվել է նպատակային: Առաքումը, ամենայն հավանականությամբ, օգտագործել է վտանգված (կոտրված) համակարգիչներ՝ որպես միջնորդ՝ հետևելը դժվարացնելու համար:
Այսպիսով, Word փաստաթուղթը պարունակում էր հետևյալ բաղադրիչները.
- տեքստային բովանդակություն;
- ներկառուցված տառատեսակ;
- շահագործել shellcode;
- վարորդ;
- տեղադրող (DLL գրադարան):
Հաջողության դեպքում, exploit shellcode-ը կատարել է հետևյալ գործողությունները (միջուկի ռեժիմում).
- ստուգում է կատարվել կրկնակի վարակման համար, դրա համար «CF4D» ստեղնի առկայությունը ստուգվել է գրանցամատյանում՝ «HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInternet SettingsZones1» հասցեով, եթե դա ճիշտ էր, ապա shellcode-ն ավարտեց դրա կատարումը.
- վերծանվել է երկու ֆայլ՝ վարորդը (sys) և տեղադրիչը (dll);
- վարորդը ներարկվել է services.exe գործընթացում և գործարկել տեղադրիչը.
- Վերջապես, shellcode-ը ջնջվեց հիշողության մեջ զրոներով:
Շնորհիվ այն բանի, որ win32k.sys-ը գործում է արտոնյալ «System» օգտագործողի ներքո, Duqu-ի մշակողները նրբագեղորեն լուծել են ինչպես չարտոնված գործարկման, այնպես էլ իրավունքների ընդլայնման խնդիրը (գործում է սահմանափակ իրավունքներով օգտվողի հաշվի ներքո):
Հսկումը ստանալուց հետո տեղադրողը վերծանել է հիշողության մեջ պարունակվող տվյալների երեք բլոկ, որոնք պարունակում են.
- ստորագրված վարորդ (sys);
- հիմնական մոդուլ (dll);
- տեղադրողի կազմաձևման տվյալները (pnf):
Տեղադրիչի կազմաձևման տվյալների մեջ նշված է ամսաթվերի միջակայք (երկու ժամանակային դրոշմանիշների տեսքով՝ սկիզբ և ավարտ): Տեղադրողը ստուգեց, թե արդյոք ընթացիկ ամսաթիվը ներառված է դրանում, և եթե ոչ, ապա ավարտեց դրա կատարումը: Տեղադրիչի կոնֆիգուրացիայի տվյալների մեջ եղել են նաև այն անունները, որոնց տակ պահվել են վարորդը և հիմնական մոդուլը: Այս դեպքում հիմնական մոդուլը պահվել է սկավառակի վրա գաղտնագրված տեսքով:
Duqu-ի ավտոմատ մեկնարկի համար ստեղծվել է ծառայություն՝ օգտագործելով վարորդի ֆայլը, որը գաղտնազերծում է հիմնական մոդուլը անմիջապես ռեեստրում պահվող բանալիների միջոցով: Հիմնական մոդուլը պարունակում է իր սեփական կազմաձևման տվյալների բլոկը: Երբ առաջին անգամ գործարկվեց, այն վերծանվեց, տեղադրման ամսաթիվը մուտքագրվեց դրա մեջ, որից հետո այն նորից կոդավորվեց և պահպանվեց հիմնական մոդուլի կողմից: Այսպիսով, տուժած համակարգում, հաջող տեղադրվելուց հետո, պահպանվեցին երեք ֆայլեր՝ վարորդը, հիմնական մոդուլը և դրա կազմաձևման տվյալների ֆայլը, մինչդեռ վերջին երկու ֆայլերը պահվում էին սկավառակի վրա կոդավորված ձևով: Բոլոր վերծանման ընթացակարգերը կատարվել են միայն հիշողության մեջ: Տեղադրման այս բարդ ընթացակարգն օգտագործվել է հակավիրուսային ծրագրային ապահովման միջոցով հայտնաբերելու հնարավորությունը նվազագույնի հասցնելու համար:
Հիմնական մոդուլը
Հիմնական մոդուլ (ռեսուրս 302), ըստ
Հիմնական մոդուլը պատասխանատու է օպերատորներից հրամաններ ստանալու ընթացակարգի համար: Duqu-ն ապահովում է փոխազդեցության մի քանի մեթոդներ՝ օգտագործելով HTTP և HTTPS արձանագրությունները, ինչպես նաև օգտագործելով անվանվող խողովակները: HTTP(S-ի համար) նշվել են հրամանատարական կենտրոնների դոմենային անունները և տրամադրվել է պրոքսի սերվերի միջոցով աշխատելու հնարավորություն՝ նրանց համար նշվել է օգտվողի անուն և գաղտնաբառ։ IP հասցեն և դրա անվանումը նշված են ալիքի համար: Նշված տվյալները պահվում են հիմնական մոդուլի կազմաձևման տվյալների բլոկում (գաղտնագրված ձևով):
Անվանված խողովակներ օգտագործելու համար մենք գործարկեցինք մեր սեփական RPC սերվերի ներդրումը: Այն աջակցում էր հետևյալ յոթ գործառույթներին.
- վերադարձնել տեղադրված տարբերակը;
- ներարկել dll նշված գործընթացում և զանգահարել նշված գործառույթը.
- բեռնել dll;
- սկսել գործընթաց՝ զանգահարելով CreateProcess();
- կարդալ տվյալ ֆայլի բովանդակությունը.
- գրել տվյալներ նշված ֆայլում;
- ջնջել նշված ֆայլը:
Անվանված խողովակները կարող են օգտագործվել տեղական ցանցում՝ թարմացված մոդուլները և կազմաձևման տվյալները Duqu-ով վարակված համակարգիչների միջև բաշխելու համար: Բացի այդ, Duqu-ը կարող էր հանդես գալ որպես պրոքսի սերվեր այլ վարակված համակարգիչների համար (որոնք մուտք չունեին ինտերնետ՝ դարպասի վրա տեղադրված firewall-ի կարգավորումների պատճառով): Duqu-ի որոշ տարբերակներ չունեին RPC ֆունկցիոնալություն:
Հայտնի «բեռնատարներ»
Symantec-ը հայտնաբերել է առնվազն չորս տեսակի օգտակար բեռներ, որոնք ներբեռնվել են Duqu կառավարման կենտրոնից հրամանատարության ներքո:
Ընդ որում, դրանցից միայն մեկն էր ռեզիդենտ և կազմված որպես գործարկվող ֆայլ (exe), որը պահվում էր սկավառակի վրա։ Մնացած երեքը ներդրվել են որպես dll գրադարաններ: Դրանք դինամիկ կերպով բեռնվեցին և գործարկվեցին հիշողության մեջ՝ առանց սկավառակի վրա պահվելու:
Բնակիչի «վճարը» լրտեսական մոդուլ էր (ինֆոգող) keylogger ֆունկցիաներով: Այն VirusTotal-ին ուղարկելով էր, որ սկսվեց Duqu-ի հետազոտության աշխատանքները: Հիմնական լրտեսական գործառույթը եղել է ռեսուրսում, որի առաջին 8 կիլոբայթը պարունակում էր NGC 6745 գալակտիկայի լուսանկարի մի մասը (քողարկման համար): Այստեղ պետք է հիշել, որ 2012 թվականի ապրիլին որոշ լրատվամիջոցներ տեղեկություն էին հրապարակել (http://www.mehrnews.com/en/newsdetail.aspx?NewsID=1297506), որ Իրանը ենթարկվել է «Stars» վնասակար ծրագրերի ազդեցությանը, մինչդեռ մանրամասները. միջադեպը չի բացահայտվել։ Թերևս դա Duqu-ի «բեռի» հենց այդպիսի նմուշն էր, որն այն ժամանակ հայտնաբերվեց Իրանում, այստեղից էլ «Աստղեր» անվանումը:
Լրտեսական մոդուլը հավաքել է հետևյալ տեղեկատվությունը.
- գործող պրոցեսների ցանկ, ընթացիկ օգտագործողի և տիրույթի մասին տեղեկատվություն.
- տրամաբանական սկավառակների ցուցակ, ներառյալ ցանցային կրիչներ;
- սքրինշոթներ;
- ցանցային ինտերֆեյսի հասցեներ, երթուղային աղյուսակներ;
- ստեղնաշարի ստեղնաշարերի մատյան ֆայլ;
- բաց հավելվածի պատուհանների անունները;
- հասանելի ցանցային ռեսուրսների ցանկ (համօգտագործման ռեսուրսներ);
- ֆայլերի ամբողջական ցանկ բոլոր սկավառակների վրա, ներառյալ շարժականները.
- «ցանցային միջավայրի» համակարգիչների ցանկը:
Մեկ այլ լրտեսական մոդուլ (ինֆոգող) արդեն նկարագրվածի տարբերակն էր, բայց կազմված էր որպես dll գրադարան, որից հեռացվեցին keylogger-ի գործառույթները, ֆայլերի ցուցակ կազմելը և տիրույթում ընդգրկված համակարգիչների ցուցակագրումը։
Հաջորդ մոդուլը (հետախուզություն) հավաքագրված համակարգի տեղեկատվություն.
- արդյոք համակարգիչը տիրույթի մաս է.
- ուղիներ դեպի Windows համակարգի դիրեկտորիաներ;
- օպերացիոն համակարգի տարբերակը;
- ընթացիկ օգտվողի անունը;
- ցանցային ադապտերների ցուցակ;
- համակարգ և տեղական ժամանակ, ինչպես նաև ժամային գոտի:
Վերջին մոդուլը (կյանքի տևողությունը երկարացնող) իրականացրել է գործառության ավարտին մնացած օրերի արժեքը (պահվում է հիմնական մոդուլի կազմաձևման տվյալների ֆայլում) ֆունկցիան: Լռելյայնորեն, այս արժեքը սահմանվել է 30 կամ 36 օր՝ կախված Duqu-ի փոփոխությունից և ամեն օր նվազում է մեկով:
Հրամանատարական կենտրոններ
20 թվականի հոկտեմբերի 2011-ին (հայտնագործության մասին տեղեկատվության տարածումից երեք օր անց) Duqu-ի օպերատորներն իրականացրեցին հրամանատարական կենտրոնների գործունեության հետքերը ոչնչացնելու ընթացակարգ։ Հրամանատարության կենտրոնները տեղակայված են եղել կոտրված սերվերների վրա ամբողջ աշխարհում՝ Վիետնամում, Հնդկաստանում, Գերմանիայում, Սինգապուրում, Շվեյցարիայում, Մեծ Բրիտանիայում, Հոլանդիայում և Հարավային Կորեայում։ Հետաքրքիր է, որ բոլոր հայտնաբերված սերվերներն աշխատում էին CentOS 5.2, 5.4 կամ 5.5 տարբերակներով: ՕՀ-ները և՛ 32, և՛ 64-բիթանոց էին: Չնայած այն հանգամանքին, որ բոլոր ֆայլերը, որոնք կապված են հրամանատարական կենտրոնների աշխատանքի հետ, ջնջվել են, Kaspersky Lab-ի մասնագետները կարողացել են վերականգնել LOG ֆայլերի տեղեկատվության մի մասը ազատ տարածությունից: Ամենահետաքրքիր փաստն այն է, որ սերվերների վրա հարձակվողները միշտ փոխարինել են լռելյայն OpenSSH 4.3 փաթեթը 5.8 տարբերակով: Սա կարող է ցույց տալ, որ OpenSSH 4.3-ում անհայտ խոցելիություն օգտագործվել է սերվերները կոտրելու համար: Ոչ բոլոր համակարգերն էին օգտագործվում որպես հրամանատարական կենտրոններ: Ոմանք, դատելով sshd տեղեկամատյանների սխալներից, երբ փորձում էին երթևեկությունը վերահղել 80 և 443 նավահանգիստների համար, օգտագործվել են որպես վստահված սերվեր՝ վերջնական հրամանի կենտրոններին միանալու համար:
Ամսաթվեր և մոդուլներ
2011 թվականի ապրիլին տարածված Word փաստաթուղթը, որն ուսումնասիրվել է Կասպերսկու լաբորատորիայի կողմից, պարունակում էր տեղադրիչի ներբեռնման վարորդ՝ 31 թվականի օգոստոսի 2007-ի կազմման ամսաթվով: Նմանատիպ դրայվերը (չափը` 20608 բայթ, MD5 - EEDCA45BD613E0D9A9E5C69122007F17) CrySys լաբորատորիաներում հայտնաբերված փաստաթղթում ուներ 21 թվականի փետրվարի 2008-ի կազմման ամսաթիվը: Բացի այդ, Kaspersky Lab-ի փորձագետները գտել են autorun driver rndismpc.sys (չափը՝ 19968 բայթ, MD5 - 9AEC6E10C5EE9C05BED93221544C783E)՝ 20 թվականի հունվարի 2008-ով: 2009 մակնշված բաղադրիչներ չեն գտնվել: Ելնելով Duqu-ի առանձին մասերի կազմման ժամանակային դրոշմանիշներից՝ դրա զարգացումը կարող է սկսվել 2007 թվականի սկզբից: Դրա ամենավաղ դրսևորումը կապված է ~DO տիպի ժամանակավոր ֆայլերի հայտնաբերման հետ (հավանաբար ստեղծված է լրտեսող ծրագրերի մոդուլներից մեկի կողմից), որի ստեղծման ամսաթիվը 28 թվականի նոյեմբերի 2008-ն է (
Օգտագործված տեղեկատվության աղբյուրները.
Symantec-ի վերլուծական հաշվետվություն
Source: www.habr.com