这是对 (Ember Bear) APT 组织针对乌克兰能源组织的攻击的模拟,攻击活动于 2021 年 4 月活跃,攻击链开始向该组织的一名员工发送鱼叉式网络钓鱼电子邮件,该电子邮件使用社会工程主题,表明该个人犯了罪。该电子邮件附加了一个 Word 文档,其中包含一个恶意 JavaScript 文件,该文件将下载并安装称为 SaintBot(下载器)和 OutSteel(文档窃取程序)的有效负载。OutSteel 工具是一个简单的文档窃取程序。它根据文件类型搜索可能敏感的文档,并将文件上传到远程服务器。OutSteel 的使用可能表明,该威胁组织的主要目标涉及收集有关政府组织和涉及关键基础设施的公司的数据。SaintBot 工具是一个下载器,允许威胁行为者在受感染的系统上下载和运行其他工具。SaintBot 为 Actor 提供对系统的持久访问权限,同时授予进一步增强其功能的能力。我依靠 palo alto 来弄清楚制作这个模拟的细节:https://unit42.paloaltonetworks.com/ukraine-targeted-outsteel-saintbot/
这次攻击包括几个阶段,包括指向 Zip 档案的链接,这些档案在鱼叉式网络钓鱼电子邮件中包含恶意快捷方式 (LNK),以及 PDF 文档、Word 文档、JavaScript 文件和控制面板文件 (CPL) 可执行文件形式的附件。甚至电子邮件附带的 Word 文档也使用了各种技术,包括恶意宏、嵌入式 JavaScript 和利用 CVE-2017-11882 将有效负载安装到系统上。除了 CPL 可执行文件外,大多数交付机制都依赖于 PowerShell 脚本从远程服务器下载和执行代码。
-
创建 Word 文档:编写一个 Word 文档 (.docx),其中包含利用 CVE-2017-11882 将有效负载安装到系统上的行为。
2. CVE-2017-11882:该漏洞允许攻击者通过无法正确处理内存中的对象,在当前用户的上下文中运行任意代码。
3. 数据泄露:通过 Discord API C2 通道,这集成了 Discord API 功能,以促进受感染系统和攻击者控制的服务器之间的通信,从而可能将流量隐藏在合法的 Discord 通信中。
4. SaintBot:是一个有效载荷加载器,它包含根据攻击者的要求下载更多有效载荷的功能。
5. 攻击者使用 .BAT 文件禁用 Windows Defender 功能,它通过 CMD 执行多个命令来修改注册表项并禁用 Windows Defender 计划任务来实现这一点。
6. OutSteel:是使用脚本语言开发的文件上传器和文档窃取程序。
此攻击中使用的 PDF 和 docx 文件的一些示例。
第一阶段(分娩技术)
首先,我将创建一个 Word 文件,用于注入攻击者在实际攻击中使用的漏洞,以在系统上安装有效负载。
2021 年 4 月:针对乌克兰政府组织的比特币主题鱼叉式网络钓鱼电子邮件。
第二阶段(利用 Microsoft Office 内存损坏漏洞 CVE-2017-11882)
其次,攻击者利用了零日漏洞 (CVE-2017-11882) 是 Microsoft Office 中的一个漏洞,特别影响 Microsoft Office 2007 Service Pack 3、Microsoft Office 2010 Service Pack 2、Microsoft Office 2013 Service Pack 1 和 Microsoft Office 2016。此漏洞被归类为内存损坏问题,该问题是由于不正确处理内存中的对象而发生的。
漏洞利用存储库:https://github.com/0x09AL/CVE-2017-11882-metasploit?tab=readme-ov-file
此漏洞允许攻击者通过未能正确处理内存中的对象,在当前用户的上下文中运行任意代码,然后我在网络钓鱼电子邮件中放置了一个 Word 文件,包括指向包含恶意快捷方式 (LNK) 的 Zip 文件的链接。
sudo cp cve_2017_11882.rb /usr/share/metasploit-framework/modules/exploits/windows/fileformat
须藤已更新b
msf6 >使用 exploit/windows/fileformat/office_ms17_11882
Discord API C2 通道的第三阶段(数据泄露)
攻击者使用 Discord C2(命令和控制)API 作为在其有效载荷和攻击者服务器之间建立通信通道的手段。通过使用 Discord 作为 C2 服务器,攻击者可以将他们的恶意活动隐藏在到 Discord 的合法流量中,使安全团队更难检测到威胁。
首先,我需要创建一个 Discord 帐户并激活其权限,如下图所示。
-
创建 Discord 应用程序。
2. 配置 Discord 应用程序。
3. 转到 “Bot”,找到 “Privileged Gateway Intents”,打开所有三个 “Intents”,然后保存。
此脚本集成了 Discord API 功能,以促进受感染系统和攻击者控制的服务器之间的通信,从而可能将流量隐藏在合法的 Discord 通信中,并检查是否提供了 Discord 机器人令牌和频道 ID。如果是,它会启动 Discord 机器人功能;否则,它将仅使用 IP 和端口继续。这样,如果未输入 Discord 详细信息,脚本可以在没有 Discord 详细信息的情况下继续连接。
第四阶段(SaintBot payload Loader)
SaintBot 是最近发现的恶意软件加载程序,由 MalwareBytes 于 2021 年 4 月记录。它包含根据威胁行为者的要求下载更多有效负载的功能,通过多种不同的方式执行有效负载,例如注入到生成的进程或加载到本地内存中。它还可以在需要时在磁盘上更新自身 - 并删除其存在的任何痕迹。SHA-256: e8207e8c31a8613112223d126d4f12e7a5f8caf4acaaf40834302ce49f37cc9c
1.区域设置检查:IsSupportedLocale 函数检查系统的区域设置是否与特定区域设置匹配。
2.下载负载:DownloadPayload 函数从指定的 URL 下载文件并将其保存到指定的文件路径。
3.注入到进程中:InjectIntoProcess 函数按名称将 DLL 注入到正在运行的进程中。
4.Self-Deleting:SelfDelete 函数在执行后删除可执行文件。
第五阶段(禁用 Windows Defender)
此批处理文件用于禁用 Windows Defender 功能。它通过 CMD 执行多个命令来修改注册表项并禁用 Windows Defender 计划任务来实现这一点。
第六阶段(OutSteel 窃取者)
OutSteel 是使用脚本语言 AutoIT 开发的文件上传器和文档窃取程序。它与其他二进制文件一起执行。它首先扫描本地磁盘以搜索包含特定扩展名的文件,然后将这些文件上传到硬编码的命令和控制 (C2) 服务器。我模拟了这个 Infostealer,但通过 PowerShell 脚本。
Github 存储库:https://github.com/S3N4T0R-0X0/APT-Attack-Simulation/tree/main/Russian%20APT%2FEmber-Bear-APT
原文始发于微信公众号(安全狗的自我修养):Ember Bear APT 攻击模拟
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论