ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus

Sa kini nga post isulti namon kanimo kung giunsa ang cyber nga grupo nga OceanLotus (APT32 ug APT-C-00) bag-o lang gigamit ang usa sa mga magamit sa publiko nga pagpahimulos alang sa CVE-2017-11882, mga kahuyangan sa korapsyon sa memorya sa Microsoft Office, ug kung giunsa ang malware sa grupo nakab-ot ang pagpadayon sa mga nakompromiso nga sistema nga wala magbilin usa ka pagsubay. Sunod, among ihulagway kung giunsa, sukad sa pagsugod sa 2019, gigamit sa grupo ang mga self-extracting archive aron makadagan ang code.

Espesyalista sa OceanLotus ang cyber espionage, nga ang mga priority target mao ang mga nasud sa Southeast Asia. Ang mga tig-atake naghimog mga dokumento nga nagdani sa atensyon sa mga potensyal nga biktima aron makombinsir sila nga maghimo usa ka backdoor, ug nagtrabaho usab sa paghimo og mga himan. Ang mga pamaagi nga gigamit sa paghimo og honeypots managlahi sa mga pag-atake, gikan sa "double-extension" nga mga file, self-extracting archives, mga dokumento nga adunay mga macro, ngadto sa nahibal-an nga mga pagpahimulos.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus

Paggamit sa usa ka pagpahimulos sa Microsoft Equation Editor

Sa tungatunga sa 2018, ang OceanLotus nagpahigayon usa ka kampanya nga nagpahimulos sa pagkahuyang sa CVE-2017-11882. Usa sa mga malisyosong dokumento sa cyber nga grupo gisusi sa mga espesyalista gikan sa 360 Threat Intelligence Center (panukiduki sa Intsik), lakip ang usa ka detalyado nga paghulagway sa pagpahimulos. Ang post sa ubos naglangkob sa usa ka kinatibuk-ang panan-aw sa ingon nga usa ka makadaot nga dokumento.

Ang unang yugto

Ang dokumento FW Report on demonstration of former CNRP in Republic of Korea.doc (SHA-1: D1357B284C951470066AAA7A8228190B88A5C7C3) susama sa gihisgotan sa pagtuon sa ibabaw. Makapainteres kini tungod kay gitumong kini sa mga tiggamit nga interesado sa politika sa Cambodian (CNRP - Cambodia National Rescue Party, natunaw sa katapusan sa 2017). Bisan pa sa .doc extension, ang dokumento anaa sa RTF format (tan-awa ang hulagway sa ubos), adunay kodigo sa basura, ug gituis usab.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 1. "Basura" sa RTF

Bisan kung adunay mga gubot nga mga elemento, malampuson nga gibuksan sa Word kini nga RTF file. Sama sa imong makita sa Figure 2, adunay EQNOLEFILEHDR structure sa offset 0xC00, gisundan sa usa ka MTEF header, ug dayon usa ka MTEF entry (Figure 3) para sa font.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 2. FONT entry values

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 3. Format sa pagrekord sa FONT

Posible nga pag-awas sa uma ngalan, tungod kay ang gidak-on niini wala masusi sa dili pa kopyahon. Ang usa ka ngalan nga taas kaayo nagpahinabog pagkahuyang. Sama sa imong makita gikan sa sulod sa RTF file (offset 0xC26 sa Figure 2), ang buffer napuno sa shellcode nga gisundan sa usa ka dummy command (0x90) ug adres sa pagbalik 0x402114. Ang adres usa ka elemento sa dialogo sa EQNEDT32.exe, nga nagpaila sa mga instruksyon RET. Kini ang hinungdan nga ang EIP magpunting sa pagsugod sa uma ngalannaglangkob sa shellcode.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 4. Sinugdanan sa pagpahimulos sa shellcode

Address 0x45BD3C nagtipig sa usa ka variable nga gi-dereference hangtud nga kini moabut sa usa ka pointer sa kasamtangan nga gikarga nga istruktura MTEFData. Ang nahabilin nga shellcode ania dinhi.

Ang katuyoan sa shellcode mao ang pagpatuman sa ikaduhang piraso sa shellcode nga na-embed sa bukas nga dokumento. Ang orihinal nga shellcode unang misulay sa pagpangita sa file descriptor sa bukas nga dokumento pinaagi sa pag-uli sa tanang sistema descriptor (NtQuerySystemInformation uban sa argumento SystemExtendedHandleInformation) ug pagsusi kon sila magkatugma PID deskriptor ug PID proseso WinWord ug kung ang dokumento giablihan gamit ang access mask - 0x12019F.

