Matryoshka maleisus yw Duqu

Cyflwyniad

Ar 1 Medi, 2011, anfonwyd ffeil o'r enw ~DN1.tmp i wefan VirusTotal o Hwngari. Bryd hynny, dim ond dau beiriant gwrthfeirws y canfuwyd bod y ffeil yn faleisus - BitDefender ac AVIRA. Dyma sut y dechreuodd stori Duqu. Wrth edrych ymlaen, rhaid dweud bod y teulu malware Duqu wedi'i enwi ar ôl enw'r ffeil hon. Fodd bynnag, mae'r ffeil hon yn fodiwl ysbïwedd hollol annibynnol gyda swyddogaethau keylogger, wedi'i osod, mae'n debyg, gan ddefnyddio dropiwr lawrlwythwr maleisus, a dim ond fel “llwyth tâl” wedi'i lwytho gan y meddalwedd maleisus Duqu yn ystod ei weithrediad y gellir ei ystyried, ac nid fel cydran ( modiwl) o Duqu . Anfonwyd un o gydrannau Duqu i'r gwasanaeth Virustotal ar Fedi 9 yn unig. Ei nodwedd nodedig yw gyrrwr wedi'i lofnodi'n ddigidol gan C-Media. Dechreuodd rhai arbenigwyr ar unwaith dynnu cyfatebiaethau ag enghraifft enwog arall o malware - Stuxnet, a oedd hefyd yn defnyddio gyrwyr wedi'u llofnodi. Mae cyfanswm nifer y cyfrifiaduron heintiedig Duqu a ganfuwyd gan wahanol gwmnïau gwrthfeirws ledled y byd yn y dwsinau. Mae llawer o gwmnïau'n honni mai Iran yw'r prif darged eto, ond a barnu yn ôl dosbarthiad daearyddol heintiau, ni ellir dweud hyn yn sicr.
Matryoshka maleisus yw Duqu
Yn yr achos hwn, dim ond am gwmni arall sydd â gair newydd y dylech siarad yn hyderus APT (bygythiad parhaus uwch).

Gweithdrefn gweithredu system

Arweiniodd ymchwiliad a gynhaliwyd gan arbenigwyr o sefydliad Hwngari CrySyS (Labordy Cryptograffeg a Diogelwch System Hwngari ym Mhrifysgol Technoleg ac Economeg Budapest) at ddarganfod y gosodwr (dropper) y cafodd y system ei heintio drwyddo. Roedd yn ffeil Microsoft Word gyda chamfanteisio ar gyfer bregusrwydd gyrrwr win32k.sys (MS11-087, a ddisgrifiwyd gan Microsoft ar Dachwedd 13, 2011), sy'n gyfrifol am fecanwaith rendro ffontiau TTF. Mae cod cragen y camfanteisio yn defnyddio ffont o'r enw 'Dexter Regular' wedi'i fewnosod yn y ddogfen, gyda Showtime Inc. wedi'i restru fel crëwr y ffont. Fel y gallwch weld, nid yw crewyr Duqu yn ddieithriaid i synnwyr digrifwch: mae Dexter yn llofrudd cyfresol, arwr y gyfres deledu o'r un enw, a gynhyrchwyd gan Showtime. Mae Dexter yn lladd troseddwyr yn unig (os yn bosibl), hynny yw, mae'n torri'r gyfraith yn enw cyfreithlondeb. Yn ôl pob tebyg, yn y modd hwn, mae datblygwyr Duqu yn eironig eu bod yn cymryd rhan mewn gweithgareddau anghyfreithlon at ddibenion da. Roedd anfon e-byst yn bwrpasol. Roedd y llwyth yn fwyaf tebygol o ddefnyddio cyfrifiaduron dan fygythiad (hacio) fel cyfryngwr i wneud olrhain yn anodd.
Felly roedd dogfen Word yn cynnwys y cydrannau canlynol:

  • cynnwys testun;
  • ffont adeiledig;
  • manteisio ar y cod cragen;
  • gyrrwr;
  • gosodwr (llyfrgell DLL).

