威胁情报驱动的内容创建:构建模块化检测工程框架

本文详细探讨了基于威胁情报的内容创建流程,涵盖威胁建模、用例开发、Sigma抽象规则、安全控制措施等核心组件,展示了如何通过模块化方法构建可重复、可扩展的检测工程框架,提升组织安全防护能力。

第一部分 — 概述

关于这篇博客文章

在安全运营中心(SOC)中,我们大部分时间都花费在事件的分诊、分析和文档记录上。但这可能只占我们职责的一半,另一半则是开发新内容,以帮助我们防护和检测不断变化的威胁态势。

我想探索是否有一种方法可以为内容创建找到结构和流程,从而避免重复劳动、实现共享、突出显示我们的差距,并且可重复和可扩展。这篇博客文章希望展示我迄今为止的发现。

最初这是一篇单部分的博客文章,但随着我进行更多研究并实施这些内容,我觉得最好更新它并创建两个部分。第一部分是不同组件的概述,第二部分将更多展示实践中的样子。

引言

为了进行深度防护和防御,拥有一个基于所遇到威胁的可重复流程和结构来创建内容具有巨大价值。

结构上模块化,并尽可能机器可读,这将提高效率,并允许您对覆盖范围提出好的问题,例如差距在哪里。

除了传统的原子级IOC(文件哈希、IP地址等),行业越来越倾向于通过Sigma项目使用STIX结构化数据共享检测方法。这将加速以下大部分流程,使内容创建者能够专注于为其环境进行调整。

以下是我对它们如何映射在一起的看法,我 heavily based on elements of several projects such as Sigma, Atomic Threat Coverage and John Lambert’s Talk/Blog on the Githubification of Infosec.

组件

[按回车或点击查看完整尺寸图片]

威胁类型

安全可以定义为为降低威胁风险而采取的措施。因此,在采取适当措施之前,必须对威胁有所了解。

美国前国防部长唐纳德·拉姆斯菲尔德的一句名言:

“说某事尚未发生的报告总是让我感兴趣,因为正如我们所知,有些事是已知的已知(known knowns);有些事我们知道我们知道。我们也知道有已知的未知(known unknowns);也就是说,我们知道有些事情我们不知道。但也有未知的未知(unknown unknowns)——那些我们不知道我们不知道的事情。纵观我国和其他自由国家的历史,往往是后一类事情更棘手。”

这段话表达了多年来用于映射威胁的方法,这里我们将其分为三类:

  • 已知的已知威胁 — 这些是您直接意识到的威胁,在典型的安全上下文中,可能是恶意URL或恶意软件。
  • 已知的未知威胁 — 基于您已知的威胁可以确定的威胁。例如,您可能围绕已知的恶意基础设施进行扩展以识别更多,或者寻找正在使用的TTP的其他示例。Mitre ATT&CK中呈现的TTP提供了一个巨大的技术库,可以作为开始识别技术以构建检测的绝佳起点。
  • 未知的未知威胁 — 您事先没有知识的威胁,如上所述,这些是一个挑战,因为您没有先验知识。虽然许多TTP通过报告或红队报告公开,但我们必须记住,熟练的对手将拥有未知工具和技术的目录,他们可能希望保留到合适的时刻。(想想方程式组织)。这就是传统威胁搜寻(例如查看异常)有价值的地方。

威胁建模

威胁建模是用于确定您面临和最关心的威胁和风险的方法。最终,威胁情报中使用了许多不同的方法,这本身就是一个巨大的主题,一个常见的工具是钻石模型:

每个组织、个人或内部资源将面临不同和共享的威胁,例如,在您的组织中可能存在个人可识别信息(PII),它将面临与知识产权不同的威胁。不同的对手可能想要不同的东西,因此良好的威胁建模可以突出正确的风险领域。

威胁建模最终将用于塑造您在决定最感兴趣的已知已知和已知未知威胁时的优先级。

记录威胁

当了解到新的威胁时,需要将其记录下来。这些威胁可能以对手(例如APT29)、特定工具集(例如Cobalt Strike)甚至特定业务需求(例如高价值资产)的形式出现。我们可以在Mitre ATT&CK的软件和组中看到这方面的示例。

您将希望编译您自己的我称之为“威胁档案”的内容,其中应记录诸如以下信息:

  • 对手、工具集或高价值资产的背景描述。
  • 关于其所知内容的变更日志。
  • 指向任何采用的规则/TTP的链接(例如Mitre ATT&CK技术)

开发用例

术语“检测工程”涵盖了将这些TTP和IOC识别为抽象结构,随后开发为适用于IDS、EDR或SIEM等平台的规则。

对于进行更改的对手,“痛苦金字塔”可以帮助描述更改指标对对手的困难程度。作为防御者和检测工程师,我们必须确保我们不固守于检测和预防较低级别的元素——虽然阻止很重要,但这些元素的寿命要短得多,并且您抽象得越远——您越有可能找到“未知的已知”或“未知的未知”威胁。

