Invoke-APT29:模拟攻击仿真
2020-03-09 09:30:00 Author: www.4hou.com(查看原文) 阅读量:233 收藏

MITRE最近在其正在进行的年度Endpoint Security Eficacy测试和评估系列中进行了第二次ATT&CK反攻击仿真,此次仿真侧重于评估多个端点安全供应商针对模拟攻击者的行为能力,该测试基于详细记录的真实攻击参与者。预防不是这次测试的重点,因此假定的攻击和了解攻击者在被利用后活动的能力是主要的重点。MITR每年都会选择一个新的攻击角色,并根据公众对攻击者的了解尽可能紧密地进行模拟。

在2019年的ATT&CK评估中,臭名昭著的APT29被选为模拟组。他们是来自俄罗斯独的攻击者,最出名的是2015年夏天开始的对民主党全国委员会的攻击,该组织已经活跃了近十年,并有许多别名,如YTTRIUM、The Dukes、Cozy Bear和CozyDuke。他们的战术根据获取访问的目标和方法有很大的不同:从低速度和慢速的目标技术到全面攻击和获取,经常利用自定义的恶意软件,并依赖于PowerShell的  Living off the Land Binaries and Scripts (LOLBas) 。

考虑到主要依赖于PowerShell和相关技术,我已经将APT29最广泛使用的技术集合编译成一个PowerShell脚本,这样其他人就可以快速、轻松、安全地模拟大多数与MITRE ATT&CK相关的这种攻击者技术。该脚本主要由Red Canary Atomic Red Team框架中包含的技术组成,尽管许多技术已经被设置为和APT29相同的技术。VMware Carbon Black攻击分析单元(TAU)在准备最新的MITER ATT&CK评估回合时开发的自定义攻击场景和技术对此进行了补充:

下载地址

要开始使用脚本,只需将脚本作为模块导入,然后使用-help标志调用Invoke-APT29函数,以显示使用说明和基本信息。

1.png

显示Invoke-APT29的可用选项

2.png

显示来自MITRE ATT&CK网站的APT29上的信息

要查看(MITRE网站上)记录的有关APT29的高级信息,请调用带有-about标志的Invoke-APT29。

此时,你可以开始启动模拟攻击。这些模块由MITRE TID组成,可以通过-listTechniques标记列出。

3.png

显示可用的MITRE ATT&CK技术

4.png

使用搜索查找和启动UAC绕过技术的示例

你也可以搜索术语/工具等,通过搜索标志,找到要模拟的攻击后,将TID作为一个标志发送,以查看有关技术和执行指令的信息。将-listVariants附加到该函数将突出显示模拟攻击活动的不同方法,一旦选择了所需的攻击,通过发送-attack和-variant #标志来执行模拟攻击。

大多数模拟可以在管理权限内执行,有些模拟旨在提升权限,如上面的UAC示例。但是,某些攻击将需要管理访问权限才能成功。这些技术也可能被你的端点安全解决方案所阻止,因为所使用的技术在业界是众所周知的。

5.png

Invoke-Mimikatz sekurlsa转储攻击模拟

有些攻击会对系统进行更改,如修改注册表、创建计划任务等。因此,在合适的情况下,攻击带有-cleanup选项,允许你删除与模拟相关的任何持久数据。

6_stickykeys.png

粘滞键持久性攻击和删除示例

虽然此脚本主要关注跨单个端点的模拟,但可以跨远程主机执行攻击,并强调横向移动如何影响端点安全解决方案的遥测。首先,你可以通过发送-enablePSRemoting标志来启用PowerShell remoting,还有一个-disablePSRemoting来关闭这个功能。

7.png

PSRemoting自动化(不安全)配置

启用了PSRemoting后,现在可以在目标主机上远程执行PowerShell命令。默认情况下,“远程”攻击的目标是本地主机,因此,为了更准确地模拟此活动,建议使用惟一的域信息修改脚本。

8.png

通过psremoting在远程系统上运行Invoke-Mimikatz

为了更进一步,该脚本实现了多种方法来获得流行命令和控制工具的反向shell,如Metasploit和Empire,以及一些更流行的LOLBas选项,如Rundll32和MSHTA。要利用它们,请设置-shell标志和所需的选项。

默认情况下,这些都不是武器化/配置的,因为这些必须自定义到你自己的C2。但是,提供了攻击示例,这些示例有待进一步扩展。

9_shell.png

远程Shell示例

建立shell程序后,就可以通过将脚本导入到信标中来继续利用Invoke-APT29.ps1。例如,在Cobalt Strike中,可以使用PowerShell-Import和Powerpick完成此操作,这可以通过各种方式在类似的平台上实现。

10_cobaltstrike.png

Cobalt Strike powershell-import和powerpick示例

最重要的是,在执行各种攻击模拟之后,你将需要检查端点安全解决方案,以度量总体安全性,并确保能够检测所执行的活动。

利用Invoke-APT29,你可以模拟一个流行的、有文档记录的攻击者,并了解端点保护解决方案的安全性。

本文翻译自:https://www.carbonblack.com/2020/01/29/invoke-apt29-adversarial-threat-emulation/如若转载,请注明原文地址:


文章来源: https://www.4hou.com/posts/gQ4D
如有侵权请联系:admin#unsafe.sh