本文将讨论安全运营中心的成熟度模型,如何了解你的SOC(安全运营中心)所处的阶段,以及如何采用SOC自动化以保持领先。
安全运营中心(SOC)内的自动化通常被称为安全自动化与编排(SAO)或安全自动化、编排与响应(SOAR)。作为分析师,在组织内遇到某种类型的安全自动化已变得越来越普遍。其应用程度可能取决于你所在组织及其SOC的成熟度。我将在稍后深入探讨成熟度模型及其与自动化的关系。首先,什么是安全自动化?
什么是 SOC 自动化
SOC自动化并不是指机器人变得具有自我意识。简而言之,自动化是机器执行低级别安全相关动作的过程。这些动作是一个更大任务的一小部分。通常,一个任务由多个动作组成。同样,一个流程包含多个任务。任务可以部分或完全自动化,目的是减少安全运营中的人工干预。编排与自动化紧密相关,它利用多个系统或平台上的多个自动化任务。编排用于自动化或半自动化更复杂的工作流程和过程。
我们听到了来自SOC分析师和安全行业一些人士对自动化的批评。主要的担忧似乎是分析师担心自动化会取代他们的工作。乍一看,我可以理解他们的想法。如果机器能更快、更高效地完成工作,那么分析师该做什么呢?作为SOC负责人,我想要求我的分析师对事件进行详细分析。这需要大量时间,而面对每天大量的事件,这是不可能的。我希望他们能寻找趋势,检查更长时间段内的数据,然后找到这些事件发生的原因。要问自己一些问题,比如:“我每天必须响应50个IPS签名相关的事件是因为Web服务器容易受到攻击吗?”将这些数据反馈给SOC负责人,并主动推动组织修复漏洞。
我们试图传达的是,SOC 自动化不应被视为对你职业生涯的限制,而是可以帮助你成为更好的分析师的跳板。我们将在下一节中讨论自动化的诸多理由,以便更清楚地了解自动化不仅对SOC而且对单个分析师的好处。让我们深入探讨为什么自动化对于任何 SOC 都是一个积极的补充。
为什么要实现自动化
SOC进行自动化有很多原因,但取代分析师通常并不是目标。SOC分析师是宝贵的资源,在机器无法胜任的地方,他们始终是必需的。无论是作为成熟度计划的一部分,还是应对新的业务需求,管理层往往需要在相同甚至更少的资源情况下承担更多的服务。考虑到SOC管理层面临着交付更多成果的压力,同时又存在网络安全专业人才短缺的问题,不难理解为什么自动化是显而易见的选择。
我曾经在一线处理过无数的安全事件。当我还是一名初级分析师时,有时候会遇到许多由于杀毒软件检测而生成的事件,其中文件已被隔离。当天超过一半的事件是与广告软件/工具栏相关的“潜在有害应用程序”(PUA)相关。工具完成了它的工作,文件被隔离,但我仍然需要处理大量事件。我不得不手动添加适当的备注并关闭每个工单。如果当时有自动化流程,我的工作会轻松很多。我就能够专注于更深入的分析,寻找广告软件的共同来源,但由于事件数量庞大,当时这是不可能实现的。
对我来说,自动化是帮助分析师处理日常处理大量事件的力量倍增器。我希望SOC中有更多分析师。通过消除分析师执行单调任务的需要,他们可以腾出更多时间对事件进行更高级别的分析。高级分析师将有更多时间专门培训初级分析师。可以将更多时间花在开发文档上,并且随着SOC不断变化的步伐,我们都知道这始终是必要的。
SOC选择自动化的首要原因之一是简化现有流程。许多SOAR平台都有C-level仪表板,旨在显示通过自动化操作节省的时间和金钱。虽然我确实在某种程度上同意这可能很重要,但仅关注这一点可能并不一定适合所有组织。我认为有很多原因对于SOC的健康运行同样重要。
我最喜欢自动化的原因之一是减少分析师的疲劳。我不可能是唯一一个每天花好几个小时按“Ctrl+C”和“Ctrl+V”的分析师。一天结束回到家时,我脑子已经烧糊了,甚至怀疑猴子也能胜任这份工作。正如我之前提到的,安全分析师是SOC最重要的资源。这些分析师每天都要处理大量需要收集、分类、分析和解释的信息。减少需要分析的事件数量是实现这一目标的一种方法。
减少分析师的疲劳可以减轻整体压力,使SOC成为一个有趣且充满挑战的工作场所。不是有句话说:“幸福的SOC,幸福的生活”吗?好的管理层应该尽一切努力提升士气并营造健康的工作环境。每天重复相同的动作会让人麻木,导致跳过步骤或敷衍了事。这种疲劳会增加出错的可能性。
减少错误让我想到了自动化的另一个重要原因,即标准化流程。在调查过程中,分析师可能会陷入无休止的切换屏幕的循环中,需要查看文档、遵循既定步骤并在多个控制台之间切换。通过自动化安全相关任务,我们可以实现一致性并减少错误的可能性。在安全运营中,一致性至关重要。在事件响应中实施自动化,可以确保流程始终如一地得到遵循。
作为SOC分析师,为了收集尽可能多的信息,我们往往会广撒网。有时我们编写的规则确实需要比较宽泛。规则生成的事件可能只有在与另一个事件或其他条件关联时才是指标性信息。当然,你可以编写一个关联规则,但也许你正处于规则调优的初级阶段,因此分析师会收到大量误报。如果我们能用自动化来过滤这些误报呢?减少误报总量就是我花费了大量时间进行自动化处理的用例之一。我将在本文稍后举一个例子来说明这一点。
每个分析师都有自己偏好的信息来源,这有时会产生误报或导致分析师走上错误的道路。如上所述,出于多种原因,一致性很重要,除了已经提到的原因外,自动化的另一个理由是减少信息偏差。有些信誉和情报数据共享服务比其他服务更可靠。开源信息源是一把双刃剑。一方面,它们可能拥有更大的参考集且质量较高,但另一方面,一个错误的归因可能会导致整个数据集扭曲。当数据的来源由团队定义时,信誉检查和情报丰富可以在你的剧本中轻松实现自动化。
每隔几个月,就会出现一种新的攻击模式,威胁也日益复杂。组织需要为这种复杂威胁的演变做好准备。当今的对手正在利用自动化对组织发动攻击。安全运营需要跟上攻击者不断发展的速度,而实现这一目标的唯一方法就是通过自动化和编排。实施新的自动化流程时,最终目标应该是减少平均检测时间(MTTD)和平均响应时间(MTTR)。每个自动化步骤都能为这些SOC指标节省几分之一秒的时间。虽然乍一看,单个动作节省的时间似乎微不足道,但随着时间的推移,所有这些小动作累积起来将带来显著的时间节省。这些指标的降低不仅会使高级管理层感到满意,还会带来前述的众多好处。
SOC成熟度
在开始这一部分之前,我想说明一点,我并不认为很多组织期望能够从头到尾完全自动化每个流程。我相信有很多情况需要分析师做出机器无法做到的决定。关于自动化错误分类数据并实施阻断的恐怖故事有很多,这些事件对组织和其声誉造成了灾难性的影响。在组织对提供的数据具有高度信任之前,我个人建议在自动化流程中加入一些制衡措施。这些制衡措施应要求在实施阻断控制之前进行人工交互和审批。所有这些步骤都可以构建到你的剧本中,确保你不仅能充分利用自动化的优势,还能防止自动化采取错误的动作。
本节的目标不是深入探讨成熟度模型的主题。评估SOC成熟度有几种不同的方法。你可以编写自己的框架,或者使用行业标准框架来实现同样的目标。使用标准化框架的好处在于它被广泛认可,并且可能被你的行业内其他组织使用。无论哪种解决方案,都旨在提供SOC所有流程的成熟度情况。
图.1 成熟度阶段示例
在评估SOC及其自动化的成熟度时,可以采用类似图1所示的阶段性方法是相当容易的。我整理了这个图表来说明,一旦完成了对SOC今天正在执行的流程和操作的清单,就可以对当前状态进行映射,并衡量实现目标的进度。设定小目标来帮助你进入下一个阶段。如果你还没有开始自动化之旅,请不要害怕现在就开始。每个自动化的动作都将让你离目标更近一步。
作为一名初级分析师,你会开始看到你和团队每天使用的流程中需要改进的地方。记录任何流程差距,并寻找可以自动化的动作。花时间收集所有相关数据,并进行分析。这些动作中有哪些可以自动化?你认为它们能为团队带来什么好处?能够清晰地表达你认为自动化某个动作将如何改进功能。通过提出流程改进或解决问题的方案,而不仅仅是发现差距,你将会被视为同行中的领导者,SOC的管理层也会把你看作是一个真正的问题解决者。
如何开始自动化
没有一种适合所有组织的解决方案。根据我的经验,对于SOC内非常熟悉其流程和程序的分析师来说,花一点时间分析他们每天执行的工作是最有益的。将你的任务按完成所需的时间分类,然后按任务的复杂性分类。从简单的任务开始,不需要花费太多时间来完成,并在你熟悉流程之后再完成复杂的任务。很可能有许多这样的简单任务,通过自动化它们,你将取得很大的进步。图2可能会帮助你对任务进行分类,并让你专注于能够预先提供最大价值的自动化任务。
图.2 安全任务分类
当从需要很短时间完成的简单任务开始时,寻找重复的动作而不要复杂的条件。如果你根据一个动作的输出采取不同的行动,那么这将增加流程的复杂性。我发现开始研究一个用例是很容易的,只是在中途发现一个小属性改变了整个流程。花时间分解这些动作并在白板上绘制流程图。尽一切努力将其分解为尽可能小的步骤。一个非常简单的例子是自动化一个任务,比如获取文件的信誉。这可能会让你更容易想象所需的步骤。
图.3 获取文件信誉的简单用例
在这个简单的例子中,我将任务分解为分析师需要采取的四个小动作:
1.收集文件哈希。
2.打开Web浏览器。
3.将哈希粘贴到浏览器中并提交。
4.根据文件信誉做出决定。
对文件信誉所做的决定可能会进一步影响其他动作或流程。剧本可以这么小。请记住,可能有一个剧本同步调用其他剧本,在调用另一个之前等待第一个完成。
乍一看,自动化这个任务可能并不会节省太多时间。但如果哈希值是误报检测呢?如果我们能根据文件信誉自动关闭事件呢?如果我们能收集到误报文件并将其提交给供应商重新评估呢?自动化不仅可以通过消除误报检测的干扰来帮助,还可以减少你需要回复的工单数量。现在,当扩展到一天需要调查的事件数量时,这个简短的动作已经节省了大量时间。
用例示例
正如我在本章前面提到的,没有万能的方法。供应商提供示例剧本,通常旨在作为其产品功能的教学点。不幸的是,并非每个解决方案都能够与你的自动化平台集成。你会遇到可能在你的环境中不起作用的情况,就像你也会遇到供应商以前没有专门遇到过的情况一样。这是可以预料的,也是SOC自动化之旅的一部分。我想重点介绍几个我个人遇到过并且取得了成功的用例。它们并未涵盖SOC可能选择自动化的所有用例或原因;然而,它们可以作为你自动化工作的起点或灵感。
我遇到的一个用例是减少电子邮件安全提供商的误报检测数量。该团队利用了一项针对所发送的恶意电子邮件发送告警的服务。有时,发送告警后,电子邮件会被重新分类为无害。我编写了一个自动化剧本,它将调用电子邮件安全提供商的API来检查“误报”标志。如果告警是误报,则不会创建分析师工单。
另一个更高级的用例是在出现关键事件时向值班分析师寻求帮助。我们首先定义会导致分析师介入的事件类型。一旦完成了这一步,我们开始弄清楚如何收集值班人员及其联系。这需要使用名为“beautifulsoup”的插件编写一些自定义Python代码。该剧本会从内部网页中抓取信息并解析出需要调度的电子邮件地址,并向该分析师发送包含关键事件上下文的告警。该步骤完成后,剧本将监视邮箱以获取已读回执。如果一小时内未确认,剧本将向值班负责人发送相同的邮件。
我帮助实施的最常见的自动化用例之一是使用威胁情报来丰富事件信息。在这种环境中,事件从SIEM发送到自动化平台进行处理,并在临时工单队列中创建一个工单。剧本将提取出指标,如文件哈希、文件路径、源和目标IP地址等。根据事件类型,这些指标会从SOC预定义的各种来源中进行丰富。这些数据被用来填充事件的备注,并为处理该事件的分析师增加上下文。一旦所有的丰富工作处理完成,剧本将把工单从临时队列移动到SOC分析师队列。在完成所有的丰富工作处理后将工单移动到分析师队列的原因是为了防止工单状态更改,并确保在剧本中添加的任何错误检查都首先完成。我希望分析师在做出事件决策时拥有他们所需的所有数据,而不仅仅是部分完整的数据。
总结
安全自动化是一种辅助你的SOC分析师更有效地开展工作的工具。在我看来,它并不是设计来取代分析师的。我们投资于自动化技术是为了让我们在工作中更加高效,而且我们将需要做出机器无法做出的决策。我不想直接关注编写自动化剧本的最佳实践,而是更多地关注整体流程及其与SOC的关系。考虑到这一点,我想给你一些成功的建议。
如果你还没有开始自动化之旅,请与团队讨论安全自动化的好处。让每个人都接受这个想法,并熟悉你对团队工作剧本的设想:
·对SOC执行的任务进行完整盘点。分解它们所需的时间和完成它们的复杂性。
·在自动化任何动作之前,先定义你的用例。首先关注简单且可以快速完成的任务。这将为你带来一些快速的成功。
·不要编写冗长复杂的剧本。尽可能将它们分解为具体任务。你可以使用父剧本调用多个子剧本。
·不要害怕挑战现状。当你开始自动化流程时,你可能会发现一种新的更好的方法来完成某些事情。拥抱这些效率,自动化将展示其对你的组织的价值。
虽然安全自动化可能还处于初期阶段,但在你的SOC内部可以做很多事情来改善运营。我希望我能够为你提供一些启发,让你明白为什么你需要尽早开始自动化。我已经强调了自动化的许多原因,并提供了一些可能的用例以获得快速成功。发挥带头作用,并向你的团队展示自动化不是限制,而是一个能帮助你们所有人成为更好分析师的增强器。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...