Aron makumpirma nga ang husto nga kuptanan nakit-an (ug dili ang kuptanan sa lain nga bukas nga dokumento), ang sulud sa file gipakita gamit ang function CreateFileMapping, ug ang shellcode nagsusi kung ang katapusang upat ka byte sa dokumento mohaum "yyyy"(Egg Hunting method). Kung makit-an ang usa ka tugma, ang dokumento makopya sa usa ka temporaryo nga folder (GetTempPath) Unsaon ole.dll. Dayon ang kataposang 12 ka byte sa dokumento basahon.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 5. Katapusan sa mga marker sa dokumento

32-bit nga bili tali sa mga marker AABBCCDD и yyyy mao ang offset sa sunod nga shellcode. Gitawag kini gamit ang function CreateThread. Gikuha ang parehas nga shellcode nga gigamit sa grupo sa OceanLotus kaniadto. Python emulation script, nga among gipagawas kaniadtong Marso 2018, nagtrabaho gihapon alang sa ikaduhang yugto nga dump.

Ang ikaduhang yugto

Pagtangtang sa mga sangkap

Ang mga ngalan sa file ug direktoryo gipili nga dinamiko. Ang code random nga mopili sa ngalan sa executable o DLL file sa C:Windowssystem32. Naghimo kini usa ka hangyo sa mga kahinguhaan niini ug gibawi ang uma FileDescription nga gamiton isip ngalan sa folder. Kung dili kini molihok, ang code random nga nagpili usa ka ngalan sa folder gikan sa mga direktoryo %ProgramFiles% o C:Windows (gikan sa GetWindowsDirectoryW). Gilikayan niini ang paggamit sa usa ka ngalan nga mahimong magkasumpaki sa naa na nga mga file ug gisiguro nga wala kini maglangkob sa mosunod nga mga pulong: windows, Microsoft, desktop, system, system32 o syswow64. Kung naa na ang direktoryo, ang "NLS_{6 character}" gidugang sa ngalan.

kapanguhaan 0x102 gi-analisar ug ang mga file gilabay sa %ProgramFiles% o %AppData%, sa usa ka random nga gipili nga folder. Gibag-o ang oras sa paghimo aron adunay parehas nga kantidad sama sa kernel32.dll.

Pananglitan, ania ang folder ug lista sa mga file nga gihimo pinaagi sa pagpili sa executable C:Windowssystem32TCPSVCS.exe isip tinubdan sa datos.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 6. Pagkuha sa lainlaing mga sangkap

Istruktura sa kahinguhaan 0x102 sa usa ka dropper medyo komplikado. Sa laktod nga pagkasulti, kini adunay:
— Mga ngalan sa file
- Gidak-on sa file ug sulud
- Format sa kompresyon (COMPRESSION_FORMAT_LZNT1, gigamit sa function RtlDecompressBuffer)

Ang una nga file gi-reset ingon TCPSVCS.exe, nga lehitimo AcroTranscoder.exe (sumala sa FileDescription, SHA-1: 2896738693A8F36CC7AD83EF1FA46F82F32BE5A3).

Tingali namatikdan nimo nga ang pipila ka mga file sa DLL mas dako kaysa 11 MB. Kini tungod kay ang usa ka dako nga nagkadugtong nga buffer sa random data gibutang sa sulod sa executable file. Posible nga kini usa ka paagi aron malikayan ang pagkakita sa pipila ka mga produkto sa seguridad.

Pagsiguro sa pagpadayon

kapanguhaan 0x101 sa dropper adunay duha ka 32-bit integer nga nagtino kung giunsa ang pagpadayon kinahanglan ihatag. Ang kantidad sa una nagtino kung giunsa ang malware magpadayon nga wala’y katungod sa tagdumala.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Talaan 1. Mekanismo sa pagpadayon nga walay katungod sa tagdumala

Ang bili sa ikaduhang integer nagtino kon sa unsang paagi makab-ot sa malware ang pagpadayon kung nagdagan nga adunay mga katungod sa tagdumala.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Talaan 2. Mekanismo sa pagpadayon nga adunay mga katungod sa tagdumala