(图片来自 https://www.netsurion.com/articles/the-pyramid-of-pain

安全控制

能够检测威胁很好,但如果您也能预防威胁就更好了。检测工程的一部分将是探索您可以实施的可能阻止威胁路径的控制措施。一个简单的例子是恶意IP地址,如果您知道它是恶意的,您可以通过在防火墙上阻止它来预防,但您也想知道是否有人尝试访问它,因为关于原因应该回答一些问题。

坚定的对手不太可能因为其一种方法失败而停止,因此通过控制措施预防威胁也应始终是一种检测,以便可以确定更大的图景并且响应可以更全面。

安全控制是一个大主题,并构成许多认证框架(如Cyber Essentials、NIST 800等)的主要组成部分。

抽象规则(Sigma)

简而言之,检测规则有数据输入、一些逻辑和一个结果。因此,检测规则首先应以抽象方式编写,描述意图,同时记录依赖关系并将其与触发时应采取的任何操作(剧本)联系起来。上下文是关键,响应警报的人必须能够轻松理解它为何触发及其含义。

任何其他关系都可以在此抽象规则中映射,例如指向任何外部参考的链接以及围绕它的一些背景描述。

Sigma项目 https://github.com/SigmaHQ/sigma 是一种通用规则格式,规则可以用Sigma编写,并使用Sigmac等工具将其转换为特定于您平台(如Splunk或Sentinel)的规则。

虽然最终规则中的某些复杂性可能无法以允许自动转换的方式传达,但目标最终是集中记录逻辑目的及其所有关系。

最后,规则有生命周期并且可以是动态的,规则应引用任何调整变更日志,并记录审查计划。

安全工具规则

一旦确定了规则的抽象目的,检测工程过程的一部分将是编写规则本身。这可以采取多种形式,它可能在SIEM中、在EDR中、在诸如Snort的IDS中,或者在数据之上放置逻辑以进行检测的任何其他地方。

规则本身不太可能提供任何上下文和参考,这就是为什么拥有抽象规则如此有用。

数据源要求

您检测威胁的能力将取决于您有权访问的可见性。例如,如果您想部署IDS签名,那么您需要在正确的网段上安装IDS,并具有检查加密内容的能力。如果您想检测端点上的事件,您需要通过诸如AV或EDR之类的工具在端点上检测它们,或者从检索到的日志中检测。

在检测工程阶段,您需要确定检测或预防威胁的最佳方法,这可能是来自特定数据源的特定日志字段。此练习将使您能够识别覆盖范围的差距,并可以塑造您覆盖它们的优先级。

为了支持这一点,Mitre最近开始映射技术以及检测它们所需的数据源。有关信息可以在此处查看:https://github.com/mitre-attack/attack-datasources

[按回车或点击查看完整尺寸图片]

剧本

如果规则触发,抽象规则中提供的上下文可以帮助响应者理解它并进行进一步调查。值得记录任何建议的后续步骤,这些步骤应用于协助调查或采取补救措施。

这应该是模块化的——特定的操作,例如“在防火墙上阻止IP”或“联系用户”,可以通过许多规则重复,不需要重复。

置信度测试

一旦检测或预防规则就位,就需要有一种方法知道它将按预期工作。有时这可能是手动创建规则触发条件的情况,例如运行会触发规则的命令,但这里也有几个框架和工具可以提供帮助,例如Red Canary的Atomic Red Team测试和Mordor数据集。

Mitre ATT&CK 及更多

Mitre项目和Mitre ATT&CK随着时间的推移已成为许多安全工具的基准。随着新技术被观察到,这些技术被映射到此框架中,同时包含关于对手、数据源要求等的信息。

最近,创建了Mitre D3fend矩阵,以帮助人们确定检测或预防ATT&CK中TTP所需的能力。

如上所述,Mitre还在重组数据源要求(https://github.com/mitre-attack/attack-datasources),以便防御者能够准确识别他们需要什么以进行最佳检测。

结论

行业正越来越趋向于采用模块化、开源的方法来进行威胁情报驱动的内容开发流程,Mitre在许多方面引领潮流。

Mitre已成为供应商的标杆,因此在我看来,他们的工作将导致安全能力的快速加速,因为人们能够越来越多地协作和共享。

防御者将能够更多地专注于防御和发现新的、未知的未知威胁,而不是花费大量时间将已知威胁调整到其组织。

此领域的项目/进一步阅读

  • Atomic Threat Coverage 项目 (https://github.com/atc-project/atomic-threat-coverage) 这项工作在完成上述许多映射方面做得很好,使用ATC Re&ct框架将Sigma规则与剧本联系在一起,以及数据源和Atomic Red Team测试。此外,它可以生成Markdown和Confluence页面,并通过Kibana仪表板显示覆盖范围。它是上述内容的主要影响之一。
  • Open Security Collaborative Development (https://oscd.community/) 该项目的目标是“解决常见问题,分享知识,并改善一般安全状况”。
  • Microsoft Threat Intelligence的John Lambert博客“The githubification of infosec” https://medium.com/@johnlatwc/the-githubification-of-infosec-afbdbfaad1d1 John Lambert更详细地讨论了上述许多概念,并且是上述开发的主要灵感来源。
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计