F'din il-kariga se ngħidulek kif il-grupp ċibernetiku OceanLotus (APT32 u APT-C-00) reċentement uża wieħed mill-isfruttament disponibbli pubblikament għal , il-vulnerabbiltajiet tal-korruzzjoni tal-memorja fil-Microsoft Office, u kif il-malware tal-grupp jikseb persistenza fuq sistemi kompromessi mingħajr ma jħalli traċċa. Sussegwentement, se niddeskrivu kif, mill-bidu tal-2019, il-grupp ilu juża arkivji li estratt lilu nnifsu biex imexxi l-kodiċi.
OceanLotus jispeċjalizza fl-ispjunaġġ ċibernetiku, bil-miri prijoritarji jkunu pajjiżi fix-Xlokk tal-Asja. L-attakkanti jifformaw dokumenti li jiġbdu l-attenzjoni tal-vittmi potenzjali biex jikkonvinċuhom jesegwixxu l-backdoor, u qed jaħdmu wkoll fuq l-iżvilupp ta 'għodod. Il-metodi użati biex jinħolqu honeypots ivarjaw bejn l-attakki, minn fajls ta '"estensjoni doppja", arkivji li jiġu estratti waħedhom, dokumenti b'macros, għal exploits magħrufa.

L-użu ta 'exploit fil-Microsoft Equation Editor
F'nofs l-2018, OceanLotus wettqet kampanja li tisfrutta l-vulnerabbiltà CVE-2017-11882. Wieħed mid-dokumenti malizzjużi tal-grupp ċibernetiku ġie analizzat minn speċjalisti minn 360 Threat Intelligence Center (), inkluża deskrizzjoni dettaljata tal-isfruttament. Il-post hawn taħt fih ħarsa ġenerali ta 'tali dokument malizzjuż.
L-ewwel stadju
Dokument FW Report on demonstration of former CNRP in Republic of Korea.doc (SHA-1: D1357B284C951470066AAA7A8228190B88A5C7C3) huwa simili għal dak imsemmi fl-istudju hawn fuq. Huwa interessanti għaliex huwa mmirat għal utenti interessati fil-politika tal-Kambodja (CNRP - Cambodia National Rescue Party, xolt fl-aħħar tal-2017). Minkejja l-estensjoni .doc, id-dokument huwa f'format RTF (ara l-istampa hawn taħt), fih kodiċi taż-żibel, u huwa wkoll distort.

Figura 1. "Żibel" f'RTF
Anke jekk hemm elementi mħawda, Word tiftaħ dan il-fajl RTF b'suċċess. Kif tistgħu taraw fil-Figura 2, hemm struttura EQNOLEFILEHDR f'offset 0xC00, segwit minn header MTEF, u mbagħad entrata MTEF (Figura 3) għat-tipa.

Figura 2. Valuri tad-dħul FONT

Figura 3.
Possibbli overflow fil-għalqa isem, minħabba li d-daqs tiegħu ma jiġix iċċekkjat qabel l-ikkupjar. Isem li huwa twil wisq iqajjem vulnerabbiltà. Kif tistgħu taraw mill-kontenut tal-fajl RTF (offset 0xC26 fil-Figura 2), il-buffer huwa mimli b'shellcode segwit minn kmand finta (0x90) u l-indirizz tar-ritorn 0x402114. L-indirizz huwa element ta' djalogu fi EQNEDT32.exe, li jindika l-istruzzjonijiet RET. Dan jikkawża l-EIP biex jindika l-bidu tal-qasam isemli jkun fih il-shellcode.

