初始攻击向量
攻击始于鱼叉式网络钓鱼邮件,邮件伪装成来自大型国有公司(特别是石油和天然气行业)的合法通信。所有观察到的附件都是RAR压缩包,包含以下结构:
- Требования.lnk
- Требования目录(内含Company Profile.pdf和List of requirements.pdf诱饵文件)
- 隐藏目录Требования\Требования(内含伪装成PDF的可执行文件Company.pdf和Requirements.pdf)
当用户打开Требования.lnk时,会执行以下命令序列:
|
|
恶意代理
攻击者利用DLL劫持技术(T1574.001),通过合法的崩溃报告发送工具BsSndRpt.exe(重命名为nau.exe)来部署恶意负载。该工具需要BugSplatRc64.dll才能正常运行,攻击者将恶意文件保存为该名称,迫使工具加载恶意DLL。
恶意BugSplatRc64.dll库采用动态API解析(T1027.007)技术,通过自定义哈希算法(类似CRC)混淆API函数,并在每次调用后从内存中删除地址。
MessageBoxW函数钩子
恶意DLL的主要目的是拦截合法工具进程地址空间中的API调用以执行恶意代码(DLL替换,T1574.001)。大多数样本修改了MessageBoxW函数调用,将控制权转移到恶意库地址空间中的NewMessageBox函数。
NewMessageBox函数
设置钩子后,每当合法进程中调用MessageBoxW(或其他修改函数)时,就会执行NewMessageBox函数。该函数的主要作用是运行分两阶段加载的shellcode。
首先,可执行文件从恶意库中加密的地址之一检索网页HTML内容。在分析的样本中,这些地址是:
- https://techcommunity.microsoft[.]com/t5/user/viewprofilepage/user-id/2631
- https://www.quora[.]com/profile/Marieformach
NewMessageBox在从这些地址检索的HTML代码中搜索符合代码中定义模式的字符串(混合大小写字母数字字符)。这种技术允许攻击者利用各种流行网站存储这些字符串。
提取的有效负载是base64编码的XOR加密数据。解密后显示URL https://raw.githubusercontent[.]com/Mariew14/kong/master/spec/fixtures/verify-prs,然后下载另一个XOR加密的shellcode。
Shellcode
对shellcode(793453624aba82c8e980ca168c60837d)的分析显示,它是一个反射加载器,将Cobalt Strike Beacon注入进程内存并移交控制权(T1620)。观察到的Cobalt样本与C2服务器moeodincovo[.]com/divide/mail/SUVVJRQO8QRC通信。
归因和受害者
检索shellcode下载地址的方法与EastWind活动中观察到的C2获取模式相似。两个活动都使用专门制作的配置文件在合法在线平台(如Quora或GitHub)上存储URL,并使用XOR算法加密。两个活动的目标部分重叠:攻击者都对俄罗斯IT公司感兴趣。
虽然大多数攻击针对俄罗斯公司,但也在中国、日本、马来西亚和秘鲁发现了恶意活动证据。大多数受害者是大型和中型企业。
防护建议
- 跟踪基础设施状态并持续监控边界
- 使用强大的安全解决方案检测和阻止批量邮件中的恶意软件
- 培训员工提高网络安全意识
- 使用全面系统保护企业设备,在早期阶段检测和阻止攻击
可以通过在文件系统中搜索未签名文件BugSplatRc64.dll来检测此恶意软件。另一个间接攻击迹象是存在文件名不是原始BsSndRpt.exe的崩溃报告发送工具。
IOCs
LNK文件
- 30D11958BFD72FB63751E8F8113A9B04
- 92481228C18C336233D242DA5F73E2D5
合法BugSplat.exe
- 633F88B60C96F579AF1A71F2D59B4566
DLL文件
- 2FF63CACF26ADC536CD177017EA7A369
- 08FB7BD0BB1785B67166590AD7F99FD2
- 02876AF791D3593F2729B1FE4F058200
- F9E20EB3113901D780D2A973FF539ACE
- B2E24E061D0B5BE96BA76233938322E7
- 15E590E8E6E9E92A18462EF5DFB94298
- 66B6E4D3B6D1C30741F2167F908AB60D
- ADD6B9A83453DB9E8D4E82F5EE46D16C
- A02C80AD2BF4BFFBED9A77E9B02410FF
- 672222D636F5DC51F5D52A6BD800F660
- 2662D1AE8CF86B0D64E73280DF8C19B3
- 4948E80172A4245256F8627527D7FA96
URL
- hxxps://techcommunity[.]microsoft[.]com/users/kyongread/2573674
- hxxps://techcommunity[.]microsoft[.]com/users/mariefast14/2631452
- hxxps://raw[.]githubusercontent[.]com/fox7711/repos/main/1202[.]dat
- hxxps://my[.]mail[.]ru/mail/nadezhd_1/photo/123
- hxxps://learn[.]microsoft[.]com/en-us/collections/ypkmtp5wxwojz2
- hxxp://10[.]2[.]115[.]160/aa/shellcode_url[.]html
- hxxps://techcommunity[.]microsoft[.]com/t5/user/viewprofilepage/user-id/2548260
- hxxps://techcommunity[.]microsoft[.]com/t5/user/viewprofilepage/user-id/2631452
- hxxps://github[.]com/Mashcheeva
- hxxps://my[.]mail[.]ru/mail/veselina9/photo/mARRy
- hxxps://github[.]com/Kimoeli
- hxxps://www[.]quora[.]com/profile/Marieformach
- hxxps://moeodincovo[.]com/divide/mail/SUVVJRQO8QRC