定向攻击利用流行在线平台账户作为C2服务器
引言
2024年下半年,俄罗斯IT行业及多个其他国家实体遭受了一场显著的网络攻击。攻击者采用多种恶意技术欺骗安全系统并保持隐蔽。为绕过检测,他们通过俄罗斯和国际社交媒体平台及其他支持用户生成内容的流行网站分发有效载荷信息。分析样本显示其与GitHub、Microsoft Learn Challenge、Quora及俄语社交网络进行通信。攻击者旨在隐藏活动并为长期已知且广泛使用的Cobalt Strike Beacon建立复杂执行链。
尽管攻击活动在2024年11月至12月最为活跃,但持续至2025年4月。经过两个月静默期后,安全解决方案再次检测到攻击。对手使用了新的恶意样本,仅是文中描述样本的略微修改版本。
卡巴斯基解决方案检测到此威胁并分配以下判定:
- HEUR:Trojan.Win64.Agent.gen
- HEUR:Trojan.Win64.Kryptik.gen
- HEUR:Trojan.WinLNK.Starter.gen
- MEM:Trojan.Multi.Cobalt.gen
- HEUR:Trojan.Win32.CobaltStrike.gen
初始攻击向量
初始攻击向量涉及带有恶意附件的鱼叉式网络钓鱼邮件。邮件伪装成来自大型国有公司(特别是石油和天然气行业)的合法通信。攻击者假装对受害者产品和服务感兴趣,以制造可信的合法性假象并增加收件人打开恶意附件的可能性。
观察到的所有附件均为RAR压缩包,结构如下:
|
|
Company Profile.pdf和List of requirements.pdf是诱饵文件,用于补充邮件中的信息。Требования\Требования目录包含名为Company.pdf和Requirements.pdf的可执行文件,设计模仿安全PDF文档。目录本身被隐藏,默认对用户不可见。
当打开Требования.lnk时,文件被复制到%public%\Downloads\并重命名:Company.pdf变为nau.exe,Requirements.pdf变为BugSplatRc64.dll。随后立即执行nau.exe。
恶意代理
在此攻击中,对手利用常见技术:DLL劫持(T1574.001)。为部署恶意有效载荷,他们利用了合法的崩溃报告发送实用程序(原始文件名:BsSndRpt.exe)。该工具是BugSplat的一部分,帮助开发者获取应用程序的详细实时崩溃报告。这是攻击者从Company.pdf重命名为nau.exe的实用程序。
为使BsSndRpt.exe正常运行,需要BugSplatRc64.dll。攻击者以其名称保存恶意文件,强制实用程序加载它而非合法文件。
为进一步逃避检测,恶意BugSplatRc64.dll库采用动态API解析(T1027.007)。此技术涉及在代码中模糊API函数,仅在执行期间动态解析。在此特定案例中,函数通过自定义哈希算法进行混淆,与CRC(循环冗余校验)类似。
恶意样本中的大部分哈希值经过XOR加密。此外,每次调用后,地址从内存中移除,如果需要后续调用则重新加载API函数。
MessageBoxW函数钩子
BugSplatRc64.dll的主要目的是拦截合法实用程序进程地址空间内的API调用以执行其恶意代码(DLL替换,T1574.001)。不是调用进程所需的API函数之一,而是调用位于恶意库地址空间内的函数(我们称之为NewMessageBox)。此技术使得在沙箱环境中难以检测恶意软件,因为库没有特定可执行文件不会启动。在发现的大多数样本中,修改了MessageBoxW函数调用,尽管也发现了修改其他API调用的样本。
挂钩MessageBoxW后,修改拦截函数,库将控制权返回给合法nau.exe进程。
NewMessageBox函数
一旦挂钩就位,只要在合法进程内调用MessageBoxW(或其他修改函数),NewMessageBox就会执行。其主要角色是运行shellcode,分两个阶段加载。
首先,可执行文件从恶意库内加密地址之一的网页检索HTML内容。在分析的样本中,这些地址是https://techcommunity.microsoft[.]com/t5/user/viewprofilepage/user-id/2631和https://www.quora[.]com/profile/Marieformach。两个位置的信息相同。第二个地址在第一个变为非活动时充当备份。
NewMessageBox从这些地址检索的HTML代码中搜索字符串,其开头和结尾匹配代码中定义的模式,由混合大小写字母数字字符组成。此技术允许攻击者利用各种流行网站存储这些字符串。我们发现恶意信息隐藏在GitHub、Microsoft Learn Challenge、问答网站甚至俄罗斯社交媒体平台上的配置文件中。
虽然未发现攻击者使用真实人物社交媒体配置文件的证据,因为所有账户专门为此攻击创建,符合MITRE ATT&CK技术T1585.001,但没有什么能阻止威胁行为者滥用这些平台提供的各种机制。例如,恶意内容字符串可以发布在合法用户帖子的评论中。
提取的有效载荷是base64编码字符串,带有XOR加密数据。解密后,此数据显示URL https://raw.githubusercontent[.]com/Mariew14/kong/master/spec/fixtures/verify-prs,然后下载另一个XOR加密的shellcode。
最初预计NewMessageBox在解密后立即执行shellcode。相反,nau.exe启动具有相同名称和qstt参数的子进程,其中所有上述操作再次重复,最终导致shellcode执行。
Shellcode
对shellcode(793453624aba82c8e980ca168c60837d)的分析显示反射加载器将Cobalt Strike Beacon注入进程内存,然后将控制权移交给它(T1620)。
观察到的Cobalt样本与C2服务器moeodincovo[.]com/divide/mail/SUVVJRQO8QRC通信。
归因和受害者
用于检索shellcode下载地址的方法类似于我们的安全分析师在EastWind活动中观察到的C2获取模式。在这两种情况下,URL存储在合法在线平台(如Quora或GitHub)上特殊制作的配置文件中。在这两种实例中,它也使用XOR算法加密。此外,两个活动的目标部分重叠:两组攻击者都对俄罗斯IT公司表现出兴趣。
值得一提的是,虽然大多数攻击针对俄罗斯公司,但我们也在中国、日本、马来西亚和秘鲁发现了恶意活动证据。大多数受害者为大型和中型企业。
经验教训
威胁行为者使用日益复杂和聪明的方法隐藏长期已知的工具。此处描述的活动使用了如DLL劫持等技术,这在攻击者中越来越受欢迎,以及混淆恶意库内的API调用和使用合法资源(如Quora、GitHub和Microsoft Learn Challenge)托管C2地址。我们建议组织遵循以下指南以保持安全:
- 跟踪基础设施状态并持续监控其边界。
- 使用强大的安全解决方案检测和阻止批量电子邮件中嵌入的恶意软件。
- 培训员工提高网络安全意识。
- 使用全面系统保护企业设备,在早期阶段检测和阻止攻击。
可以通过在文件系统中搜索未签名文件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