威胁猎杀是一种假设对手已经在你的环境中,而你必须在其对业务造成重大损害之前主动猎杀它们的行为。威胁猎杀是关于主动测试和强化组织防御能力的行动。本书旨在帮助分析师进行这方面的实践。
本书既适合那些初涉网络威胁情报(Cyber Threat Intelligence,CTI)和威胁猎杀(Threat Hunting,TH)领域的人阅读,也适合那些拥有更高级的网络安全知识但希望从头开始实施TH计划的读者。
本书共分为四部分。第一部分介绍基础知识,帮助你了解威胁情报的概念及如何使用它,如何收集数据及如何通过开发数据模型来理解数据,还会涉及一些基本的网络和操作系统概念,以及一些主要的TH数据源。第二部分介绍如何理解对手。第三部分介绍如何使用开源工具针对TH构建实验室环境,并通过实际示例介绍如何计划猎杀。第一个实践练习是利用Atomic Red Team进行的小型原子猎杀,之后介绍使用情报驱动假设和MITRE ATT&CK框架更深入地研究高级持续性威胁的猎杀。第四部分主要介绍评估数据质量、记录猎杀、定义和选择跟踪指标、与团队沟通猎杀计划以及向高管汇报TH结果等方面的诀窍和技巧。
读者对象
本书面向对TH实战感兴趣的读者,可以指导系统管理员、计算机工程师和安全专业人员等向TH实战迈出第一步。
内容概览
第1章介绍不同类型的威胁之间的区别,如何收集危害指标(Indicators Of Compromise,IOC),以及如何分析收集到的信息。
第2章介绍什么是威胁猎杀,为什么它很重要,以及如何定义猎杀假设。
第3章不仅简要概述威胁猎杀,还介绍计划和设计猎杀计划时可以使用哪些不同的步骤和模型。
第4章介绍上下文,因为要理解收集的信息,我们需要将它放置到适当的上下文中。没有上下文且未经分析的信息不是情报。本章我们将学习如何使用MITRE ATT&CK框架形成情报报告。
第5章介绍创建数据字典的过程,阐述为什么这是威胁猎杀过程的关键部分,以及为什么集中包含终端数据在内的所有数据很关键。
第6章展示如何使用CTI创建威胁行为体仿真计划,并将其与数据驱动的方法相结合来执行猎杀。
第7章介绍如何使用不同的开源工具设置研究环境。我们主要通过创建Windows实验室环境和设置ELK(Elasticsearch, Logstash, Kibana)实例来记录数据。
第8章介绍如何使用Atomic Red Team执行原子猎杀,让你熟悉操作系统和猎杀过程。然后,使用Quasar RAT感染“零号受害者”,演示如何在系统上执行猎杀过程来检测Quasar RAT。
第9章探讨如何将Mordor解决方案集成到ELK/HELK实例中。Mordor项目旨在提供预先记录的事件,模仿威胁行为体的行为。然后,我们使用Mordor APT29数据集加载环境,以APT29 ATT&CK映射为例进行情报驱动的猎杀。最后,使用CALDERA模拟我们自己设计的威胁。
第10章探讨文档。威胁猎杀流程的最后一部分涉及TH流程的记录、自动化和更新。本章还将介绍记录和自动化技巧,这将帮助你把计划提高到一个新的水平。猎杀的自动化是将分析师从反复执行相同猎杀的过程中解放出来的关键,但并不是所有的事情都能够或应当自动化。
第11章讨论评估数据质量的重要性,并利用几个开源工具帮助我们组织和完善数据。
第12章详细介绍在实验室环境之外执行猎杀时可以获得的不同输出,以及如何在需要时改进查询。
第13章分析指标。好的指标应该不仅可以用来评估单个猎杀,还可以用来评估整个猎杀计划是否成功。本章提供了一系列可用来评估猎杀计划成功与否的指标。此外,还将讨论用于TH的MaGMA框架,方便你跟踪结果。
第14章重在强调结果的沟通。成为自己所在领域的专家固然很棒,但如果不善于汇报你的专家行动如何对公司的投资回报产生积极影响,可能就无法走得很远。本章将讨论如何与团队沟通,如何融入事件响应团队,以及如何向上级管理层汇报结果。
如何充分利用本书
虽然在第7章中为那些无法构建自己的服务器的人提供了替代方案,但要充分利用本书,你需要有安装了VMware EXSI的服务器。
服务器最低要求如下:
4~6核。
16~32 GB RAM。
50 GB~1 TB。
尽管如此,你仍然可以使用ELK/HELK实例和Mordor数据集来完成本书中几乎所有的练习。第7章也提到了其他Splunk替代方案。
本书将基于Mordor数据集使用MITRE ATT&CK Evals进行高级猎杀。
本书涵盖的软件/硬件 OS需求
PowerShell Windows
Python 3.7 Windows, Linux
ELK Stack Windows, Linux
Quasar RAT
如果熟悉MITRE ATT&CK企业矩阵,那么在阅读本书时你将拥有极大优势。
下载彩色图像
本书中的屏幕截图及图表可以从http://www.packtpub.com/sites/default/files/downloads/9781838556372_ColorImages.pdf下载。
排版约定
本书中使用了许多文本约定。
文本中的代码体:指示文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、用户输入和Twitter句柄。例如:“第一步是复制Sigma资源库,然后从资源库或通过 pip install sigmatools安装sigmatools。”
代码块设置如下:
from attackcti import attack