本文讲的是
入侵分析钻石模型与基于网络的威胁复制(二),
本文为作者Justin Warner (@sixdub)近期在 BSides DC 峰会上与 Chris·Ross的共同演讲内容的扩展,嘶吼编辑翻译。由于内容过长,分为两篇放出。前文见
入侵分析钻石模型和基于网络的威胁复制
。
那又怎样?为什么红军如此关心?
由于蓝军可以准确、科学地使用这个模型跟踪对手,而红军也正试图模仿一个特定的对手,所以利用这个模型也能够复制所选择的威胁,这一点非常有意义。通过我们对要模拟的对手的了解开始,红军可以来定义和模拟钻石模型中具有各种特征的对手。
对手
首先,红军应该与客户合作,识别环境中可能存在的威胁,或采取他们之前观察到的已知的威胁,来决定对哪些特定的对手进行仿真模拟。红军需要研究攻击者的所有方面,并寻求威胁情报团队,事件响应人员和私人威胁共享组织的帮助以获取关于要仿真模拟的对手的额外信息,这些组织要允许分发相关的信息,包括报告,恶意软件的HASH值,研究结果,分析指标等等。要在这个领域找到这些组织,我个人建议与蓝军团队的成员或恶意软件分析师一起工作,他们可能也与同行业的合作伙伴一起合作。在私人部门,情报往往是专属的,密切的,并且很少在竞争组织之间共享,因为担心声誉损失或竞争优势,所以这使得与私人组织的合作变得非常困难。在演习期间,红军将扮演对手的客户和对手操作人员的角色,所以没有必要区分两者。红军团队应该把主要的精力放在按照预先的计划进行操作以及仿真模拟客户意图的操作。
能力
为了达到发挥能力的目的,红军可以选择与对手密切相关的TPP镜像以及对手使用的恶意软件,但不需要使用对手所拥有的整个“武器库”。由于该演习是为了模拟单个活动组中的一系列恶意事件,因此对手不太可能被迫使用每个可用的工具。因此,可以引入“白卡”,以便允许红军仿真模拟能力和指标中比较重要的那一方面。在BSides DC的演讲和演示中,红军可以开发工具,专门用于模仿对手的几乎同等水平的能力。
基础设施
对于基础设施,没有必要(可能)获得对手所使用的确切的基础设施。红军可以非常逼真的模拟基础设施的使用类型,如:类型I或类型II,以及对手拥有的基础设施形式。例如,如果对手使用WordPress博客分阶段的执行攻击payload,红军可以轻易地安装和配置模拟的受攻击的WordPress页面来托管其初始攻击阶段。此外,如果对手正在使用VPS提供商,则红军也有复制这些操作的可能。作为基础设施特征和技术元特征的一部分,红军将希望确保他们的命令和控制(C2服务器)机制与对手的命令和控制机制密切匹配。Cobalt Strike提供的Malleable C2以及Empire2.0引入的可扩展的C2模块,均可以在这方面帮助红军实现目标控制。
受害者
在所有的参与阶段,红军将希望确保每个受害者能被选择用于特定的目标。一些受害者资产将被当作进一步控制其他受害者的一种手段,在整个攻击链路中(情报的收集,凭证滥用,特权提升),这些受害者及其资产将作为到达最终目标的中转点。红军所选择的最终目标涉及到社会政治元特征,“皇冠宝石”所选择的最终目标应该是基于对所选择的对手的了解,而不仅仅是红军的盲目选择。这往往是准确执行中的最难的部分,因为对手的内心和意图往往是未知的。在一般情况下,红军可以执行目标定位分析和行动重心分析来确定对于对手或组织来说对他们有利或有害的东西,但是这个结果的判断将始终是一个近似值。
元特征
一些模型元特征可以用于在演习期间进一步复制威胁。元特征在上面的图中已经列出,并且对红军演习有着不同的影响。我发现一个比较有用的功能是集成攻击者的资源。例如,如果我们模拟一个拥有少量资源的对手,那么红军就应该将其纳入其参与的每个方面。有限的工具集,软件,培训,设施等都可以进行仿真模拟,以便更好地模仿对手。在我看来这种做法是带有攻击性的,因为我坚信不是每个威胁复制的演习都应该成为一个真正的“高级”威胁。许多在资源方面极为有限的对手,利用开源工具集最终也成功的达到了目标。
方法论是另一个元特征,在有充分有关对手行动方法的报告的情况下,这很容易构建到复制工作的流程中。许多成熟的APT团体对这些组织进行了大量的报告,并根据应对的努力程度编写了研究案例。
复制威胁的挑战
简单地说,将威胁复制作为一种服务的挑战是我们并非真实世界中的对手。操作此类型的服务会有很高的门槛。这里有一些我们经常会面临的挑战:
逆向工程和开发时间的大量要求
定制的工具需要针对特定的操作人员进行培训和测试
情报信息必须丰富和可修改,以便可以模仿操作环境
必须有一个现实的威胁对手正在使用的混合型情报分析师和网络运营商
此外,作为旨在提升我们蓝队副本的伦理提供者,我们的行动会有很多阻止我们复制某些方面的威胁的限制。以下是一些将模拟对手作为服务时会遇到的障碍的列表:
敲诈勒索
HUMINT考核不在范围内
禁止针对家庭网络或个人设备
由于缺少网络权限,无法定位BYOD网络或细分受众群
任何形式的拒绝服务都不允许
不能使用水坑攻击入侵第三方进行情报收集
未经明确的批准,无法获取到关联的企业或子公司
使用0day并不具有成本效益和实用性
案例分析
让我们假设我们是一个国防工业公司的红军,特别是涉及航空航天的领域。通过我们当地的执法联系人和许多威胁情报提供商,我们知道PUTTER PANDA就是面向我们的一个威胁,现在我们想要复制它。我们可以使用上述模型进行规划并启动威胁复制演习。
首先,我们要对对手进行一些研究以便更加了解对手。通过Crowdstrike的分析报告,我们掌握到了很多关于对手包括可能存在的潜在联系的信息:解放军3GSD十二局61486。我们还了解到对手可能具有很强的计算机科学背景和基础军事训练能力。此外,由于与共享的受害者空间中的其他对手的联系,PUTTER PANDA(推杆熊猫)可能具有大量的资源。通过分析解释各种报告后,我们可以假设,虽然对手没有使用最复杂的攻击技术,但是他们在很大程度上成功的使用了很多简单的方法,并专注于中间跳板的访问控制直到最终实现目标。
接下来转向基础架构模型特征的模拟,我们可以在开始时对我们的工作进行细分或专门规划。我们可以注册与报告中列举的一些指标相似的DNS域,比如域名的形式和名称。我们可能会混合使用与技术相关的域名,“正常”的域名和与航空航天相关的域名。基于对手在以前的活动中使用的IP地址的分析,我们得知“推杆熊猫”使用类型I的云基础架构和数据中心来承载其C2节点(即100.42.216.230 -> WEBNX)。有了这些了解,我们可以在同一个云托管公司的地理分布位置上注册一个VPS系统。
对于能力模型特征,我们必须规划,开发和测试用于复制威胁的一些工具。如果你只是进行一般的威胁复制,而不进行高度具体的复制,那你可以利用一个流行的平台,如Cobalt Strike,它提供了一个TON的功能来执行这些类型的操作。Cobalt Strike可以产生类似于“推杆熊猫”使用的那些恶意的微软Word文档同时还具有可扩展的C2功能,使用Beacon RAT与可配置指标进行通信。此外,Empire RAT具有即插即用的通信方式,使我们能够直接的反映“推杆熊猫”的C2连接方式。对于更特殊,准确或特定的威胁复制,你可能需要自己开发自定义的功能。使用C / C#,我们可以开发一个简单的恶意.scr或.exe文件来模拟PUTTER PANDA在初始攻击阶段使用的恶意程序,并使用相同的XOR进行混淆。接下来,该恶意程序可以用于执行来自RAT的命令并模拟版本。在所有的可能性方面,这些工具的一些方面将需要修改和改进,以提高操作的安全性,并防止操作过程中的数据缺陷利用或丢失。攻击者在后期所使用的一些能力大多是开源的工具,并且可以通过RAT进行传送。
在执行之前,可以进行操作规划以分析和识别对于对手客户来说哪些结果状态可被认为是成功的。一般来说,怀疑中国APT组织的涉嫌意图是盗窃知识产权和情报。考虑到这一点,红军可能会进行这些操作,目标是获得该公司生产的军用硬件的敏感设计图。关于分配相关项目的工程师的个人信息的将会作为次要的目标而被优先考虑,因为这些信息可以反馈这些工程师的一些情报信息。在整个操作过程中,红军应该根据这些资产在攻击链中带来的价值或对两个目标的影响能力,来仔细选择要访问控制的资产。
分析方法元特征,我们可以计划将要执行的攻击操作,利用网络钓鱼获得初始访问,然后进行基本的后期信息收集。我们将利用凭证滥用,键盘记录和截图来收集信息并横向扩展,内网渗透。一旦我们实现了我们的目标,我们将使用Cobalt Strike进行控制。方法元特征与时间戳元特征相结合来确定我们要操作的时间,在这种特定的情况下,要求我们可能需要根据目标的归属地(在美国的夜间)的时间期间内(在上海的白天)进行操作。
结论
在红军演习中,进行现实威胁复制的确有一定的障碍。为了完全准确的复制威胁,将需要逆向工程,开发和正确的建模,但大多数组织不能真正理解如何准确地估量他们要试图复制的威胁。入侵分析的钻石模型提出了一个非常清晰的方法,作为红军的团队成员,我们可以布置和提出我们的计划,来复制特定的威胁,就像SOC布置和分类事件活动一样。我会鼓励红军和蓝军对他们所使用的内部或外部提供者如何执行威胁复制以及他们是否真正地复制了对手涉及的多个方面的问题提出质疑。我还将挑战红军团队成员,以便更熟悉威胁挑战组织和蓝军团队成员,这样可以将你所在的组织面临的威胁进行分类,跟踪而不是补救和继续前进。这些方法是的双方在其各自的行动方法论中不断成熟。
原文发布时间为:2017年4月25日
本文作者:丝绸之路
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。