[14.04.22]Ryan Stillions - On TTPs

在事件检测和响应的背景下,究竟什么是“TTP”?多年来,您可能已经阅读了一百个帐户,从安全博客到人们使用“TTP”一词说诸如“ ……在这里我们看到攻击者的 TTP 如何转移…… ”之类的书籍,或者也许他们像“ ……这个特定的威胁演员所采用的战术、技术和程序…… ”一样为你拼写出来,但你留下的印象是他们可能无法向你解释这意味着什么,或者他们之间的区别?我不知道为什么,但这总是让我很困扰。无论出于何种原因,我都觉得有必要找到这些区别,因此:

  1. 当应用于网络时,我可以确保我正确地引用了它们。
  2. 我可以知道,从情报、检测和响应的角度来看,将它们分开是否有任何好处,并在我们的研究和日常实践中明确地利用它们。

我将部分功劳归咎于我职业生涯的早期,作为美国空军的一名飞行员,后来又作为几个空军单位的国防承包商,我有机会与人们并肩工作他们将战术、技术和程序作为日常用语的一部分。
令人痛苦的是,这种区别是绝对存在的。快进几年,跳出 DoD/DIB 社区,散布在企业 IR 战壕中赚到的几根白发,我发现自己很难理解我们作为一个社区是否真的想出了 TTP网络。
出于这些原因,几个月前我开始了个人探索。我想看看我是否可以找到任何试图在网络环境中明确定义、比较或对比“TTP”的官方引用,并展示它们如何单独使用或与其他模型联合使用,以进一步推进我们在该环境中的工作超出原子妥协指标 (IoC) 的事物。在这篇博文中,我将与您分享我对“TTP”定义的发现,然后过渡到我认为它们如何应用于事件检测和响应。

TTP 定义

“TTP”一词源于军队(确切日期和原始来源未知),是“战术、技术和程序”的首字母缩写词,其中每个都有自己的定义,我们将在这里稍作介绍。
TTP 由美国国防部联合参谋长联席会议正式为我们定义,联合出版物 1-02 ( JP 1-02 ) 题为“国防部军事和相关术语词典”:
TTPs(Tactics, Techniques and Procedures,战术、技术以及过程) - 图1
其中指出:

1.1 范围
“联合出版物 1-02,国防部军事和相关术语词典列出了标准的美国军事和相关术语,以涵盖美国武装部队的联合活动。 这些军事和相关术语,连同它们的定义, 构成国防部 (DOD) 所有部门通用的经批准的术语。 ”

这一点很重要,因为它确立了这样一个事实,即本文档不仅是权威的,而且这些术语是官方的(不仅仅是俚语),它们是发布的,并且它们在所有服务分支和所有组件中共同使用。
下一节写道:

1.2 目的
“本出版物 补充了标准的英语词典 ,并使军事和相关术语标准化,以改善国防部内部、与其他联邦机构以及美国及其盟国之间的沟通和相互理解。 ”

这很重要,原因有两个:

  1. 它将这些定义澄清为对标准字典定义的补充,并且
  2. 它将谁使用这些术语的范围定义为“美国及其盟国之间的相互理解……” 。从网络的角度来看,这对我们这些私营企业的人来说有些重要。多年来,众所周知,网络领域远远超出了国家、其政府、部门或机构,并很好地延伸到了国家、跨国和全球私营行业的驾驶室。因为这些私人机构经常在当今的网络攻击中首当其冲,因此在这种情况下(在我看来)它们包含了“盟友”一词。如果你同意我的观点,甚至部分同意我的观点,那么我们尽可能地使用相同的术语似乎是合适和谨慎的。

JP 1-02 继续定义实际的“TTP”首字母缩略词本身:TTP;“战术、技术和程序”。
从而向我们确认它实际上不是“工具、策略和流程”或您可能遇到的任何其他一次性变体。
有时我读到英特尔的报告,我想说“欢迎来到我们的 TTP,你会注意到其中没有“工具”或“流程”,让我们试着保持这种方式”。严格来说是战术、技术和程序,按此顺序排列。我知道这可能很挑剔,但这很重要,我稍后会解释原因。接下来,我将 Merriam-Webster 的定义与 JP 1-02对这些术语中的每一个并排进行比较:

Merriam-Webster

“在战斗中部署和机动部队的科学和艺术”
“使用可用手段来达到目的的艺术或技能”

JP 1-02

“相互关联的力量的使用和有序安排。 另见程序;技术。”

技术

Merriam-Webster