Os yn llwyddiannus, cyflawnodd y cod cragen ecsbloetio y gweithrediadau canlynol (yn y modd cnewyllyn):

  • cynhaliwyd gwiriad ail-heintio; ar gyfer hyn, gwiriwyd presenoldeb yr allwedd ‘CF4D’ yn y gofrestrfa yn y cyfeiriad ‘HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInternet SettingsZones1’; os oedd hyn yn gywir, cwblhaodd y cod cragen ei weithredu;
  • dadgryptio dwy ffeil - y gyrrwr (sys) a'r gosodwr (dll);
  • chwistrellwyd y gyrrwr i'r broses services.exe a lansiodd y gosodwr;
  • Yn olaf, dileuodd y cod cragen ei hun gyda sero yn y cof.

Oherwydd y ffaith bod win32k.sys yn cael ei weithredu ar ran y defnyddiwr breintiedig 'System', mae datblygwyr Duqu wedi datrys y broblem o lansio heb awdurdod a chyfeirio hawliau yn gain (sy'n rhedeg o dan gyfrif defnyddiwr â hawliau cyfyngedig).
Ar ôl derbyn rheolaeth, dadgryptioodd y gosodwr dri bloc o ddata sydd ynddo yn y cof, gan gynnwys:

  • gyrrwr wedi'i lofnodi (sys);
  • prif fodiwl (dll);
  • data cyfluniad gosodwr (pnf).

Pennwyd ystod dyddiad yn y data cyfluniad gosodwr (ar ffurf dwy stamp amser - dechrau a diwedd). Gwiriodd y gosodwr a oedd y dyddiad cyfredol wedi'i gynnwys ynddo, ac os na, cwblhaodd ei weithrediad. Hefyd yn y data ffurfweddu gosodwr oedd yr enwau y cafodd y gyrrwr a'r prif fodiwl eu cadw oddi tanynt. Yn yr achos hwn, cadwyd y prif fodiwl ar ddisg ar ffurf wedi'i hamgryptio.

Matryoshka maleisus yw Duqu

I gychwyn Duqu yn awtomatig, crëwyd gwasanaeth gan ddefnyddio ffeil gyrrwr a oedd yn dadgryptio'r prif fodiwl ar y hedfan gan ddefnyddio allweddi a oedd wedi'u storio yn y gofrestrfa. Mae'r prif fodiwl yn cynnwys ei floc data ffurfweddu ei hun. Pan gafodd ei lansio gyntaf, cafodd ei ddadgryptio, cofnodwyd y dyddiad gosod ynddo, ac ar ôl hynny cafodd ei amgryptio eto a'i gadw gan y prif fodiwl. Felly, yn y system yr effeithiwyd arni, ar ôl ei gosod yn llwyddiannus, arbedwyd tair ffeil - y gyrrwr, y prif fodiwl a'i ffeil ddata ffurfweddu, tra bod y ddwy ffeil olaf yn cael eu storio ar ddisg mewn ffurf wedi'i hamgryptio. Dim ond er cof y cyflawnwyd yr holl weithdrefnau datgodio. Defnyddiwyd y weithdrefn osod gymhleth hon i leihau'r posibilrwydd o ganfod gan feddalwedd gwrthfeirws.

Y prif fodiwl

Prif fodiwl (adnodd 302), yn ôl gwybodaeth cwmni Kaspersky Lab, a ysgrifennwyd gan ddefnyddio MSVC 2008 mewn C pur, ond gan ddefnyddio dull gwrthrych-ganolog. Mae'r dull hwn yn annodweddiadol wrth ddatblygu cod maleisus. Fel rheol, mae cod o'r fath wedi'i ysgrifennu yn C i leihau'r maint a chael gwared ar y galwadau ymhlyg sy'n gynhenid ​​​​yn C ++. Mae yna symbiosis penodol yma. Hefyd, defnyddiwyd pensaernïaeth wedi'i gyrru gan ddigwyddiadau. Mae gweithwyr Kaspersky Lab yn tueddu i'r ddamcaniaeth bod y prif fodiwl wedi'i ysgrifennu gan ddefnyddio ychwanegiad cyn-brosesydd sy'n eich galluogi i ysgrifennu cod C mewn arddull gwrthrych.
Mae'r prif fodiwl yn gyfrifol am y weithdrefn ar gyfer derbyn gorchmynion gan weithredwyr. Mae Duqu yn darparu sawl dull o ryngweithio: defnyddio'r protocolau HTTP a HTTPS, yn ogystal â defnyddio pibellau a enwir. Ar gyfer HTTP(S), pennwyd enwau parth canolfannau gorchymyn, a darparwyd y gallu i weithio trwy weinydd dirprwyol - pennwyd enw defnyddiwr a chyfrinair ar eu cyfer. Mae'r cyfeiriad IP a'i enw wedi'u nodi ar gyfer y sianel. Mae'r data penodedig yn cael ei storio ym mloc data cyfluniad y prif fodiwl (ar ffurf wedi'i hamgryptio).
Er mwyn defnyddio pibellau a enwir, lansiwyd ein gweithrediad gweinydd RPC ein hunain. Roedd yn cefnogi’r saith swyddogaeth ganlynol:

  • dychwelyd y fersiwn gosod;
  • chwistrellu dll i'r broses benodedig a galw'r swyddogaeth benodedig;
  • dll llwyth;
  • cychwyn proses trwy ffonio CreateProcess();
  • darllen cynnwys ffeil benodol;
  • ysgrifennu data i'r ffeil penodedig;
  • dileu'r ffeil penodedig.

Gellid defnyddio pibellau a enwir o fewn rhwydwaith lleol i ddosbarthu modiwlau wedi'u diweddaru a data ffurfweddu rhwng cyfrifiaduron sydd wedi'u heintio â Duqu. Yn ogystal, gallai Duqu weithredu fel gweinydd dirprwyol ar gyfer cyfrifiaduron heintiedig eraill (nad oedd ganddynt fynediad i'r Rhyngrwyd oherwydd y gosodiadau wal dân ar y porth). Nid oedd gan rai fersiynau o Duqu ymarferoldeb RPC.

Gelwir "llwythi cyflog"

Darganfu Symantec o leiaf bedwar math o lwythi tâl wedi'u llwytho i lawr o dan orchymyn o ganolfan reoli Duqu.
Ar ben hynny, dim ond un ohonynt oedd yn byw ac wedi'i lunio fel ffeil gweithredadwy (exe), a gafodd ei chadw ar ddisg. Gweithredwyd y tri arall fel llyfrgelloedd dll. Cawsant eu llwytho'n ddeinamig a'u gweithredu yn y cof heb eu cadw ar ddisg.

Modiwl ysbïwr oedd y "llwyth cyflog" preswylydd (infostealer) gyda swyddogaethau keylogger. Trwy ei anfon at VirusTotal y dechreuodd y gwaith ar ymchwil Duqu. Roedd y prif swyddogaeth ysbïwr yn yr adnodd, ac roedd yr 8 cilobeit cyntaf ohonynt yn cynnwys rhan o lun o'r alaeth NGC 6745 (ar gyfer cuddliw). Dylid cofio yma, ym mis Ebrill 2012, bod rhai cyfryngau wedi cyhoeddi gwybodaeth (http://www.mehrnews.com/en/newsdetail.aspx?NewsID=1297506) bod Iran wedi dod i gysylltiad â rhai meddalwedd maleisus “Stars”, tra bod manylion am ni ddatgelwyd y digwyddiad. Efallai mai dim ond sampl o’r “llwyth cyflog” Duqu a ddarganfuwyd bryd hynny yn Iran, a dyna pam yr enw “Stars”.
Casglodd y modiwl ysbïwr y wybodaeth ganlynol:

  • rhestr o brosesau rhedeg, gwybodaeth am y defnyddiwr presennol a'r parth;
  • rhestr o yriannau rhesymegol, gan gynnwys gyriannau rhwydwaith;
  • sgrinluniau;
  • cyfeiriadau rhyngwyneb rhwydwaith, tablau llwybro;
  • ffeil log o drawiadau bysell bysellfwrdd;
  • enwau ffenestri cais agored;
  • rhestr o adnoddau rhwydwaith sydd ar gael (rhannu adnoddau);
  • rhestr gyflawn o ffeiliau ar bob disg, gan gynnwys rhai symudadwy;
  • rhestr o gyfrifiaduron yn yr “amgylchedd rhwydwaith”.

Modiwl ysbïwr arall (infostealer) yn amrywiad o'r hyn a ddisgrifiwyd eisoes, ond a luniwyd fel llyfrgell dll; tynnwyd swyddogaethau logiwr bysell, llunio rhestr o ffeiliau a rhestru cyfrifiaduron sydd wedi'u cynnwys yn y parth ohono.
Modiwl nesaf (rhagchwilio) gwybodaeth system a gasglwyd:

  • a yw'r cyfrifiadur yn rhan o barth;
  • llwybrau i gyfeiriaduron system Windows;
  • fersiwn system weithredu;
  • enw defnyddiwr presennol;
  • rhestr o addaswyr rhwydwaith;
  • system ac amser lleol, yn ogystal â pharth amser.

Modiwl olaf (estynydd oes) gweithredu swyddogaeth i gynyddu gwerth (a storir yn y ffeil ddata cyfluniad prif fodiwl) o'r nifer o ddyddiau sy'n weddill nes bod y swydd wedi'i chwblhau. Yn ddiofyn, gosodwyd y gwerth hwn i 30 neu 36 diwrnod yn dibynnu ar yr addasiad Duqu, a gostyngodd un bob dydd.

Canolfannau gorchymyn

Ar Hydref 20, 2011 (tri diwrnod ar ôl i wybodaeth am y darganfyddiad gael ei lledaenu), cynhaliodd gweithredwyr Duqu weithdrefn i ddinistrio olion gweithrediad y canolfannau gorchymyn. Roedd canolfannau gorchymyn wedi'u lleoli ar weinyddion wedi'u hacio ledled y byd - yn Fietnam, India, yr Almaen, Singapôr, y Swistir, Prydain Fawr, yr Iseldiroedd, a De Korea. Yn ddiddorol, roedd yr holl weinyddion a nodwyd yn rhedeg fersiynau CentOS 5.2, 5.4 neu 5.5. Roedd yr OS yn 32-bit a 64-bit. Er gwaethaf y ffaith bod yr holl ffeiliau sy'n ymwneud â gweithredu canolfannau gorchymyn wedi'u dileu, roedd arbenigwyr Kaspersky Lab yn gallu adennill rhywfaint o'r wybodaeth o ffeiliau LOG ​​o ofod slac. Y ffaith fwyaf diddorol yw bod ymosodwyr ar weinyddion bob amser yn disodli'r pecyn OpenSSH 4.3 rhagosodedig gyda fersiwn 5.8. Gall hyn ddangos bod bregusrwydd anhysbys yn OpenSSH 4.3 wedi'i ddefnyddio i hacio gweinyddwyr. Ni ddefnyddiwyd pob system fel canolfannau gorchymyn. Defnyddiwyd rhai, a barnu yn ôl y gwallau yn y logiau sshd wrth geisio ailgyfeirio traffig ar gyfer porthladdoedd 80 a 443, fel gweinydd dirprwy i gysylltu â'r canolfannau gorchymyn diwedd.

Dyddiadau a modiwlau

Roedd dogfen Word a ddosbarthwyd ym mis Ebrill 2011, a archwiliwyd gan Kaspersky Lab, yn cynnwys gyrrwr lawrlwytho gosodwr gyda dyddiad casglu o Awst 31, 2007. Roedd gan yrrwr tebyg (maint - 20608 bytes, MD5 - EEDCA45BD613E0D9A9E5C69122007F17) mewn dogfen a ddarganfuwyd yn labordai CrySys ddyddiad llunio o Chwefror 21, 2008. Yn ogystal, canfu arbenigwyr Kaspersky Lab y gyrrwr autorun rndismpc.sys (maint - 19968 bytes, MD5 - 9AEC6E10C5EE9C05BED93221544C783E) gyda'r dyddiad Ionawr 20, 2008. Ni ddaethpwyd o hyd i unrhyw gydrannau a nodir yn 2009. Yn seiliedig ar yr amserlenni ar gyfer casglu rhannau unigol o Duqu, gallai ei ddatblygiad ddyddio'n ôl i ddechrau 2007. Mae ei amlygiad cynharaf yn gysylltiedig â chanfod ffeiliau dros dro o'r math ~DO (yn ôl pob tebyg wedi'u creu gan un o'r modiwlau ysbïwedd), y dyddiad creu yw Tachwedd 28, 2008 (erthygl "Duqu & Stuxnet: Llinell Amser o Ddigwyddiadau Diddorol"). Y dyddiad diweddaraf sy'n gysylltiedig â Duqu oedd Chwefror 23, 2012, wedi'i gynnwys mewn gyrrwr lawrlwytho gosodwr a ddarganfuwyd gan Symantec ym mis Mawrth 2012.

Ffynonellau gwybodaeth a ddefnyddiwyd:

gyfres o erthyglau am Duqu o Kaspersky Lab;
Adroddiad dadansoddol Symantec "W32.Duqu Y rhagflaenydd i'r Stuxnet nesaf", fersiwn 1.4, Tachwedd 2011 (pdf).

Ffynhonnell: hab.com

Ychwanegu sylw