我们收集到的每一条情报都应该具有价值和可操作性,可操作性可以是直接使用的(例如:封禁动作),也可以是用于恶意活动归因分析的。这些可操作性的防护手段有的是可以直接在当前组织拥有的设备和技术上直接实现的,而有些则不能。CoA矩阵(Course of Actions Matrix)提供了更为清晰的防护处置方案。
发现 | 检测 | 阻止 | 干扰 | 削弱 | 欺骗 | 摧毁 | |
侦察 | |||||||
武器化 | |||||||
投递 | |||||||
渗透 | |||||||
安装 | |||||||
远控 | |||||||
达成目标 |
CoA矩阵本质很简单,第一列给出了杀伤链的每个阶段,每一行对应了该杀伤链阶段可以采取的防护措施。在防护措施中分成了以下几方面
发现(Discovery)
检测(Detect)
阻断(Deny)
干扰(Disrupt)
削弱(Degrade)
欺骗(Deceive)
摧毁(Destroy)
在我们使用CoA矩阵时会发现不是所有的击杀链阶段都能够适用,这并不能说明CoA矩阵有问题,而是我们将攻击与防护技术进行抽象后,总是会遗漏一些细节。我们在使用这些分析模型时必须认为地区分出适用场景。
推荐阅读论文:https://www.lockheedmartin.com/content/dam/lockheed-martin/rms/documents/cyber/LM-White-Paper-Intel-Driven-Defense.pdf
CoA矩阵中的发现是指利用情报或TTPs,在当前网络中进行回溯搜索,以确定之前是否发生过相关的攻击行为。这种防护手段是时效性最低的,但是依然具有意义,例如发现网络中存在入侵痕迹,但是目前的检测手段未能及时发现,这说明网络安全建设还有许多工作要做。
大多数情况下,发现主要的工作方式是针对特定情报或日志进行搜索,如果组织的设备和技术足够成熟,甚至也可以根据IDS规则,在保留的数据包中检测历史的攻击痕迹。
检测指的是识别实时发生或未来发生的入侵行为,比起发现,检测能够更及时的发现攻击,并且当我们在发现过程中遇到未能检测出的攻击,也可以在检测技术中及时补充。虽然检测这种防护方式本身并不能减少攻击的发生,但是能够减少我们响应入侵的时间。
阻断是网络防护的最普遍的方式,例如根据特定IP阻断TCP连接,针对特定发件人阻断相关的电子邮件。
干扰是在攻击发生期间进行的,通常我们使用IPS、WAF设备根据既有规则阻断攻击者相应的攻击就属于这个范围。除此之外,终端侧的DEP、ASLR技术也是提升攻击门槛的防护方案。还有一些基于网络的干扰技术,例如某些C2通信会保持长时间的TCP会话,而防御方可以利用设备配置,阻断长达数天的TCP连接。
削弱是在入侵进行中采取的防护措施,通常以降低带宽速度实现。这通常不是最佳的防护措施,只能是在需要保证关键业务时,不得已选择的办法。例如发现攻击者在利用FTP将数据外传,而我们不能直接关闭FTP服务,因此对FTP业务进行了限速。
例如在2001年红色代码蠕虫病毒爆发的时候,Tom Liston开发了一种极其有效的技术,通过逐步减小感染机器的TCP窗口大小,减缓了病毒在受保护组织内传播的速度,几乎将其停止,同时仍然允许其他主机可以正常通信。
推荐阅读:https://www.sans.org/reading-room/whitepapers/attacking/labrea-approach-securing-networks-36
欺骗防御,是指防护者通过技术手段,让攻击者以为已经攻击成功的防护方式。这通常包括
将恶意邮件重定向到隔离区进行分析,而不是回复拒收或直接丢弃
针对C2域名进行DNS欺骗,让已经被植入后门的程序连接到指定IP
故意加载可疑邮件中附带的图片或点击URL,让攻击者以为受害者中招
摧毁,或者说反制,是指针对已有的情报进行反向入侵行为。这项防护措施并不适用于大多数组织,在这里它被包含在内,是因为依法行使职权的组织才能进行这种行为。
摧毁不一定是物理上的,可能是针对攻击者的渗透入侵行为,或者DoS拒绝服务攻击。我们甚至可以将抓捕行动归为这个范畴,因为它有效降低了攻击者在未来实施入侵的可能。
在选择合适的防护方案时,我们也需要对情报收益/损失进行权衡。这原本时军事情报上的术语,涉及到对情报收集的影响。例如,如果阻断了一封电子邮件,那我们就无法从电子邮件中获取情报。并且攻击者可能会收到邮件拒收的提醒。根据这个场景分析如下:
阻断,在MTA侧拒收邮件
收益:邮件发送失败,未获取到情报
损失:攻击者知道自己暴露了
干扰:使用反垃圾邮件系统隔离邮件
收益:用户可能会向应急响应中心报告此邮件,我们以此获取情报
损失:用户的正常邮件往来可能受到影响
欺骗:邮件经过安全部门审核再转发到用户手中
收益:对整个邮件进行分析,并提取最新的情报和攻击者使用的技术
损失:消耗人力
显然,通过上述例子,将邮件隔离并进行审查是最好的解决方案,但在某些组织中,可能由于内部政治、技术缺乏、对已有设备的理解不足或者缺少相关流程都可能导致我们无法实施这样的防护方案。因此我们需要明确实施这种方案的优点以及如果不实施这样的方案所产生的风险。并且持续收集这种方案必须执行的证据,以推动安全建设落地。