Ang ngalan sa serbisyo mao ang ngalan sa file nga walay extension; ang gipakita nga ngalan mao ang ngalan sa folder, apan kung kini anaa na, ang string " gidugang niiniRevision 1” (ang gidaghanon modaghan hangtod makit-an ang wala magamit nga ngalan). Gisiguro sa mga operator nga ang pagpadayon pinaagi sa serbisyo lig-on - kung adunay kapakyasan, ang serbisyo kinahanglan i-restart pagkahuman sa 1 segundo. Unya ang bili WOW64 Ang registry key sa bag-ong serbisyo gitakda sa 4, nga nagpakita nga kini usa ka 32-bit nga serbisyo.

Ang usa ka naka-iskedyul nga buluhaton gihimo pinaagi sa daghang mga interface sa COM: ITaskScheduler, ITask, ITaskTrigger, IPersistFile и ITaskScheduler. Sa tinuud, ang malware nagmugna usa ka tinago nga buluhaton, nagtakda sa kasayuran sa account kauban ang kasayuran karon nga tiggamit o tigdumala, ug dayon gitakda ang gatilyo.

Kini usa ka adlaw-adlaw nga buluhaton nga adunay gidugayon nga 24 ka oras ug mga agwat tali sa duha nga pagpatay nga 10 minuto, nga nagpasabut nga kini magpadayon nga magpadayon.

Malisyoso gamay

Sa among pananglitan, ang executable file TCPSVCS.exe (AcroTranscoder.exe) mao ang lehitimong software nga nagkarga sa mga DLL nga gi-reset uban niini. Sa kini nga kaso, kini interesado Flash Video Extension.dll.

Ang gimbuhaton niini DLLMain nagtawag lang ug laing function. Adunay pipila ka mga fuzzy predicate:

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Hulagway 7. Fuzzy predicate

Human niining makapahisalaag nga mga pagsusi, ang code makakuha og seksyon .text file TCPSVCS.exe, giusab ang depensa niini ngadto sa PAGE_EXECUTE_READWRITE ug gisulat kini pag-usab pinaagi sa pagdugang sa mga instruksyon nga dummy:

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 8. Pagkasunod-sunod sa mga instruksyon

Sa katapusan sa function address FLVCore::Uninitialize(void), gi-eksport Flash Video Extension.dll, instruksyon gidugang CALL. Kini nagpasabot nga human ma-load ang malisyoso nga DLL, kung ang runtime motawag WinMain в TCPSVCS.exe, ang instruksyon pointer magpunting sa NOP, hinungdan FLVCore::Uninitialize(void), sunod nga yugto.

Ang function nagmugna lang og mutex sugod sa {181C8480-A975-411C-AB0A-630DB8B0A221}gisundan sa kasamtangan nga username. Gibasa dayon niini ang gilabay nga *.db3 file, nga adunay kodigo nga independente sa posisyon, ug gigamit CreateThread aron ipatuman ang sulod.

Ang sulod sa *.db3 file mao ang shellcode nga kasagarang gigamit sa grupo sa OceanLotus. Malampuson na usab namo nga na-unpack ang payload niini gamit ang emulator script nga among gimantala sa GitHub.

Gikuha sa script ang katapusang yugto. Kini nga sangkap usa ka backdoor, nga among gisusi na miaging pagtuon sa OceanLotus. Kini matino pinaagi sa GUID {A96B020F-0000-466F-A96D-A91BBF8EAC96} binary nga file. Ang pag-configure sa malware gi-encrypt gihapon sa kapanguhaan sa PE. Kini adunay gibana-bana nga parehas nga pagsumpo, apan ang mga server sa C&C lahi sa mga nauna:

- andreagahuvrauvin[.]com
- byronorenstein[.]com
- stienollmache[.]xyz

Gipakita pag-usab sa team sa OceanLotus ang usa ka kombinasyon sa lainlaing mga teknik aron malikayan ang pag-ila. Mibalik sila nga adunay "pino" nga diagram sa proseso sa impeksyon. Pinaagi sa pagpili sa mga random nga ngalan ug pagpuno sa mga executable nga adunay random nga datos, gipakunhod nila ang gidaghanon sa kasaligan nga IoCs (base sa mga hash ug mga ngalan sa file). Dugang pa, salamat sa paggamit sa third-party DLL loading, ang mga tig-atake kinahanglan lamang nga tangtangon ang lehitimong binary. AcroTranscoder.

Mga archive nga nagkuha sa kaugalingon