Figura 4. Bidu tal-isfruttament shellcode
Indirizz 0x45BD3C jaħżen varjabbli li hija dereferenced sakemm tilħaq pointer għall-istruttura attwalment mgħobbija MTEFData. Il-bqija tal-shellcode huwa hawn.
L-għan tal-shellcode huwa li tesegwixxi t-tieni biċċa tal-shellcode inkorporata fid-dokument miftuħ. Il-shellcode oriġinali l-ewwel jipprova jsib id-deskrittur tal-fajl tad-dokument miftuħ billi jtenni fuq id-deskritturi tas-sistema kollha (NtQuerySystemInformation b’argument SystemExtendedHandleInformation) u tivverifika jekk jaqblux PID deskrittur u PID proċess WinWord u jekk id-dokument infetaħx b'maskra ta' aċċess - 0x12019F.
Biex tikkonferma li nstab il-manku korrett (u mhux il-manku għal dokument miftuħ ieħor), il-kontenut tal-fajl jintwera bl-użu tal-funzjoni CreateFileMapping, u l-shellcode jiċċekkja jekk l-aħħar erba' bytes tad-dokument jaqblux "yyyy"(Metodu tal-Kaċċa tal-Bajd). Ladarba tinstab taqbila, id-dokument jiġi kkupjat f'folder temporanju (GetTempPath) Kif ole.dll. Imbagħad jinqraw l-aħħar 12-il byte tad-dokument.
![]()
Figura 5. Markers tat-tmiem tad-dokument
Valur ta' 32 bit bejn il-markaturi AABBCCDD и yyyy hija l-offset tal-shellcode li jmiss. Huwa msejjaħ bl-użu tal-funzjoni CreateThread. Estratt l-istess shellcode li kien użat mill-grupp OceanLotus qabel. , li aħna rilaxxati f'Marzu 2018, għadu jaħdem għat-tieni stadju dump.
It-tieni stadju
Tneħħija ta' Komponenti
L-ismijiet tal-fajls u tad-direttorju jintgħażlu b'mod dinamiku. Il-kodiċi jagħżel bl-addoċċ l-isem tal-fajl eżekutibbli jew DLL fi C:Windowssystem32. Imbagħad jagħmel talba lir-riżorsi tiegħu u jirkupra l-qasam FileDescription biex tuża bħala l-isem tal-folder. Jekk dan ma jaħdimx, il-kodiċi jagħżel b'mod każwali isem ta' folder mid-direttorji %ProgramFiles% jew C:Windows (minn IksebWindowsDirectoryW). Dan jevita l-użu ta' isem li jista' jkun f'kunflitt ma' fajls eżistenti u jiżgura li ma jkunx fih il-kliem li ġejjin: windows, Microsoft, desktop, system, system32 jew syswow64. Jekk id-direttorju diġà jeżisti, "NLS_{6 karattri}" huwa mehmuż mal-isem.
riżorsi 0x102 tiġi analizzata u l-fajls jintremew fihom %ProgramFiles% jew %AppData%, għal folder magħżul b'mod każwali. Inbidel il-ħin tal-ħolqien biex ikollu l-istess valuri bħal kernel32.dll.
Pereżempju, hawn il-folder u l-lista ta 'fajls maħluqa billi tagħżel l-eżekutibbli C:Windowssystem32TCPSVCS.exe bħala sors tad-dejta.

Figura 6. Estrazzjoni ta 'komponenti varji
Struttura tar-riżorsi 0x102 fi dropper huwa pjuttost kumpless. Fil-qosor, fih:
— Ismijiet tal-fajls
— Id-daqs u l-kontenut tal-fajl
— Format tal-kompressjoni (COMPRESSION_FORMAT_LZNT1, użat mill-funzjoni RtlDecompressBuffer)
L-ewwel fajl huwa reset bħala TCPSVCS.exe, li hija leġittima AcroTranscoder.exe (skond FileDescription, SHA-1: 2896738693A8F36CC7AD83EF1FA46F82F32BE5A3).
Jista 'jkollok innotajt li xi fajls DLL huma akbar minn 11 MB. Dan għaliex buffer kbir kontigwu ta 'dejta każwali jitqiegħed ġewwa l-fajl eżekutibbli. Huwa possibbli li dan huwa mod kif jiġi evitat l-iskoperta minn xi prodotti tas-sigurtà.
L-iżgurar tal-persistenza
riżorsi 0x101 fil-dropper fih żewġ interi ta '32-bit li jispeċifikaw kif għandha tiġi pprovduta l-persistenza. Il-valur tal-ewwel jispeċifika kif il-malware se jippersisti mingħajr drittijiet ta' amministratur.

Tabella 1. Mekkaniżmu ta' persistenza mingħajr drittijiet ta' amministratur
Il-valur tat-tieni numru sħiħ jispeċifika kif il-malware għandu jikseb persistenza meta jaħdem bi drittijiet ta' amministratur.

