Дар ин мақола мо ба шумо мегӯям, ки чӣ тавр гурӯҳи киберҷинояткорӣ OceanLotus (APT32 ва APT-C-00) ба наздикӣ яке аз истисморҳои дастраси оммаро истифода кардааст.
OceanLotus ба ҷосусии киберӣ тахассус дорад ва ҳадафҳои афзалиятнок кишварҳои Осиёи Ҷанубу Шарқӣ мебошанд. Ҳамлагарон ҳуҷҷатҳои қалбакӣ месозанд, ки диққати қурбониёни эҳтимолиро ҷалб мекунанд, то онҳоро ба иҷрои пушти дарвоза бовар кунонанд ва инчунин дар таҳияи асбобҳо кор мекунанд. Усулҳое, ки барои сохтани кӯзаҳои асал истифода мешаванд, аз ҳама ҳамлаҳо фарқ мекунанд, аз файлҳои "дучандон васеъ", бойгониҳои худкор, ҳуҷҷатҳо бо макросҳо то истисморҳои маълум.
Истифодаи истисмор дар муҳаррири муодилаи Microsoft
Дар нимаи соли 2018, OceanLotus як маъракаеро анҷом дод, ки осебпазирии CVE-2017-11882-ро истифода мебарад. Яке аз ҳуҷҷатҳои зарарноки гурӯҳи киберӣ аз ҷониби мутахассисони Маркази иктишофии 360 Threat таҳлил карда шуд (
Дар марњилаи аввал
ҳуҷҷати FW Report on demonstration of former CNRP in Republic of Korea.doc
(SHA-1: D1357B284C951470066AAA7A8228190B88A5C7C3
) ба он чизе, ки дар таҳқиқоти боло зикр шудааст, монанд аст. Ин ҷолиб аст, зеро он ба корбароне нигаронида шудааст, ки ба сиёсати Камбоҷа таваҷҷӯҳ доранд (CNRP - Ҳизби наҷоти миллии Камбоҷа, дар охири соли 2017 барҳам дода шудааст). Сарфи назар аз васеъшавии .doc, ҳуҷҷат дар формати RTF аст (ба расми зер нигаред), дорои рамзи ахлот аст ва инчунин таҳриф шудааст.
Тасвири 1. "Гарбка" дар RTF
Гарчанде ки унсурҳои вайроншуда мавҷуданд, Word ин файли RTF-ро бомуваффақият мекушояд. Тавре ки шумо дар расми 2 мебинед, сохтори EQNOLEFILEHDR дар офсети 0xC00 мавҷуд аст, ки пас аз он сарлавҳаи MTEF ва сипас вуруди MTEF (расми 3) барои шрифт мавҷуд аст.
Расми 2. Қиматҳои вуруди FONT
Тасвири 3.
Эҳтимолияти обхезӣ дар саҳро ном, зеро андозаи он пеш аз нусхабардорӣ тафтиш карда намешавад. Номе, ки аз ҳад дароз аст, осебпазириро ба вуҷуд меорад. Тавре ки шумо аз мундариҷаи файли RTF мебинед (офсети 0xC26 дар расми 2), буфер бо рамзи shell ва пас аз фармони думми (0x90
) ва суроғаи бозгашт 0x402114
. Суроға як унсури муколама дар EQNEDT32.exe
, бо нишон додани дастурхо RET
. Ин боиси он мегардад, ки EIP ба оғози майдон ишора кунад номдорои рамзи shell.
Тасвири 4. Оғози коди shell exploit
Суроға 0x45BD3C
Тағирёбандаеро нигоҳ медорад, ки то он даме, ки он ба нишондод ба сохтори боргузоришуда расад MTEFData
. Қисми боқимондаи рамзи shell дар ин ҷост.
Мақсади рамзи shellcode иҷро кардани қисми дуюми рамзи shell, ки дар ҳуҷҷати кушода ҷойгир шудааст, мебошад. Рамзи аслии shell аввал кӯшиш мекунад, ки дескриптори файли ҳуҷҷати кушодаро тавассути такрори тамоми дескрипторҳои система пайдо кунад (NtQuerySystemInformation
бо далел SystemExtendedHandleInformation
) ва санҷидани мувофиқати онҳо PID тавсифкунанда ва PID раванди WinWord
ва оё ҳуҷҷат бо ниқоби дастрасӣ кушода шудааст - 0x12019F
.
Барои тасдиқи он, ки дастаки дуруст ёфт шудааст (на дастаки ҳуҷҷати кушодаи дигар), мундариҷаи файл бо истифода аз функсия намоиш дода мешавад. CreateFileMapping
, ва рамзи shell месанҷад, ки оё чаҳор байтҳои охирини ҳуҷҷат мувофиқат мекунанд "yyyy
"(Усули шикори тухм). Пас аз пайдо шудани мувофиқат, ҳуҷҷат ба ҷузвдони муваққатӣ нусхабардорӣ карда мешавад (GetTempPath
) Чӣ хел ole.dll
. Сипас 12 байти охирини ҳуҷҷат хонда мешавад.
Расми 5. Анҷоми аломатҳои ҳуҷҷат
Қимати 32-бит байни маркерҳо AABBCCDD
и yyyy
ҷуброни рамзи қабати навбатӣ мебошад. Он бо истифода аз функсия номида мешавад CreateThread
. Ҳамон рамзи shell, ки қаблан аз ҷониби гурӯҳи OceanLotus истифода шуда буд, истихроҷ карда шуд.
Марҳилаи дуюм
Хориҷ кардани ҷузъҳо
Номҳои файл ва директория ба таври динамикӣ интихоб карда мешаванд. Рамз ба таври тасодуфӣ номи файли иҷрошаванда ё DLL-ро интихоб мекунад C:Windowssystem32
. Он гоҳ ба захираҳои худ дархост пешниҳод мекунад ва майдонро бармегардонад FileDescription
ҳамчун номи ҷузвдон истифода баред. Агар ин кор накунад, код ба таври тасодуфӣ номи ҷузвдонро аз директорияҳо интихоб мекунад %ProgramFiles%
ё C:Windows
(аз GetWindowsDirectoryW). Он аз истифодаи номе, ки метавонад бо файлҳои мавҷуда мухолифат кунад, худдорӣ мекунад ва кафолат медиҳад, ки он калимаҳои зеринро дар бар намегирад: windows
, Microsoft
, desktop
, system
, system32
ё syswow64
. Агар директория аллакай мавҷуд бошад, ба ном "NLS_{6 characters}" замима карда мешавад.
захираҳо 0x102
Таҳлил карда мешавад ва файлҳо ба он партофта мешаванд %ProgramFiles%
ё %AppData%
, ба ҷузвдони ба таври тасодуфӣ интихобшуда. Вақти офариниш тағир дода шуд, то арзишҳои якхела дошта бошанд kernel32.dll
.
Масалан, дар ин ҷо ҷузвдон ва рӯйхати файлҳо бо интихоби файли иҷрошаванда сохта шудаанд C:Windowssystem32TCPSVCS.exe
ҳамчун манбаи маълумот.
Расми 6. Хориҷ кардани ҷузъҳои гуногун
Сохтори захираҳо 0x102
дар як қатра хеле мураккаб аст. Хулоса, он дорои:
- Номҳои файл
- Андоза ва мундариҷаи файл
— Формати фишурдасозӣ (COMPRESSION_FORMAT_LZNT1
, аз ҷониби функсия истифода мешавад RtlDecompressBuffer
)
Файли аввал ҳамчун барқарор карда мешавад TCPSVCS.exe
, ки қонунӣ аст AcroTranscoder.exe
(Бино бар FileDescription
, SHA-1: 2896738693A8F36CC7AD83EF1FA46F82F32BE5A3
).
Шумо шояд пай бурда бошед, ки баъзе файлҳои DLL аз 11 МБ калонтаранд. Сабаб дар он аст, ки дар дохили файли иҷрошаванда буфери калони ҳамбастаи маълумоти тасодуфӣ ҷойгир карда мешавад. Мумкин аст, ки ин як роҳи пешгирӣ аз ошкор кардани баъзе маҳсулоти амниятӣ бошад.
Таъмини устуворӣ
захираҳо 0x101
дар қатра ду адади бутуни 32-бит дорад, ки чӣ гуна устувориро таъмин кардан лозим аст. Қимати якум муайян мекунад, ки чӣ гуна нармафзори зараровар бе ҳуқуқи маъмур боқӣ мемонад.
Љадвали 1. Механизми устуворї бе њуќуќњои администратор
Қимати бутуни дуюм муайян мекунад, ки чӣ гуна нармафзори зараровар ҳангоми кор бо ҳуқуқҳои администратор устувориро ба даст меорад.
Љадвали 2. Механизми устуворї бо њуќуќњои администратор
Номи хадамот номи файли бе тамдид мебошад; номи намоишшаванда номи ҷузвдон аст, аммо агар он аллакай мавҷуд бошад, ба он сатри " замима карда мешавадRevision 1
” (шумораи то пайдо шудани номи истифоданашуда зиёд мешавад). Операторҳо боварӣ ҳосил карданд, ки устуворӣ тавассути хидмат устувор аст - дар сурати нокомӣ, хидмат бояд пас аз 1 сония дубора оғоз шавад. Сипас арзиш WOW64
Калиди сабти хидмати нав ба 4 гузошта шудааст, ки ин хидмати 32-бит аст.
Вазифаи ба нақша гирифташуда тавассути якчанд интерфейсҳои COM сохта мешавад: ITaskScheduler
, ITask
, ITaskTrigger
, IPersistFile
и ITaskScheduler
. Аслан, нармафзори зараровар вазифаи пинҳонӣ эҷод мекунад, маълумоти ҳисобро дар якҷоягӣ бо маълумоти корбар ё маъмури ҷорӣ муқаррар мекунад ва сипас триггерро муқаррар мекунад.
Ин як вазифаи ҳаррӯза бо давомнокии 24 соат ва фосилаи байни ду иҷрои 10 дақиқа аст, ки маънои онро дорад, ки он пайваста иҷро хоҳад шуд.
Каме зараровар
Дар мисоли мо, файли иҷрошаванда TCPSVCS.exe
(AcroTranscoder.exe
) нармафзори қонунӣ аст, ки DLL-ро бор мекунад, ки дар баробари он аз нав барқарор карда мешаванд. Дар ин ҳолат, он манфиатдор аст Flash Video Extension.dll
.
Функсияи он DLLMain
танҳо вазифаи дигарро даъват мекунад. Баъзе предикатҳои норавшан мавҷуданд:
Расми 7. Предикатҳои норавшан
Пас аз ин санҷишҳои гумроҳкунанда, код як бахш мегирад .text
файл TCPSVCS.exe
, мудофиаи худро ба тағйир медиҳад PAGE_EXECUTE_READWRITE
ва онро бо илова кардани дастурҳои думӣ аз нав менависад:
Расми 8. Пайдарҳамии дастурҳо
Дар охири суроғаи функсия FLVCore::Uninitialize(void)
, содирот Flash Video Extension.dll
, дастур илова карда мешавад CALL
. Ин маънои онро дорад, ки пас аз бор кардани DLL-и зараровар, вақте ки вақти корӣ занг мезанад WinMain
в TCPSVCS.exe
, нишондиҳандаи дастур ба NOP ишора мекунад, ки боиси FLVCore::Uninitialize(void)
, марҳилаи оянда.
Функсия танҳо як мутексро аз он оғоз мекунад {181C8480-A975-411C-AB0A-630DB8B0A221}
пас аз номи корбари ҷорӣ. Он гоҳ файли партофташудаи *.db3-ро мехонад, ки рамзи аз мавқеъ мустақилро дар бар мегирад ва истифода мебарад CreateThread
барои иҷро кардани мундариҷа.
Мундариҷаи файли *.db3 рамзи shell аст, ки гурӯҳи OceanLotus маъмулан истифода мебарад. Мо бори дигар бомуваффақият боркаши онро бо истифода аз скрипти эмуляторе, ки нашр кардем, кушодем
Скрипт марҳилаи ниҳоиро истихроҷ мекунад. Ин ҷузъ як пушти дарвоза аст, ки мо онро аллакай таҳлил кардаем {A96B020F-0000-466F-A96D-A91BBF8EAC96}
файли дуӣ. Конфигуратсияи нармафзори зараровар то ҳол дар манбаи PE рамзгузорӣ шудааст. Он тақрибан як конфигуратсия дорад, аммо серверҳои C&C аз серверҳои қаблӣ фарқ мекунанд:
- andreagahuvrauvin[.]com
- byronorenstein[.]com
- stienollmache[.]xyz
Дастаи OceanLotus бори дигар маҷмӯи усулҳои гуногунро барои пешгирӣ кардани ошкор нишон медиҳад. Онҳо бо диаграммаи "тозашуда" -и раванди сироят баргаштанд. Бо интихоби номҳои тасодуфӣ ва пур кардани файлҳои иҷрошаванда бо маълумоти тасодуфӣ, онҳо шумораи IoC-ҳои боэътимодро кам мекунанд (дар асоси хэшҳо ва номҳои файл). Ғайр аз он, ба шарофати истифодаи боркунии DLL-и тарафи сеюм, ҳамлагарон танҳо бояд бинарии қонуниро хориҷ кунанд AcroTranscoder
.
Архивҳои худкор
Пас аз файлҳои RTF, гурӯҳ ба бойгониҳои худкор (SFX) бо нишонаҳои умумии ҳуҷҷат гузаштанд, то корбарро боз ҳам иштибоҳ кунад. Threbook дар ин бора навиштааст ({A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
. Аз нимаи моҳи январи соли 2019, OceanLotus ин техникаро дубора истифода мекунад, аммо бо мурури замон баъзе конфигуратсияҳоро тағир медиҳад. Дар ин бахш мо дар бораи техника ва тағирот сӯҳбат хоҳем кард.
Эҷоди Лур
ҳуҷҷати THICH-THONG-LAC-HANH-THAP-THIEN-VIET-NAM (1).EXE
(SHA-1: AC10F5B1D5ECAB22B7B418D6E98FA18E32BBDEAB
) бори аввал соли 2018 пайдо шудааст. Ин файли SFX оқилона сохта шудааст - дар тавсиф (Маълумот дар бораи версия) мегӯяд, ки ин тасвири JPEG аст. Скрипти SFX чунин менамояд:
Расми 9. Фармонҳои SFX
Барномаи зараровар аз нав барқарор мешавад {9ec60ada-a200-4159-b310-8071892ed0c3}.ocx
(SHA-1: EFAC23B0E6395B1178BCF7086F72344B24C04DCC
), инчунин расм 2018 thich thong lac.jpg.
Тасвири ифротгароӣ чунин менамояд:
Расми 10. Тасвири фиребхӯрда
Шумо шояд пай бурда бошед, ки ду сатри аввал дар скрипти SFX файли OCX-ро ду маротиба даъват мекунад, аммо ин хато нест.
{9ec60ada-a200-4159-b310-8071892ed0c3}.ocx (ShLd.dll)
Ҷараёни идоракунии файли OCX ба ҷузъҳои дигари OceanLotus хеле монанд аст - пайдарпаии зиёди фармонҳо JZ/JNZ
и PUSH/RET
, навбат бо рамзи ахлот.
Расми 11. Рамзи печида
Пас аз филтр кардани коди партов, содирот DllRegisterServer
, даъват regsvr32.exe
, таври зерин:
Расми 12. Рамзи насбкунандаи асосӣ
Асосан, дар занги аввал DllRegisterServer
содирот арзиши реестрро муқаррар мекунад HKCUSOFTWAREClassesCLSID{E08A0F4B-1F65-4D4D-9A09-BD4625B9C5A1}Model
барои офсети рамзгузорӣ дар DLL (0x10001DE0
).
Вақте ки функсия бори дуюм даъват карда мешавад, он ҳамон арзишро мехонад ва дар он суроға иҷро мешавад. Аз ин ҷо захира ва бисёр амалҳо дар RAM хонда ва иҷро карда мешаванд.
Рамзи shell ҳамон боркунаки PE мебошад, ки дар маъракаҳои гузаштаи OceanLotus истифода мешуд. Онро бо истифода аз тақлид кардан мумкин аст db293b825dcc419ba7dc2c49fa2757ee.dll
, онро ба хотира бор мекунад ва иҷро мекунад DllEntry
.
DLL мундариҷаи манбаи худро истихроҷ мекунад, рамзкушоӣ мекунад (AES-256-CBC) ва кушода (LZMA). Манбаъ дорои формати мушаххасест, ки онро декомпиляция кардан осон аст.
Расми 13. Сохтори конфигуратсияи насбкунанда (KaitaiStruct Visualizer)
Конфигуратсия ба таври возеҳ нишон дода шудааст - вобаста ба сатҳи имтиёзҳо, ба маълумоти дуӣ навишта мешавад %appdata%IntellogsBackgroundUploadTask.cpl
ё %windir%System32BackgroundUploadTask.cpl
(ё SysWOW64
барои системаҳои 64-бит).
Устувории минбаъда тавассути эҷоди вазифа бо ном таъмин карда мешавад BackgroundUploadTask[junk].job
ки дар [junk]
маҷмӯи байтҳоро ифода мекунад 0x9D
и 0xA0
.
Номи аризаи вазифа %windir%System32control.exe
, ва арзиши параметр роҳи файли дуии зеркашидашуда мебошад. Вазифаи пинҳонӣ ҳар рӯз иҷро мешавад.
Сохтор, файли CPL як DLL бо номи дохилӣ мебошад ac8e06de0a6c4483af9837d96504127e.dll
, ки функсияро содир мекунад CPlApplet
. Ин файл манбаи ягонаи худро рамзкушоӣ мекунад {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
, пас ин DLL-ро бор мекунад ва ягона содироти онро даъват мекунад DllEntry
.
Файли конфигуратсияи пушти дарвоза
Конфигуратсияи пушти дари рамзгузорӣ ва дар захираҳои он ҷойгир карда шудааст. Сохтори файли конфигуратсия ба файли қаблӣ хеле монанд аст.
Расми 14. Сохтори конфигуратсияи пушти дари (KaitaiStruct Visualizer)
Гарчанде ки сохтор шабеҳ аст, бисёре аз арзишҳои майдонҳо аз онҳое, ки дар нишон дода шудаанд, нав карда шудаанд
Унсури якуми массиви дуӣ дорои DLL (HttpProv.dll
MD5: 2559738D1BD4A999126F900C7357B759
),
Тадқиқоти иловагӣ
Ҳангоми ҷамъоварии намунаҳо мо баъзе хусусиятҳоро мушоҳида кардем. Намунае, ки дар ин бора тавсиф шудааст, тақрибан дар моҳи июли соли 2018 пайдо шуда буд ва дигарон ба монанди он аз миёнаҳои моҳи январ то аввали феврали соли 2019 пайдо шуданд. Архиви SFX ҳамчун вектори сироят истифода шуда, ҳуҷҷати қонунии фиребгарӣ ва файли OSX-и зарароварро партофтааст.
Гарчанде ки OceanLotus тамғаҳои қалбакиро истифода мебарад, мо пай бурдем, ки тамғаҳои вақтҳои файлҳои SFX ва OCX ҳамеша якхелаанд (0x57B0C36A
(08/14/2016 @ 7:15 UTC) ва 0x498BE80F
(02/06/2009 @ 7:34 UTC) мутаносибан). Ин эҳтимол нишон медиҳад, ки муаллифон як навъ “дизайнер” доранд, ки ҳамон қолабҳоро истифода мебаранд ва танҳо баъзе хусусиятҳоро тағйир медиҳанд.
Дар байни ҳуҷҷатҳое, ки мо аз аввали соли 2018 омӯхтаем, номҳои гуногун мавҷуданд, ки кишварҳои мавриди таваҷҷӯҳи ҳамлагаронро нишон медиҳанд:
— Маълумоти нави тамосии Камбоҷа Media(New).xls.exe
— 李建香 (个人简历).exe (ҳуҷҷати қалбакии pdf-и CV)
— фикру мулоҳиза, Ралли дар ИМА аз 28-29 июли соли 2018.exe
Аз он даме, ки дари пушт кашф карда шуд {A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll
ва нашри таҳлили он аз ҷониби якчанд муҳаққиқон, мо баъзе тағйиротро дар маълумоти конфигуратсияи нармафзори зараровар мушоҳида кардем.
Аввалан, муаллифон ба нест кардани номҳо аз DLL-ҳои ёрирасон шурӯъ карданд (DNSprov.dll
ва ду версия HttpProv.dll
). Пас аз он операторҳо бастабандии DLL сеюмро қатъ карданд (версияи дуюм HttpProv.dll
), интихоб кардани ҷойгиркунии танҳо як.
Дуюм, бисёре аз майдонҳои конфигуратсияи паси дарҳо иваз карда шуданд, ки эҳтимолан ҳангоми дастрас шудани шумораи зиёди IoC аз ошкоркунӣ гурезанд. Майдонҳои муҳиме, ки аз ҷониби муаллифон тағир дода шудаанд, инҳоянд:
- Калиди сабти AppX тағир дода шуд (ниг. IoCs)
- сатри рамзгузории мутекс ("def", "abc", "ghi")
- рақами порт
Ниҳоят, ҳама версияҳои нави таҳлилшуда дорои C&C-ҳои нав дар қисмати IoCs номбар шудаанд.
натиҷаҳои
OceanLotus инкишофро идома медиҳад. Гурӯҳи кибернетикӣ ба такмил ва васеъ кардани асбобҳо ва фиребҳо нигаронида шудааст. Муаллифон бо истифода аз ҳуҷҷатҳои ҷолибе, ки мавзӯи онҳо ба қурбониёни пешбинишуда алоқаманд аст, борҳои зарароварро пинҳон мекунанд. Онҳо схемаҳои навро таҳия мекунанд ва инчунин абзорҳои дастраси оммаро истифода мебаранд, ба монанди истисмори муҳаррири муодила. Ғайр аз он, онҳо асбобҳоро такмил медиҳанд, то шумораи артефактҳои боқимондаи мошинҳои қурбониёнро кам кунанд ва ба ин васила имкони ошкор кардани нармафзори антивирусро коҳиш диҳанд.
Нишондиҳандаҳои созиш
Нишондиҳандаҳои созиш ва инчунин атрибутҳои MITER ATT&CK мавҷуданд
Манбаъ: will.com