Yn y post, byddwn yn dweud wrthych sut y defnyddiodd seiber-grŵp OceanLotus (APT32 ac APT-C-00) un o'r campau sydd ar gael yn gyhoeddus ar gyfer
Mae OceanLotus yn arbenigo mewn ysbïo seiber, y targedau blaenoriaeth yw gwledydd De-ddwyrain Asia. Mae ymosodwyr yn ffugio dogfennau sy'n denu sylw dioddefwyr posibl er mwyn eu darbwyllo i gynnal drws cefn, a hefyd yn gweithio ar ddatblygu offer. Mae'r dulliau a ddefnyddir i greu potiau mêl yn amrywio mewn gwahanol ymosodiadau - o ffeiliau "estyniad dwbl", archifau hunan-echdynnu, dogfennau macro, i gampau adnabyddus.
Defnyddio'r camfanteisio yn Microsoft Equation Editor
Yng nghanol 2018, cynhaliodd OceanLotus ymgyrch i fanteisio ar fregusrwydd CVE-2017-11882. Dadansoddwyd un o ddogfennau maleisus y grŵp seiber gan 360 o arbenigwyr y Ganolfan Cudd-wybodaeth Bygythiad (
Cam cyntaf
Y ddogfen FW Report on demonstration of former CNRP in Republic of Korea.doc
(sha-1: D1357B284C951470066AAA7A8228190B88A5C7C3
) yn debyg i'r hyn a grybwyllwyd yn yr astudiaeth uchod. Mae'n ddiddorol gan ei fod wedi'i anelu at ddefnyddwyr sydd â diddordeb mewn gwleidyddiaeth Cambodia (CNRP - Cambodia National Salvation Party, a ddiddymwyd ar ddiwedd 2017). Er gwaethaf yr estyniad .doc, mae'r ddogfen mewn fformat RTF (gweler y ffigur isod), yn cynnwys cod sothach, ac mae hefyd yn sothach.
Ffigur 1. Sbwriel yn RTF
Er gwaethaf presenoldeb elfennau wedi'u camffurfio, mae Word yn agor y ffeil RTF hon yn llwyddiannus. Fel y gwelwch yn Ffigur 2, dyma strwythur EQNOLEFILEHDR ar wrthbwyso 0xC00 wedi'i ddilyn gan bennawd MTEF ac yna cofnod MTEF (Ffigur 3) ar gyfer y ffont.
Ffigur 2. FONT Cofnod Gwerthoedd
Ffigur 3.
Gorlif maes posibl enw, oherwydd nid yw ei faint yn cael ei wirio cyn copïo. Enw rhy hir yn sbarduno'r bregusrwydd. Fel y gallwch weld o gynnwys y ffeil RTF (gwrthbwyso 0xC26 yn Ffigur 2), mae'r byffer wedi'i lenwi â chod cregyn ac yna gorchymyn ffug (0x90
) a chyfeiriad dychwelyd 0x402114
. Mae'r cyfeiriad yn elfen deialog yn EQNEDT32.exe
pwyntio at gyfarwyddiadau RET
. Mae hyn yn achosi EIP i bwyntio at ddechrau'r maes enwMae'r cynnwys y cod cragen.
Ffigur 4. Dechrau'r cod cragen ymelwa
Cyfeiriad 0x45BD3C
yn storio newidyn sydd wedi'i ddadgyfeirio nes iddo gyrraedd pwyntydd i'r strwythur sydd wedi'i lwytho ar hyn o bryd MTEFData
. Dyma weddill y cod cragen.
Pwrpas y cod cragen yw gweithredu'r ail ddarn o god cregyn sydd wedi'i fewnosod yn y ddogfen agored. Yn gyntaf, mae'r cod cragen gwreiddiol yn ceisio dod o hyd i ddisgrifydd ffeil y ddogfen agored trwy ailadrodd dros yr holl ddisgrifyddion system (NtQuerySystemInformation
gyda dadl SystemExtendedHandleInformation
) a gwirio a ydynt yn cyfateb PID disgrifydd a PID broses WinWord
ac a agorwyd y ddogfen gyda mwgwd mynediad - 0x12019F
.
I gadarnhau bod y ddolen gywir wedi'i chanfod (ac nid handlen dogfen agored arall), dangosir cynnwys y ffeil gan ddefnyddio'r ffwythiant CreateFileMapping
, ac mae'r cod cragen yn gwirio a yw pedwar beit olaf y ddogfen yn cyfateb"yyyy
» (Dull Hela Wyau). Unwaith y canfyddir cyfatebiaeth, caiff y ddogfen ei chopïo i ffolder dros dro (GetTempPath
) Sut ole.dll
. Yna darllenir 12 beit olaf y ddogfen.
Ffigur 5. Marcwyr Diwedd y Ddogfen
Gwerth 32-did rhwng marcwyr AABBCCDD
и yyyy
yw gwrthbwyso'r cod cragen nesaf. Fe'i gelwir gyda swyddogaeth CreateThread
. Wedi tynnu'r un cod cragen a ddefnyddiwyd gan grŵp OceanLotus yn gynharach.
Ail gam
Echdynnu Cydrannau
Dewisir enwau ffeiliau a chyfeiriaduron yn ddeinamig. Mae'r cod yn dewis enw ffeil gweithredadwy neu DLL ar hap C:Windowssystem32
. Yna mae'n gwneud cais i'w adnoddau ac yn adfer y maes FileDescription
i'w ddefnyddio fel enw'r ffolder. Os nad yw hynny'n gweithio, mae'r cod yn dewis enw ffolder ar hap o'r cyfeiriaduron %ProgramFiles%
neu C:Windows
(o GetWindowsDirectoryW). Mae'n osgoi defnyddio enw a allai wrthdaro â ffeiliau presennol ac yn sicrhau nad yw'n cynnwys y geiriau canlynol: windows
, Microsoft
, desktop
, system
, system32
neu syswow64
. Os yw'r cyfeiriadur yn bodoli eisoes, mae "NLS_{6 characters}" wedi'i atodi i'r enw.
adnodd 0x102
dosrannu a dympio ffeiliau i mewn %ProgramFiles%
neu %AppData%
, i ffolder a ddewiswyd ar hap. Newidiodd amser creu i gael yr un gwerthoedd â kernel32.dll
.
Er enghraifft, dyma'r ffolder a'r rhestr o ffeiliau a grëwyd trwy ddewis y gweithredadwy C:Windowssystem32TCPSVCS.exe
fel ffynhonnell ddata.
Ffigur 6. Echdynnu gwahanol gydrannau
Strwythur adnoddau 0x102
mewn dropper yn eithaf cymhleth. Yn gryno, mae'n cynnwys:
- enwau ffeiliau
— Maint ffeil a chynnwys
— Fformat cywasgu (COMPRESSION_FORMAT_LZNT1
a ddefnyddir gan y swyddogaeth RtlDecompressBuffer
)
Mae'r ffeil gyntaf yn cael ei ddympio fel TCPSVCS.exe
, sy'n gyfreithlon AcroTranscoder.exe
(yn ôl FileDescription
, SHA-1: 2896738693A8F36CC7AD83EF1FA46F82F32BE5A3
).
Efallai eich bod wedi sylwi bod rhai ffeiliau DLL dros 11MB o ran maint. Mae hyn oherwydd bod byffer cyffiniol mawr o ddata ar hap yn cael ei osod y tu mewn i'r gweithredadwy. Mae'n bosibl bod hyn yn ffordd o osgoi canfod gan rai cynhyrchion diogelwch.
Sicrhau dyfalbarhad
adnodd 0x101
yn y dropper yn cynnwys dau gyfanrif 32-did sy'n nodi sut y dylid gorfodi dyfalbarhad. Mae gwerth y cyntaf yn nodi sut y bydd y malware yn parhau heb hawliau gweinyddwr.
Tabl 1. Mecanwaith Dyfalbarhad heb fod yn Weinyddwr
Mae gwerth yr ail gyfanrif yn nodi sut y dylai'r malware sicrhau dyfalbarhad trwy redeg gyda breintiau gweinyddol.
Tabl 2. Mecanwaith Dyfalbarhad Gweinyddwr
Enw'r gwasanaeth yw enw'r ffeil heb yr estyniad; yr enw arddangos yw enw'r ffolder, ond os yw'n bodoli eisoes, y llinyn "Revision 1
” (mae'r rhif yn cynyddu nes dod o hyd i enw nas defnyddiwyd). Mae'r gweithredwyr wedi cymryd gofal bod dyfalbarhad trwy'r gwasanaeth yn wydn - rhag ofn y bydd methiant, rhaid ailgychwyn y gwasanaeth ar ôl 1 eiliad. Yna y gwerth WOW64
Mae'r allwedd gofrestrfa newydd ar gyfer y gwasanaeth wedi'i gosod i 4, sy'n nodi mai gwasanaeth 32-did yw hwn.
Mae tasg wedi'i threfnu yn cael ei chreu trwy sawl rhyngwyneb COM: ITaskScheduler
, ITask
, ITaskTrigger
, IPersistFile
и ITaskScheduler
. Yn y bôn, mae'r malware yn creu tasg gudd, yn gosod gwybodaeth y cyfrif ynghyd â gwybodaeth gyfredol y defnyddiwr neu'r gweinyddwr, ac yna'n gosod y sbardun.
Mae hon yn dasg ddyddiol sy'n para 24 awr a chyfnodau rhwng dau rediad o 10 munud, sy'n golygu y bydd yn rhedeg yn gyson.
Did Maleisus
Yn ein hesiampl ni, y gweithredadwy TCPSVCS.exe
(AcroTranscoder.exe
) yn feddalwedd gyfreithlon sy'n llwytho'r DLLs sy'n cael eu gollwng ag ef. Yn yr achos hwn, mae o ddiddordeb Flash Video Extension.dll
.
Ei swyddogaeth DLLMain
dim ond yn galw swyddogaeth arall. Mae yna rai rhagfynegiadau niwlog:
Ffigur 7. Rhagfynegiadau niwlog
Ar ôl y gwiriadau camarweiniol hyn, mae'r cod yn cael adran .text
ffeil TCPSVCS.exe
, yn newid ei amddiffyniad i PAGE_EXECUTE_READWRITE
ac yn ei drosysgrifo gyda chyfarwyddiadau ffug:
Ffigur 8. Dilyniant y cyfarwyddiadau
Ar y diwedd i gyfeiriad y swyddogaeth FLVCore::Uninitialize(void)
, allforio Flash Video Extension.dll
, ychwanegir y cyfarwyddyd CALL
. Mae hyn yn golygu, ar ôl i'r DLL maleisus gael ei lwytho, pan fydd yr amser rhedeg yn galw WinMain
в TCPSVCS.exe
, bydd y pwyntydd cyfarwyddyd yn pwyntio at NOP, gan arwain at alw FLVCore::Uninitialize(void)
, cam nesaf.
Mae'r swyddogaeth yn syml yn creu mutex gan ddechrau {181C8480-A975-411C-AB0A-630DB8B0A221}
ac yna'r enw defnyddiwr presennol. Yna mae'n darllen y ffeil dympio *.db3, sy'n cynnwys cod annibynnol ar leoliad, a defnyddiau CreateThread
i weithredu cynnwys.
Cynnwys y ffeil *.db3 yw'r cod cragen y mae tîm OceanLotus yn ei ddefnyddio fel arfer. Unwaith eto fe wnaethom ddatgywasgu ei lwyth tâl yn llwyddiannus gan ddefnyddio'r sgript efelychydd a gyhoeddwyd gennym.
Mae'r sgript yn adfer y cam olaf. Mae'r gydran hon yn ddrws cefn yr ydym eisoes wedi dadansoddi ynddo {A96B020F-0000-466F-A96D-A91BBF8EAC96}
ffeil deuaidd. Mae'r ffurfweddiad malware yn dal i gael ei amgryptio yn yr adnodd AG. Mae ganddo fwy neu lai yr un ffurfweddiad, ond mae'r gweinyddwyr C&C yn wahanol i'r rhai blaenorol:
- andreagahuvrauvin[.]com
- byronorenstein[.]com
- stienollmache[.]xyz
Unwaith eto mae grŵp OceanLotus yn dangos cyfuniad o wahanol dechnegau i osgoi canfod. Fe wnaethant ddychwelyd gyda chynllun "gorffenedig" o'r broses heintio. Trwy ddewis enwau ar hap a llenwi gweithredoedd gweithredadwy â data ar hap, maent yn lleihau nifer yr IoCs dibynadwy (yn seiliedig ar hashes ac enwau ffeiliau). Ar ben hynny, trwy ddefnyddio llwytho DLL trydydd parti, dim ond angen i ymosodwyr gael gwared ar y deuaidd cyfreithlon AcroTranscoder
.
Archifau hunan-echdynnu
Ar ôl ffeiliau RTF, newidiodd y grŵp i archifau hunan-echdynnu (SFX) gydag eiconau dogfen cyffredin i ddrysu'r defnyddiwr ymhellach. Ysgrifennodd Threatbook amdano ({A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
. Ers canol mis Ionawr 2019, mae OceanLotus wedi bod yn ailddefnyddio'r dechneg hon, ond yn newid rhai ffurfweddiadau dros amser. Yn yr adran hon, byddwn yn siarad am y dechneg a'r newidiadau.
Creu atyniad
Y ddogfen THICH-THONG-LAC-HANH-THAP-THIEN-VIET-NAM (1).EXE
(sha-1: AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB
) a ddarganfuwyd gyntaf yn 2018. Crëwyd y ffeil SFX hon gyda'r meddwl - yn y disgrifiad (Gwybodaeth Fersiwn) yn dweud ei fod yn ddelwedd JPEG. Mae'r sgript SFX yn edrych fel hyn:
Ffigur 9. Gorchmynion SFX
Mae'r malware yn ailosod {9ec60ada-a200-4159-b310-8071892ed0c3}.ocx
(sha-1: EFAC23B0E6395B1178BCF7086F72344B24C04DCC
), yn ogystal â llun 2018 thich thong lac.jpg.
Mae'r ddelwedd decoy yn edrych fel hyn:
Ffigur 10. Delwedd Decoy
Efallai eich bod wedi sylwi bod y ddwy linell gyntaf yn y sgript SFX yn galw'r ffeil OCX ddwywaith, ond nid gwall yw hwn.
{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)
Mae llif rheoli'r ffeil OCX yn debyg iawn i gydrannau OceanLotus eraill - llawer o ddilyniannau gorchymyn JZ/JNZ
и PUSH/RET
rhyngddalennog gyda chod sothach.
Ffigur 11. Cod rhwystredig
Ar ôl hidlo'r cod garbage, yr allforio DllRegisterServer
, a elwir regsvr32.exe
, fel a ganlyn:
Ffigur 12. Cod y prif osodwr
Yn y bôn, y tro cyntaf i chi ffonio DllRegisterServer
allforio yn gosod gwerth cofrestrfa HKCUSOFTWAREClassesCLSID{E08A0F4B-1F65-4D4D-9A09-BD4625B9C5A1}Model
ar gyfer gwrthbwyso wedi'i amgryptio yn DLL (0x10001DE0
).
Pan elwir y swyddogaeth eilwaith, mae'n darllen yr un gwerth ac yn gweithredu yn y cyfeiriad hwnnw. O'r fan hon, mae'r adnodd yn cael ei ddarllen a'i weithredu, ac mae llawer o gamau gweithredu yn cael eu perfformio yn RAM.
Y cod cragen yw'r un llwythwr AG a ddefnyddiwyd mewn ymgyrchoedd OceanLotus yn y gorffennol. Gellir ei efelychu gyda db293b825dcc419ba7dc2c49fa2757ee.dll
, yn ei lwytho i'r cof ac yn gweithredu DllEntry
.
Mae'r DLL yn echdynnu cynnwys ei adnodd, yn dadgryptio (AES-256-CBC) ac yn ei ddatgywasgu (LZMA). Mae gan yr adnodd fformat penodol sy'n hawdd ei ddadgrynhoi.
Ffigur 13. Strwythur cyfluniad gosodwr (KaitaiStruct Visualizer)
Mae'r ffurfweddiad wedi'i osod yn benodol - yn dibynnu ar lefel y fraint, ysgrifennir at ddata deuaidd %appdata%IntellogsBackgroundUploadTask.cpl
neu %windir%System32BackgroundUploadTask.cpl
(Neu SysWOW64
ar gyfer systemau 64-bit).
Sicrheir dyfalbarhad pellach trwy greu tasg a enwir BackgroundUploadTask[junk].job
lle [junk]
yn set o beit 0x9D
и 0xA0
.
Enw cais tasg %windir%System32control.exe
, a gwerth y paramedr yw'r llwybr i'r ffeil ddeuaidd sydd wedi'i lawrlwytho. Mae'r dasg cudd yn rhedeg bob dydd.
Yn strwythurol, mae ffeil CPL yn DLL gydag enw mewnol ac8e06de0a6c4483af9837d96504127e.dll
, sy'n allforio y swyddogaeth CPlApplet
. Mae'r ffeil hon yn dadgryptio ei hunig adnodd {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
, yna'n llwytho'r DLL hwnnw ac yn galw ei unig allforio DllEntry
.
Ffeil ffurfweddu drws cefn
Mae cyfluniad y drws cefn wedi'i amgryptio a'i ymgorffori yn ei adnoddau. Mae strwythur y ffeil ffurfweddu yn debyg iawn i'r un blaenorol.
Ffigur 14. Strwythur cyfluniad drws cefn (KaitaiStruct Visualizer)
Er gwaethaf y strwythur tebyg, mae gwerthoedd llawer o feysydd wedi'u diweddaru o'u cymharu â'r data a ddangosir yn
Mae elfen gyntaf yr arae ddeuaidd yn cynnwys y DLL (HttpProv.dll
MD5: 2559738D1BD4A999126F900C7357B759
),
Ymchwil Ychwanegol
Wrth gasglu samplau, gwnaethom dalu sylw i rai nodweddion. Ymddangosodd y sampl a ddisgrifiwyd yn ddiweddar tua mis Gorffennaf 2018, ac ymddangosodd eraill tebyg yn fwy diweddar, ganol mis Ionawr - dechrau mis Chwefror 2019. Defnyddiwyd archif SFX fel fector haint, gan ollwng dogfen decoy gyfreithlon a ffeil OCX maleisus.
Er bod OceanLotus yn defnyddio stampiau amser ffug, fe wnaethom sylwi bod stampiau amser ffeiliau SFX ac OCX bob amser yr un peth (0x57B0C36A
(08/14/2016 @ 7:15pm UTC) a 0x498BE80F
(02/06/2009 @ 7:34am UTC) yn y drefn honno). Mae'n debyg bod hyn yn dangos bod gan yr awduron ryw fath o "adeiladwr" sy'n defnyddio'r un templedi a dim ond yn newid rhai nodweddion.
Ymhlith y dogfennau rydyn ni wedi'u hastudio ers dechrau 2018, mae yna enwau amrywiol sy'n nodi'r gwledydd o ddiddordeb ymosodol:
- Gwybodaeth Gyswllt Newydd Cambodia Media(New).xls.exe
- 李建香 (个人简历).exe (dogfen pdf ffug o CV)
- adborth, Rali yn UDA o Orffennaf 28-29, 2018.exe
Ers darganfod y drws cefn {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
a chyhoeddi ei ddadansoddiad gan nifer o ymchwilwyr, gwelsom rai newidiadau mewn data ffurfweddu malware.
Yn gyntaf, dechreuodd yr awduron dynnu enwau o'r cynorthwyydd DLL DLLs (DNSprov.dll
a dwy fersiwn HttpProv.dll
). Yna rhoddodd y gweithredwyr y gorau i becynnu'r trydydd DLL (ail fersiwn HttpProv.dll
), dewis gwreiddio un yn unig.
Yn ail, mae llawer o feysydd cyfluniad drws cefn wedi'u newid, yn ôl pob tebyg er mwyn osgoi canfod gan fod llawer o IoCs wedi dod ar gael. Ymhlith y meysydd pwysig a addaswyd gan yr awduron mae'r canlynol:
- newid allwedd cofrestrfa AppX (gweler IoCs)
- llinyn amgodio mutex ("def", "abc", "ghi")
- rhif porthladd
Yn olaf, mae gan bob fersiwn newydd a ddadansoddwyd C&Cs newydd wedi'u rhestru yn yr adran IoCs.
Canfyddiadau
Mae OceanLotus yn parhau i esblygu. Mae'r grŵp seiber yn canolbwyntio ar fireinio ac ehangu'r offer a'r llithiau. Mae awduron yn cuddio llwythi tâl maleisus â dogfennau sy'n tynnu sylw sy'n berthnasol i'r dioddefwyr arfaethedig. Maent yn datblygu cylchedau newydd a hefyd yn defnyddio offer sydd ar gael yn gyhoeddus megis ymelwa ar y Golygydd Hafaliad. Ar ben hynny, maent yn gwella'r offer i leihau nifer yr arteffactau sy'n cael eu gadael ar beiriannau dioddefwyr, a thrwy hynny leihau'r siawns o gael eu canfod gan feddalwedd gwrthfeirws.
Dangosyddion cyfaddawd
Mae dangosyddion cyfaddawd yn ogystal â phriodoleddau MITER ATT&CK ar gael
Ffynhonnell: hab.com