Tabella 2. Mekkaniżmu ta' persistenza bi drittijiet ta' amministratur
L-isem tas-servizz huwa l-isem tal-fajl mingħajr estensjoni; l-isem tal-wiri huwa l-isem tal-folder, iżda jekk diġà jeżisti, is-sekwenza " hija mehmuża miegħuRevision 1” (in-numru jiżdied sakemm jinstab isem mhux użat). L-operaturi żguraw li l-persistenza permezz tas-servizz kienet robusta - f'każ ta 'falliment, is-servizz għandu jerġa' jinbeda wara sekonda. Imbagħad il-valur WOW64 Iċ-ċavetta tar-reġistru tas-servizz il-ġdid hija ssettjata għal 4, li tindika li hija servizz ta' 32 bit.
Kompitu skedat jinħoloq permezz ta’ diversi interfaces COM: ITaskScheduler, ITask, ITaskTrigger, IPersistFile и ITaskScheduler. Essenzjalment, il-malware joħloq kompitu moħbi, jistabbilixxi l-informazzjoni tal-kont flimkien mal-informazzjoni tal-utent jew tal-amministratur attwali, u mbagħad jistabbilixxi l-grillu.
Dan huwa kompitu ta 'kuljum b'tul ta' 24 siegħa u intervalli bejn żewġ eżekuzzjonijiet ta '10 minuti, li jfisser li se taħdem kontinwament.
Bit malizzjuż
Fl-eżempju tagħna, il-fajl eżekutibbli TCPSVCS.exe (AcroTranscoder.exe) huwa softwer leġittimu li jgħabbi DLLs li jiġu reset flimkien miegħu. F'dan il-każ, huwa ta 'interess Flash Video Extension.dll.
Il-funzjoni tiegħu DLLMain sempliċement jitlob funzjoni oħra. Xi predicati fuzzy huma preżenti:

Figura 7. Predikati fuzzy
Wara dawn il-kontrolli qarrieqa, il-kodiċi jieħu taqsima .text fajl TCPSVCS.exe, jibdel id-difiża tiegħu għal PAGE_EXECUTE_READWRITE u tiktebha mill-ġdid billi żżid struzzjonijiet finti:

Figura 8. Sekwenza ta' struzzjonijiet
Fl-aħħar għall-indirizz tal-funzjoni FLVCore::Uninitialize(void), esportati Flash Video Extension.dll, l-istruzzjoni hija miżjuda CALL. Dan ifisser li wara li d-DLL malizzjuż jitgħabba, meta s-sejħiet tar-runtime WinMain в TCPSVCS.exe, il-pointer tal-istruzzjoni se jindika NOP, li jikkawża FLVCore::Uninitialize(void), l-istadju li jmiss.
Il-funzjoni sempliċement toħloq mutex li jibda bi {181C8480-A975-411C-AB0A-630DB8B0A221}segwit mill-isem tal-utent attwali. Imbagħad jaqra l-fajl *.db3 iddampjat, li fih kodiċi indipendenti mill-pożizzjoni, u juża CreateThread biex tesegwixxi l-kontenut.
Il-kontenut tal-fajl *.db3 huwa l-shellcode li l-grupp OceanLotus tipikament juża. Erġajna rnexxilna spakkjat it-tagħbija tagħha billi tuża l-iskrittura emulatur li ppubblikajna .
L-iskrittura estratti l-istadju finali. Dan il-komponent huwa backdoor, li diġà analiznajna fih . Dan jista' jiġi determinat mill-GUID {A96B020F-0000-466F-A96D-A91BBF8EAC96} fajl binarju. Il-konfigurazzjoni tal-malware għadha encrypted fir-riżors PE. Għandu bejn wieħed u ieħor l-istess konfigurazzjoni, iżda s-servers C&C huma differenti minn dawk preċedenti:
- andreagahuvrauvin[.]com
- byronorenstein[.]com
- stienollmache[.]xyz
It-tim ta 'OceanLotus għal darb'oħra juri taħlita ta' tekniki differenti biex jiġi evitat l-iskoperta. Huma rritornaw b'dijagramma "raffinata" tal-proċess ta 'infezzjoni. Billi jagħżlu ismijiet bl-addoċċ u jimlew l-eżekutibbli b'dejta każwali, inaqqsu n-numru ta 'IoCs affidabbli (ibbażati fuq hashes u ismijiet ta' fajls). Barra minn hekk, grazzi għall-użu ta 'tagħbija DLL ta' parti terza, l-attakkanti jeħtieġ biss li jneħħu l-binarju leġittimu AcroTranscoder.
Arkivji li jiġu estratti waħedhom
Wara l-fajls RTF, il-grupp tmexxa għal arkivji li estratt lilu nnifsu (SFX) b'ikoni ta 'dokument komuni biex ikompli jħawwad lill-utent. Threatbook kiteb dwar dan (). Mat-tnedija, jintefgħu fajls RAR li jestraw lilhom infushom u jiġu esegwiti DLLs b'estensjoni .ocx, li t-tagħbija finali tagħhom ġiet dokumentata qabel {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll. Minn nofs Jannar 2019, OceanLotus ilhom jużaw din it-teknika mill-ġdid, iżda bidlu xi konfigurazzjonijiet maż-żmien. F'din it-taqsima se nitkellmu dwar it-teknika u l-bidliet.
Ħolqien ta 'LURE
Dokument THICH-THONG-LAC-HANH-THAP-THIEN-VIET-NAM (1).EXE (SHA-1: AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB) instab għall-ewwel darba fl-2018. Dan il-fajl SFX inħoloq bil-għaqal - fid-deskrizzjoni (Informazzjoni dwar il-Verżjoni) jgħid li din hija immaġni JPEG. L-iskrittura SFX tidher bħal din:

