Дар моҳи марти соли 2019, як намунаи нави нармафзори зараровари macOS аз гурӯҳи киберии OceanLotus ба VirusTotal, як хидмати маъмули сканкунии онлайн бор карда шуд. Файли иҷрошавандаи пушти дарвоза дорои қобилиятҳоест, ки версияи қаблии нармафзори зараровари macOS, ки мо омӯхта будем, аммо сохтори он тағир ёфтааст ва ошкор кардани он душвортар шудааст. Мутаассифона, мо натавонистем як қатрачаи марбут ба ин намунаро пайдо кунем, аз ин рӯ мо то ҳол вектори сироятро намедонем.
Мо ба наздикӣ нашр кардем
Таҳлил
Се қисми оянда таҳлили намунаро бо hash SHA-1 тавсиф мекунанд E615632C9998E4D3E5ACD8851864ED09B02C77D2
. Файл номида мешавад дурахш, Маҳсулоти антивирусии ESET онро ҳамчун OSX/OceanLotus.D муайян мекунад.
Муҳофизати зидди хатогиҳо ва қуттии қум
Мисли ҳама дунарҳои macOS OceanLotus, намуна бо UPX бастабандӣ карда мешавад, аммо аксари абзорҳои мушаххаси бастабандӣ онро эътироф намекунанд. Эҳтимол ин аз он сабаб аст, ки онҳо асосан имзоеро дар бар мегиранд, ки аз мавҷудияти сатри "UPX" вобастаанд, илова бар ин, имзоҳои Mach-O камтар маъмуланд ва зуд-зуд нав карда намешаванд. Ин хусусият муайянкунии статикиро душвор мегардонад. Ҷолиб он аст, ки пас аз кушодан, нуқтаи вуруд дар ибтидои бахш аст __cfstring
дар сегмент .TEXT
. Ин бахш дорои атрибутҳои парчам аст, ки дар тасвири зер нишон дода шудааст.
Расми 1. Атрибутҳои қисмати MACH-O __cfstring
Тавре ки дар расми 2 нишон дода шудааст, маконҳои код дар фасли __cfstring
ба шумо имкон медиҳад, ки бо нишон додани код ҳамчун сатр баъзе асбобҳои ҷудокуниро фиреб диҳед.
Тасвири 2. Рамзи паси дарвоза аз ҷониби IDA ҳамчун маълумот муайян карда шудааст
Пас аз иҷро шудан, бинарӣ риштаро ҳамчун антидебаггер эҷод мекунад, ки ҳадафи ягонаи он пайваста тафтиш кардани мавҷудияти ислоҳкунанда мебошад. Барои ин ҷараён:
— Кӯшиш мекунад, ки ягон debugger кушояд, занг ptrace
с PT_DENY_ATTACH
ҳамчун параметри дархост
- Тавассути занги функсия кушода будани баъзе портҳои истисноиро тафтиш мекунад task_get_exception_ports
- Тавассути мавҷудияти парчам, тавре ки дар расми зер нишон дода шудааст, пайваст будани debugger-ро тафтиш мекунад P_TRACED
дар раванди ҷорӣ
Тасвири 3. Тафтиши пайвасти debugger бо истифода аз функсияи sysctl
Агар саги назорат мавҷудияти ислоҳкунандаро муайян кунад, функсия даъват карда мешавад exit
. Илова бар ин, намуна пас аз иҷрои ду фармон муҳити атрофро тафтиш мекунад:
ioreg -l | grep -e "Manufacturer" и sysctl hw.model
Намуна пас аз он арзиши баргардониданро бо рӯйхати сахт-рамзи сатрҳо аз системаҳои маълуми виртуализатсия тафтиш мекунад: акл, vmware, виртуалӣ ё баробар. Дар ниҳоят, фармони навбатӣ тафтиш мекунад, ки оё мошин яке аз "MBP", "MBA", "MB", "MM", "IM", "MP" ва "XS" аст. Инҳо рамзҳои модели система мебошанд, масалан, "MBP" маънои MacBook Pro, "MBA" маънои MacBook Air ва ғайраро дорад.
system_profiler SPHardwareDataType 2>/dev/null | awk '/Boot ROM Version/ {split($0, line, ":");printf("%s", line[2]);}
Иловаҳои асосӣ
Гарчанде ки фармонҳои пушти дари пас аз таҳқиқоти Trend Micro тағир наёфтаанд, мо чанд тағироти дигарро мушоҳида кардем. Серверҳои C&C, ки дар ин намуна истифода мешаванд, хеле наванд ва дар 22.10.2018/XNUMX/XNUMX сохта шудаанд.
- daff.faybilodeau[.]com
- sarc.onteagleroad[.]com
- au.charlineopkesston[.]com
URL-и манбаъ ба он тағйир ёфт /dp/B074WC4NHW/ref=gbps_img_m-9_62c3_750e6b35
.
Бастаи аввалине, ки ба сервери C&C фиристода шудааст, дорои маълумоти бештар дар бораи мошини ҳост, аз ҷумла тамоми маълумоте, ки аз ҷониби фармонҳои ҷадвали зер ҷамъоварӣ шудааст.
Илова ба ин тағйироти конфигуратсия, намуна китобхонаро барои филтркунии шабака истифода намебарад gFjMXBgyXWULmVVVzyxy
, бо сифрҳо пур карда шудааст. Ҳар як файл рамзкушоӣ ва ҳамчун захира карда мешавад /tmp/store
, ва кӯшиши бор кардани он ҳамчун китобхона бо истифода аз функсия анҷом дода мешавад dlopen
, пушти дари функсияҳои содиротӣ истихроҷ мекунад Boriry
и ChadylonV
, ки аз афташ барои иртиботи шабакавӣ бо сервер масъуланд. Мо қатрача ё файлҳои дигар аз макони аслии намуна надорем, аз ин рӯ мо ин китобхонаро таҳлил карда наметавонем. Ғайр аз он, азбаски ҷузъи рамзгузорӣ шудааст, қоидаи YARA дар асоси ин сатрҳо ба файли дар диск мавҷудбуда мувофиқат намекунад.
Тавре ки дар мақолаи боло тавсиф шудааст, он эҷод мекунад муштарӣ ID. Ин ID ҳеши MD5-и арзиши баргардонидани яке аз фармонҳои зерин аст:
- ioreg -rd1 -c IOPlatformExpertDevice | awk '/IOPlatformSerialNumber/ { split($0, line, """); printf("%s", line[4]); }'
- ioreg -rd1 -c IOPlatformExpertDevice | awk '/IOPlatformUUID/ { split($0, line, """); printf("%s", line[4]); }'
- ifconfig en0 | awk '/ether /{print $2}'
(суроғаи MAC гиред)
- дастаи номаълум ("x1ex72x0a
"), ки дар намунаҳои қаблӣ истифода шудааст
Пеш аз ҳашинг, ба арзиши бозгашт "0" ё "1" илова карда мешавад, то имтиёзҳои решаро нишон диҳад. Ин муштарӣ ID нигоҳ дошта мешавад /Library/Storage/File System/HFS/25cf5d02-e50b-4288-870a-528d56c3cf6e/pivtoken.appex
, агар код ҳамчун реша ё дар ~/Library/SmartCardsServices/Technology/PlugIns/drivers/snippets.ecgML дар ҳама ҳолатҳои дигар иҷро карда шавад. Файл одатан бо истифода аз функсия пинҳон карда мешавад touch –t
бо арзиши тасодуфӣ.
Рамзгузории сатрҳо
Мисли имконоти қаблӣ, сатрҳо бо истифода аз AES-256-CBC (калиди шонздаҳӣ: 9D7274AD7BCEF0DED29BDBB428C251DF8B350B92
padded бо сифрҳо, ва IV пур бо сифр) тавассути функсия
Донистани прототипи функсия рамзкушоӣ, скрипт ҳама истинодҳои байнисоҳавӣ ба ин функсия, ҳама далелҳоро пайдо мекунад, сипас маълумотро рамзкушоӣ мекунад ва матни оддиро дар дохили шарҳ дар суроғаи истинодҳои байнисоҳавӣ ҷойгир мекунад. Барои дуруст кор кардани скрипт, он бояд ба алифбои фармоишӣ, ки аз ҷониби функсияи рамзкушоии base64 истифода мешавад, танзим карда шавад ва тағирёбандаи глобалӣ бояд дорои дарозии калид бошад (дар ин ҳолат DWORD, ба расми 4 нигаред).
Расми 4. Муайянкунии тағирёбандаи глобалии key_len
Дар равзанаи Функсия шумо метавонед функсияи рамзкушоиро бо тугмаи рости муш клик кунед ва "Аргументҳоро истихроҷ ва рамзкушоӣ" -ро клик кунед. Скрипт бояд сатрҳои рамзкушошударо дар шарҳҳо ҷойгир кунад, тавре ки дар расми 5 нишон дода шудааст.
Расми 5. Матни рамзкушошуда дар шарҳҳо ҷойгир карда шудааст
Ҳамин тариқ, сатрҳои рамзкушошуда дар равзанаи IDA ба таври мувофиқ ҷойгир карда мешаванд xrefs барои ин функсия тавре ки дар расми 6 нишон дода шудааст.
Расми 6. Xrefs ба функсияи f_decrypt
Скрипти ниҳоиро дар ин ҷо пайдо кардан мумкин аст
хулоса
Тавре ки аллакай зикр гардид, OceanLotus пайваста асбобҳои худро такмил ва навсозӣ мекунад. Ин дафъа, гурӯҳи киберӣ нармафзори зарароварро барои кор бо корбарони Mac такмил дод. Рамз чандон тағир наёфтааст, аммо азбаски бисёре аз корбарони Mac маҳсулоти амниятро нодида мегиранд, муҳофизати нармафзори зараровар аз ошкор аҳамияти дуюмдараҷа дорад.
Маҳсулоти ESET дар вақти тадқиқот аллакай ин файлро ошкор карда буданд. Азбаски китобхонаи шабакавӣ, ки барои алоқаи C&C истифода мешавад, ҳоло дар диск рамзгузорӣ шудааст, протоколи шабакавии аз ҷониби ҳамлагарон истифодашаванда ҳанӯз маълум нест.
Нишондиҳандаҳои созиш
Нишондиҳандаҳои созиш ва инчунин атрибутҳои MITER ATT&CK низ дастрасанд
Манбаъ: will.com