Pagkahuman sa mga file sa RTF, ang grupo mibalhin sa self-extracting (SFX) nga mga archive nga adunay sagad nga mga icon sa dokumento aron labi nga malibog ang tiggamit. Ang Threatbook misulat bahin niini (link sa Chinese). Sa paglansad, ang self-extracting RAR files ihulog ug ang mga DLL nga adunay .ocx extension kay gipatuman, ang katapusang payload niini nadokumento na kaniadto. {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll. Sukad sa tungatunga sa Enero 2019, gigamit na usab sa OceanLotus kini nga teknik, apan gibag-o ang pipila nga mga pag-configure sa paglabay sa panahon. Niini nga seksyon maghisgot kita bahin sa teknik ug mga pagbag-o.

Paghimo og Lure

Ang dokumento THICH-THONG-LAC-HANH-THAP-THIEN-VIET-NAM (1).EXE (SHA-1: AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB) una nga nakit-an kaniadtong 2018. Kini nga SFX file gimugna nga maalamon - sa paghulagway (Impormasyon sa Bersyon) kini nag-ingon nga kini usa ka JPEG nga imahe. Ang script sa SFX ingon niini:

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Hulagway 9. Mga Sugo sa SFX

Gi-reset ang malware {9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (SHA-1: EFAC23B0E6395B1178BCF7086F72344B24C04DCC), ingon man usa ka litrato 2018 thich thong lac.jpg.

Ang hulagway sa decoy ingon niini:

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 10. Decoy nga hulagway

Mahimo nimong namatikdan nga ang unang duha ka linya sa script sa SFX nagtawag sa OCX file sa makaduha, apan kini dili usa ka sayup.

{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)

Ang kontrol nga dagan sa usa ka OCX file susama kaayo sa ubang mga sangkap sa OceanLotus - daghang mga han-ay sa command JZ/JNZ и PUSH/RET, alternating sa kodigo sa basura.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 11. Na-obfuscated nga code

Human sa pagsala sa junk code, export DllRegisterServer, gitawag regsvr32.exe, ingon sa mosunod:

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 12. Basic installer code

Sa panguna, sa una nga tawag DllRegisterServer export nagtakda sa rehistro nga bili HKCUSOFTWAREClassesCLSID{E08A0F4B-1F65-4D4D-9A09-BD4625B9C5A1}Model para sa naka-encrypt nga offset sa DLL (0x10001DE0).

Kung ang function gitawag sa ikaduha nga higayon, kini nagbasa sa parehas nga kantidad ug gipatuman sa kana nga adres. Gikan dinhi ang kapanguhaan ug daghang mga aksyon sa RAM gibasa ug gipatuman.

Ang shellcode mao ra ang PE loader nga gigamit sa nangaging mga kampanya sa OceanLotus. Mahimo kining sundogon gamit ang atong script. Sa katapusan nag-reset siya db293b825dcc419ba7dc2c49fa2757ee.dll, gikarga kini sa memorya ug gipatuman DllEntry.

Gikuha sa DLL ang mga sulud sa kapanguhaan niini, gi-decrypt (AES-256-CBC) ug gi-decompress (LZMA) kini. Ang kapanguhaan adunay usa ka piho nga pormat nga dali ma-decompile.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Figure 13. Istruktura sa configuration sa installer (KaitaiStruct Visualizer)

Ang pag-configure klaro nga gipiho - depende sa lebel sa pribilehiyo, ang binary data isulat sa %appdata%IntellogsBackgroundUploadTask.cpl o %windir%System32BackgroundUploadTask.cpl (o SysWOW64 alang sa 64-bit nga sistema).

Ang dugang nga pagpadayon gisiguro pinaagi sa paghimo sa usa ka buluhaton nga adunay ngalan BackgroundUploadTask[junk].jobdiin [junk] nagrepresentar sa usa ka hugpong sa mga byte 0x9D и 0xA0.

Ngalan sa Aplikasyon sa Buluhaton %windir%System32control.exe, ug ang parameter value mao ang dalan paingon sa na-download nga binary file. Ang tinago nga buluhaton nagdagan matag adlaw.

Sa istruktura, ang CPL file usa ka DLL nga adunay internal nga ngalan ac8e06de0a6c4483af9837d96504127e.dll, nga nag-eksport sa usa ka function CPlApplet. Kini nga payl nag-decrypt sa iyang bugtong kapanguhaan {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll, unya i-load kini nga DLL ug tawgon ang bugtong eksport niini DllEntry.

Backdoor configuration file

Ang pag-configure sa backdoor gi-encrypt ug gi-embed sa mga kapanguhaan niini. Ang istruktura sa configuration file susama kaayo sa nauna.

ESET: bag-ong mga laraw sa paghatud sa backdoor alang sa grupo sa cyber sa OceanLotus
Hulagway 14. Backdoor configuration structure (KaitaiStruct Visualizer)

Bisan kung parehas ang istruktura, daghan sa mga kantidad sa uma ang na-update gikan sa gipakita sa atong daan nga report.

Ang unang elemento sa binary array naglangkob sa usa ka DLL (HttpProv.dll MD5: 2559738D1BD4A999126F900C7357B759), giila ni Tencent. Apan tungod kay ang ngalan sa eksport gikuha gikan sa binary, ang mga hash dili motakdo.

Dugang nga Pagpanukiduki

Samtang nagkolekta og mga sampol, namatikdan namo ang pipila ka mga kinaiya. Ang espesimen nga bag-o lang gihulagway nga nagpakita sa mga Hulyo 2018, ug ang uban nga sama niini nagpakita kaniadtong tunga-tunga sa Enero hangtod sa sayong bahin sa Pebrero 2019. Ang SFX archive gigamit isip vector sa impeksyon, naghulog sa usa ka lehitimong decoy nga dokumento ug usa ka malisyoso nga OSX file.

Bisan kung ang OceanLotus naggamit ug peke nga mga timestamp, among namatikdan nga ang mga timestamp sa SFX ug OCX nga mga file kanunay parehas (0x57B0C36A (08/14/2016 @ 7:15pm UTC) ug 0x498BE80F (02/06/2009 @ 7:34am UTC) matag usa). Kini lagmit nagpakita nga ang mga tagsulat adunay usa ka matang sa "tigdesinyo" nga naggamit sa sama nga mga templates ug nagbag-o lang sa pipila ka mga kinaiya.

Lakip sa mga dokumento nga among gitun-an sukad sa pagsugod sa 2018, adunay lainlaing mga ngalan nga nagpaila sa mga nasud nga interesado sa mga nag-atake:

— Ang Bag-ong Impormasyon sa Pagkontak Sa Cambodia Media(Bag-o).xls.exe
— 李建香 (个人简历).exe (peke nga pdf nga dokumento sa usa ka CV)
- feedback, Rally sa USA gikan sa Hulyo 28-29, 2018.exe

Sukad nadiskobrehan ang backdoor {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll ug ang pagmantala sa pagtuki niini sa daghang mga tigdukiduki, among naobserbahan ang pipila ka mga pagbag-o sa datos sa pagsumpo sa malware.

Una, gisugdan sa mga tagsulat ang pagtangtang sa mga ngalan gikan sa mga katabang nga DLL (DNSprov.dll ug duha ka bersiyon HttpProv.dll). Gihunong sa mga operator ang pagputos sa ikatulo nga DLL (ang ikaduha nga bersyon HttpProv.dll), pagpili sa pag-embed sa usa lang.

Ikaduha, daghang mga natad sa pag-configure sa backdoor ang nabag-o, lagmit nga makalikay sa pagkakita tungod kay daghang mga IoC ang magamit. Ang importante nga mga natad nga giusab sa mga tagsulat naglakip sa:

  • Nausab ang yawe sa rehistro sa AppX (tan-awa ang IoCs)
  • mutex encoding string ("def", "abc", "ghi")
  • numero sa pantalan

Sa katapusan, ang tanan nga mga bag-ong bersyon nga gi-analisa adunay bag-ong C&C nga gilista sa seksyon sa IoC.

kaplag

Ang OceanLotus nagpadayon sa pag-uswag. Ang cyber nga grupo naka-focus sa pagpino ug pagpalapad sa mga himan ug decoy. Ang mga tagsulat nagtakuban sa mga malisyosong kargamento gamit ang mga dokumento nga makadani sa atensyon kansang topiko may kalabotan sa gituyo nga mga biktima. Naghimo sila og bag-ong mga laraw ug naggamit usab sa mga himan nga magamit sa publiko, sama sa pagpahimulos sa Equation Editor. Dugang pa, gipauswag nila ang mga himan aron makunhuran ang gidaghanon sa mga artifact nga nahabilin sa mga makina sa mga biktima, sa ingon gipakunhod ang higayon nga makit-an pinaagi sa antivirus software.

Mga timailhan sa pagkompromiso

Anaa ang mga timailhan sa pagkompromiso ingon man ang MITRE ATT&CK nga mga hiyas sa Welivesecurity и sa GitHub.

Source: www.habr.com

Idugang sa usa ka comment