Figura 9. Kmandi SFX
Il-malware reset {9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (SHA-1: EFAC23B0E6395B1178BCF7086F72344B24C04DCC), kif ukoll stampa 2018 thich thong lac.jpg.
L-immaġni tat-tjur tidher bħal din:

Figura 10. Decoy image
Jista 'jkollok innotajt li l-ewwel żewġ linji fl-iskrittura SFX isejħu l-fajl OCX darbtejn, iżda dan mhuwiex żball.
{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)
Il-fluss ta 'kontroll ta' fajl OCX huwa simili ħafna għal komponenti OceanLotus oħra - ħafna sekwenzi ta 'kmand JZ/JNZ и PUSH/RET, li jalterna mal-kodiċi taż-żibel.

Figura 11. Kodiċi offuskat
Wara li tiffiltra l-kodiċi junk, esporta DllRegisterServer, imsejħa regsvr32.exe, kif ġej:

Figura 12. Kodiċi tal-installatur bażiku
Bażikament, fl-ewwel sejħa DllRegisterServer l-esportazzjoni tistabbilixxi l-valur tar-reġistru HKCUSOFTWAREClassesCLSID{E08A0F4B-1F65-4D4D-9A09-BD4625B9C5A1}Model għal offset encrypted fid-DLL (0x10001DE0).
Meta l-funzjoni tissejjaħ għat-tieni darba, taqra l-istess valur u tesegwixxi f'dak l-indirizz. Minn hawn ir-riżorsa u ħafna azzjonijiet fir-RAM jinqraw u jiġu esegwiti.
Il-shellcode huwa l-istess PE loader użat fil-kampanji OceanLotus tal-passat. Jista 'jiġi emulat bl-użu . Fl-aħħar reset db293b825dcc419ba7dc2c49fa2757ee.dll, jgħabbiha fil-memorja u tesegwixxi DllEntry.
Id-DLL estratti l-kontenut tar-riżorsa tiegħu, jiddekripta (AES-256-CBC) u jiddekompressa (LZMA). Ir-riżors għandu format speċifiku li huwa faċli biex jiġi dekompilat.

Figura 13. Struttura tal-konfigurazzjoni tal-installatur (KaitaiStruct Visualizer)
Il-konfigurazzjoni hija speċifikata b'mod espliċitu - skond il-livell ta 'privileġġ, id-dejta binarja se tinkiteb fuq %appdata%IntellogsBackgroundUploadTask.cpl jew %windir%System32BackgroundUploadTask.cpl (Jew SysWOW64 għal sistemi 64-bit).
Aktar persistenza hija żgurata billi tinħoloq kompitu bl-isem BackgroundUploadTask[junk].jobfejn [junk] jirrappreżenta sett ta' bytes 0x9D и 0xA0.
Isem tal-Applikazzjoni tal-Kompitu %windir%System32control.exe, u l-valur tal-parametru huwa t-triq għall-fajl binarju mniżżel. Il-kompitu moħbi jibda kuljum.
Strutturalment, fajl CPL huwa DLL b'isem intern ac8e06de0a6c4483af9837d96504127e.dll, li tesporta funzjoni CPlApplet. Dan il-fajl jiddeċifra l-unika riżorsa tiegħu {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll, imbagħad jgħabbi din id-DLL u ssejjaħ l-unika esportazzjoni tagħha DllEntry.
Fajl tal-konfigurazzjoni tal-backdoor
Il-konfigurazzjoni tal-backdoor hija encrypted u inkorporata fir-riżorsi tagħha. L-istruttura tal-fajl tal-konfigurazzjoni hija simili ħafna għal dik preċedenti.

Figura 14. Struttura tal-konfigurazzjoni tal-backdoor (KaitaiStruct Visualizer)
Għalkemm l-istruttura hija simili, ħafna mill-valuri tal-kamp ġew aġġornati minn dawk murija fi .
L-ewwel element tal-array binarju fih DLL (HttpProv.dll MD5: 2559738D1BD4A999126F900C7357B759), . Iżda peress li l-isem tal-esportazzjoni tneħħa mill-binarju, il-hashes ma jaqblux.
Riċerka Addizzjonali
Waqt il-ġbir tal-kampjuni, innutajna xi karatteristiċi. Il-kampjun kif deskritt deher madwar Lulju 2018, u oħrajn bħalu dehru reċentement minn nofs Jannar sal-bidu ta 'Frar 2019. L-arkivju SFX intuża bħala vettur ta 'infezzjoni, u waqqa' dokument ta 'decoy leġittimu u fajl OSX malizzjuż.
Anki jekk OceanLotus juża timestamps foloz, aħna ndunajna li t-timestamps tal-fajls SFX u OCX huma dejjem l-istess (0x57B0C36A (08/14/2016 @ 7:15pm UTC) u 0x498BE80F (02/06/2009 fis-7:34am UTC) rispettivament). Dan probabbilment jindika li l-awturi għandhom xi tip ta '"disinjatur" li juża l-istess mudelli u sempliċement jibdel xi karatteristiċi.
Fost id-dokumenti li studjajna mill-bidu tal-2018, hemm diversi ismijiet li jindikaw il-pajjiżi ta 'interess għall-attakkanti:
— L-Informazzjoni Ġdida ta' Kuntatt Tal-Medja tal-Kambodja(New).xls.exe
— 李建香 (个人简历).exe (dokument pdf falz ta' CV)
— feedback, Rally fl-Istati Uniti mit-28-29 ta’ Lulju, 2018.exe
Peress li l-backdoor ġie skopert {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll u l-pubblikazzjoni tal-analiżi tagħha minn diversi riċerkaturi, osservajna xi bidliet fid-dejta tal-konfigurazzjoni tal-malware.
L-ewwel, l-awturi bdew ineħħu l-ismijiet minn helper DLLs (DNSprov.dll u żewġ verżjonijiet HttpProv.dll). L-operaturi mbagħad waqfu l-ippakkjar tat-tielet DLL (it-tieni verżjoni HttpProv.dll), jagħżlu li jinkorporaw wieħed biss.
It-tieni, ħafna oqsma ta 'konfigurazzjoni ta' backdoor ġew mibdula, x'aktarx jevadu l-iskoperta hekk kif ħafna IoCs saru disponibbli. Oqsma importanti modifikati mill-awturi jinkludu:
- Ċavetta tar-reġistru AppX mibdula (ara IoCs)
- string encoding mutex ("def", "abc", "ghi")
- numru tal-port
Fl-aħħarnett, il-verżjonijiet ġodda kollha analizzati għandhom C&Cs ġodda elenkati fit-taqsima IoCs.
Sejbiet
OceanLotus ikompli jiżviluppa. Il-grupp ċibernetiku huwa ffukat fuq ir-raffinar u l-espansjoni tal-għodod u t-tjur. L-awturi jaħbu payloads malizzjużi billi jużaw dokumenti li jiġbdu l-attenzjoni li s-suġġett tagħhom huwa rilevanti għall-vittmi maħsuba. Huma jiżviluppaw skemi ġodda u jużaw ukoll għodod disponibbli pubblikament, bħall-isfruttament tal-Equation Editor. Barra minn hekk, qed itejbu l-għodod biex inaqqsu n-numru ta 'artifacts li jifdal fuq il-magni tal-vittmi, u b'hekk inaqqsu ċ-ċans ta' skoperta minn softwer antivirus.
Indikaturi ta' kompromess
Indikaturi ta' kompromess kif ukoll attributi MITRE ATT&CK huma disponibbli и .
Sors: www.habr.com