“一种利用特殊知识或技能做某事的方法”
“一个人进行基本身体运动或技能的方式”

JP 1-02

“用于执行任务、功能或任务的非规定方式或方法。 另见程序;战术。”

程序

Merriam-Webster

“以某种方式或顺序完成的一系列动作”
“一种既定或公认的做某事的方式”

JP 1-02

  1. “规定如何执行特定任务的标准详细步骤。 另见战术;技术。”

程序

Merriam-Webster

“以某种方式或顺序完成的一系列动作”
“一种既定或公认的做某事的方式”

JP 1-02

“规定如何执行特定任务的标准详细步骤。 另见战术;技术。”

这个可以应用吗?

  • 越低,技术专一性越高(例如,程序的技术细节越多,战术越少
  • 走得越高,主观性越广(战术越主观)
  • 每个级别似乎都旨在支持其父级别,以从属方式很像组织指挥链。存在程序和技术以确保成功和一致地执行战术。存在一种或多种策略来支持执行更高级别的策略。策略在目标下对齐,依此类推。

由于这些原因,我相信我们有机会在提及网络领域的战术、技术和程序时利用这种区别。

上下文中的 TTP

我提供了下图,它解释了我如何看待 TTP 在其他元素的更大上下文中的放置。我认为不仅对我们而言,区分这些区别很重要,而且还要清楚地理解它们各自的含义以及它们之间的关系。这样做为我们提供了额外的机会来以不同的方式评估我们的检测技术。此外,我们执行情报、检测和响应任务的方式和手段可以通过另一组镜头进行评估,同时尊重和保留我们目前可能使用的现有模型。最后,在分析过程中绘制这些单独的区别会导致以前可能不明显的额外观察结果浮出水面。

目标

是对手行为背后的真实意图。它们几乎不可能在环境中(直接)检测到,但肯定可以通过情报行动收集。

战略

是对手实际开始建立一种或多种可行手段来实现这些目标的地方。作为旁注,一些军事模型可能会解释存在于目标和战略之间的“运动”概念。但是,在网络背景下,我认为并非 所有网络攻击都被组织成活动,并且会提出其中大多数(按数量)不是运动驱动。因此,我将活动仅仅作为战略的一个子组件。如果对手必须组织多个网络活动,他们这样做是其更广泛战略的一部分。
结合起来,目标和战略构成了对手想要的大部分内容。

策略

是指使用可用手段来实现目的的艺术或技能。策略最常出现在高级叙述中,例如“我们看到对手通过对面向公众的 Web 服务器执行 SQL 注入来危害受害者”。该语句中的策略是“针对面向公众的 Web 服务器的 SQL 注入”。它是具体的和战术性的,但没有规定对手使用的具体技术、程序或工具,也没有提及使用该策略所产生的工件或 IoC。
应将战术视为对手是什么通常在攻击的特定阶段做,而不涉及如何,为什么和二进制位。
正因为如此,战术是许多人自然地将**不适合机器可读的列和行的“其他一切”混为一谈的地方。许多威胁报告证明了这种在严格战术和原子指标之间进行二维思维的常见错误。

**
TTPs(Tactics, Techniques and Procedures,战术、技术以及过程) - 图2

技术

是最很少讨论的,也是最容易被误解的这些元素。为了阐明这些区别,我们必须借鉴 Merriam-Webster 和 JP 1-02 的字面定义。技术是 一个执行基本身体运动或技能的方式,但最重要的是它们是非规范性的,这意味着技术没有程序顺序。
它们只是描述用于执行任务、功能或任务的独特方式或方法特定于执行工作的实际人员。例如,给定的参与者可能有重复特定拼写错误的习惯,或者在将密码传递到命令行参数时使用特定的键盘模式序列。这些都是这个人独有的技术。这个人可能正在执行与坐在他们旁边的操作员完全相同的程序,但他们的背景、技能、习惯和个人倾向将塑造他们独特的技术。这对某些人来说似乎并不直接相关,但对于情报分析师来说,这可能意味着一切,他们对一组多起事件进行活动分析,试图找出最微妙的区别因素。这里要记住的关键是技术适用于个人。

程序

正如 Merriam-Webster 定义的那样, 一系列以特定方式或顺序完成的动作, JP 1-02 进一步阐明了标准的详细步骤,规定了如何执行特定任务。
程序不是对单个原子指标的观察,而是对两个或多个指标的连续观察,这些指标建立了指示正在执行的程序的趋势。例如,攻击者运行net time,然后执行AT.exe命令来安排作业在受害系统当前本地时间后一分钟启动。另一个例子是持续执行单个 ping -n 1的对手在通过网络使用通过 SMB 窃取的凭据进行身份验证之前向目标系统进行身份验证。单独来看,这些都是指标,但当它们链接在一起时,它们就变成了一个程序。综合起来,战术、技术和程序构成了被累积描述为“TTP”的内容。

工具

正是您所期望的。对手用来完成其目标的任何工具,无论是恶意的还是良性的,都属于这一要素。这不是恶意软件独有的,因为攻击者可以并且确实使用任何工具来完成工作。工具与 TTP 相结合,构成了对手计划如何获得他们想要的东西。这些是他们实现目标的方式和手段,也是迄今为止我们作为情报、检测和响应专业人士将注意力和优先事项集中在最重要的领域。
剩下的是 Host & Network Artifacts 和 Atomic Indicators,它们构成了 在行为期间或之后留下的证据 尝试(成功与否)实现其目标的任何部分。这些元素的关键区别因素是,它们是由于发生更高级别的 TTP 而留下的指标。它们是大多数检测技术所基于的面包屑,因此重要的是不要低估这两个级别的重大贡献。正是通过这两个层次收集的数据,才能观察到上述层次。不幸的是,太多的注意力放在了这些层面上,我们只关注工件和 IoC。我们经常无法保留有助于我们理解更高元素的必要关系和周围环境。

主机和网络工件

是一个非常大的元素,包含在主机、网络或事件数据级别留下的任何工件,这些工件表明正在使用的工具或已识别的 TTP。Host & Network Artifacts 还包含诸如在何处以及如何观察它们的上下文,并且通常包括一个或多个原子指标。这些示例可以是注册表条目、预取条目、内存中的互斥体、特制的 HTTP POST 事务(用于在网络流量中看到的出站阶段 1 后门签入)。在数字取证和事件响应方面,这个领域是巨大的,并且占据了当今大多数关注的焦点。我们收集这些东西并通过卡车对其进行分析,但通常无法将其与显而易见的战术、技术和程序联系起来。

原子指标

是信息的最低分母。它们代表与工具使用或已识别 TTP 相关的信息和元数据的最低可分解级别。这些通常按指标类型组织,很好地塞进表格和行中,并作为“威胁情报”在社区中传播,尽管实际上它主要是无上下文的数据字符串。
这些示例包括 IP、域、电子邮件地址、文件哈希,甚至是匹配原子指示符的正则表达式模式。

未来用例和后续步骤

这个练习有助于我构建一些基本的构建块,以便我将 TTP 的概念应用于事件检测和响应领域。它还作为社区未来工作和讨论的基础。我考虑过的几个领域:

  1. 审查先前的事件证据。这里的想法是回顾我们从之前的事件中获得的所有证据(PCAP、LR、内存和磁盘映像等),并开始排列我们从针对该模型的攻击中学到的所有内容。如果您已经完成了时间线分析或已经解码了对手键入的实际命令的 C2 会话,这将特别有用。回顾和审查这些信息是描述他们的程序甚至可能识别一两种技术的好方法。我很想听听任何做过这件事的人的反馈,以及你发现了什么新东西。
  2. 审查现有指标库。许多组织都有某种英特尔数据库。这是电子表格还是自定义的内部关系数据库应用程序都没有关系。对照这个模型检查并排列你的指标,并询问其中有多少属于每个元素。如果您发现的大部分内容是 Atomic Indicators 或 Host & Network Artifacts,请不要感到惊讶。你有办法计算工具和 TTP 吗?您如何将其整合到您当前的系统中,以进一步推动您的情报收集?
  3. 查看我们当前的警报和事件分类流程。我们放在事件分析员面前的警报是否包含堆栈对最初观察它们的工具和 TTP 的引用?还是我们的警报只是说“砰!因为我们看到了这个原子指示器而发生了不好的事情”?并非所有威胁情报都对检测有用。
  4. 成为变革的催化剂。如果您厌倦了“威胁情报”很少比无上下文的工件和指标更多,它们会破坏您的检测技术、溢出您的控制台并让响应者几乎没有上下文,那么您并不孤单。我们必须批判性地思考我们的情报来源,他们提供给我们的数据,并提倡他们做出我们需要的改进。大多数英特尔团队都希望提供优质产品,但很少完全了解他们的产品是如何被消费的。成为变革的催化剂,并开始与他们更紧密地合作。

我进一步扩展了这一点,作为我正在研究的一个类似项目的基础,称为检测成熟度级别 (DML) 模型,您可以在此处阅读更多信息。