随着网络安全攻防对抗的日趋激烈,企业和组织要在网络已经遭受攻击的假定前提下构建集阻止、检测、响应和预防于一体的全新安全防护体系。这种场景下往往需要设置某些编排机制,自动实现多个设备或者服务间的协调,来完成一系列的快速安全防护与事件响应功能,即安全编排、自动化与事件响应 (SOAR,Security Orchestration , Automation and Response)。
在国际上,美国、瑞士和德国等多个国家开展了安全编排自动化与响应产品的研制,并得到了较好的应用。反观国内,还没有出现专业的安全编排自动化与响应厂商,SOAR 能力的获得并非一朝一夕之功,需要深厚的安全运维技术 [1] 积累。国内的安全编排与自动化技术还需进一步深入研究。
一、NIST SP800-6: Computer Security Incident Handling Guide
2012 年 8 月,美国 NIST(National Institute of Standards and Technology) 发布 NIST SP800-61 Revision 2 文件:Computer SecurityIncident Handling Guide[2]。
特别出版物 800-61 由美国国家标准与技术研究所 (NIST) 的信息技术实验室 (ITL) 推出,该标准通过提供有效、系统的事件响应实用指南,来帮助组织减轻计算机安全事件带来的风险。
该指南将事件响应过程分为:准备阶段,检测与分析阶段,遏制、消除与恢复阶段和事后处理阶段。准备阶段包括建立和培训事件响应团队,以及获取必要的工具和资源。在准备期间,组织通过基于风险评估的结果,选择并实施一组控制措施来限制事件的数量。但是,实施控制后,残留风险将不可避免地存在。因此,必须在事件发生时检测安全漏洞并向组织发出警报。根据事件警告的严重性,组织可以采取遏制措来施控制事件的影响,最终从事件中恢复。在此阶段中,活动通常循环回到检测和分析阶段。在事件得到适当处理后,组织将发布一份报告,详细说明事件的原因和成本以及组织应采取的预防未来事件的步骤。事件响应生命周期如下:
准备阶段:不仅要建立事件响应能力,以便组织随时准备响应事件,还要通过确保系统、网络和应用程序足够安全来预防事件。
在事件准备过程中需要准备好相应的工具和资源,根据不同性质的事件制定不同的处理机制。如果一个机制失败,一个组织应该具有多种沟通和协调机制,确保能够实时响应。组织需要实施安全控制措施将事件数量保持在合理的范围内来保护组织的业务流程。事件响应团队可能能够识别组织原本不知道的问题;通过检测漏洞,团队可以在风险评估中发挥关键作用。
检测与分析阶段:组织应准备好处理任何事件,但应着重于使用常见攻击媒介的事件,对于不同类型的事件应具有不同的响应策略。
事件可能以无数种方式发生,因此不可能制定出处理每个事件的分步指示。组织通常应准备好处理任何事件,但应着重于准备处理使用常见攻击媒介的事件。
事件响应过程中最具挑战性的部分是准确地检测和评估可能的事件。如果确定事件发生,需确定问题的类型、程度和严重性。事件的迹象表现为先兆和指标,通过不同的来源来识别前兆和指标,其中最常见的是计算机安全软件警报、日志、公开可用的信息和人员。
事件响应团队应按照预先制定的流程迅速分析和验证每个事件,并记录每个步骤。当团队认为事件已发生时,团队应迅速进行初步分析以确定事件的范围,例如受影响的网络、系统或应用程序等。
怀疑事件已发生的团队应立即开始记录有关该事件的所有事实,可以使用日志、电脑、相机等工具。应当注意的是从发现事件到最终解决,每一步都应记录在案并加盖时间戳。与事件有关的每个文件都应由事件处理者注明日期并签名以留证。
优先处理事件可能是事件处理过程中最关键的决策点,应根据相关因素确定处理的优先级。对事件分析并确定优先级后,事件响应团队需要通知适当的人员,以便所有相关人员都发挥自己的职责。
遏制,消除和恢复阶段:遏制为制定补救策略提供了时间,遏制策略根据事件的类型而变化。遏制事件后,可能有必要清除系统被破坏的部分,使系统恢复到正常的运行状态并防止以后发生类似事件。
大多数事件都需要遏制,遏制为制定补救措施提供了时间,遏制的一个重要部分是决策。提前制定适当的遏制策略,在事件发生时根据事件的类型选择合适的策略,可以帮助更快的响应突发事件。
遏制事件后,可能有必要消除系统被破坏的部分,例如删除恶意软件和禁用违规用户帐户,以及识别和处理漏洞。在消除期间,重要的是确定组织内所有受影响的主机,以便可以对其进行修复。有些事件消除不是必需的,或者可以在恢复期间执行。在恢复过程中,管理员将系统恢复到正常运行状态,确认系统正常运行,并修复漏洞以防止发生类似事件。
在事件处理过程中,有时需要标识攻击主机。在法律诉讼时有可能会需要用到证据,因此要清楚地记录所有证据的保存方式,应根据与法律人员先前讨论中制定的适用于法律和法规的程序收集证据,以便证据在法庭上受理。
事后处理阶段:事件发生后应当举行会议,回顾发生的事件,收集事件数据,形成事故处理清单,对事件进行客观评估,保留相应的证据,防止事件再次发生。
事件响应团队应不断学习改进来发现新的漏洞。在重大事件发生后应与相关方举行 “经验教训” 会议,这对改善安全措施和事件处理流程非常有帮助。一次会议可以涵盖多个事件,会议通过回顾发生的事件、采取的干预措施以及干预效果来预防事件再次发生。会议应在事件结束后的几天内举行。
小结:该标准从事件响应的准备阶段,检测与分析阶段,遏制、消除和恢复阶段和事后处理阶段四个阶段来阐述应对安全事件的策略。该指南可以有效地对事件的全生命周期进行管理,为我们处理安全事件提供了很好的理论基础。
二、SOAR:安全编排与自动化响应技术
将安全编排和自动化 (Security Orchestration andAutomation, SOA)、安全事件响应平台 (Security Incident Response Platforms , SIRPs) 和威胁情报平台 (Threat Intelligence Platforms, TIPs) 这三种技术相融合。融合后的 SOAR 技术在内生性功能不断发展的同时,供应商也利用其平台不断增加 SOAR 的新功能,囊括了很多 SOAR 提出之初不曾涉及到的领域,使 SOAR 的解决方案被嵌入到更大的应用领域 [5]。可以看出,2019 年后 SOAR 的发展路径将由 SOC 优化、威胁检测和响应、威胁调查和响应以及威胁情报管理来驱动。该技术的功能是使企业组织的安全团队能够收集监控数据,例如警报,并能够部分自动化地分析和处理事件,帮助安全人员根据预定义的工作流,确定优先级并推动标准化的事件响应活动 [7]。
目前 SOAR 的三大核心技术能力分别是安全编排与自动化、安全事件响应平台、威胁情报平台。
安全编排与自动化是 SOAR 的核心能力和基本能力。安全编排是指将各种网络服务单元进行有序的组织和安排,使各种服务平衡协调地完成用户的某个需求。
安全编排通过剧本 (Playbook) 进行表述,并通过工作流引擎支撑剧本执行。剧本是面向编排管理员的,使其聚焦于编排安全操作的逻辑本身,而隐藏了具体连接各个系统的编程接口及其指令实现。安全自动化 [4] 是指自动化的编排过程,可以大大减少手动操作的时间。SOAR 通常通过应用 (App) 和动作 (Action) 机制来实现可编排指令与实际系统的对接。
安全事件响应平台是 SOAR 的关键功能,可独立于 SOAR 存在。安全事件响应与安全编排与自动化的结合使得响应的能力获得了极大的提升。安全事件响应包括告警管理、工单管理、案件管理等功能。其中,作为核心能力的案件管理功能帮助用户对一组相关的告警进行流程化、持续化的调查分析与响应处置。
威胁情报平台通过对多源威胁情报的收集、关联、分类、共享和集成,以及与其它系统的整合,协助用户实现攻击的阻断、检测和响应。此外,隔离跟修复也是响应之后一个重要操作,包括文件隔离、文件删除、进程网络隔离、进程杀死/阻塞、进程隔离和基于哈希的阻止等。
目前国际上已经出现了很多 SOAR 专业厂商,很多 SIEM 大厂也纷纷收购并整合 SOAR 公司。例如:微软收购 Hexadite,Splunk 收购 Phantom 等。
国内对于安全事件的检测与告警的产品或算法种类很多,应用场景也非常广泛,在一个场景下往往需要多种安全产品来解决安全事件,目前各单位和公司采用的网络安全建设主流方案为部署大量的基于单点工作机制的网络安全防护产品。网络安全技术之间的整合度低、联动性不强使得在应对网络安全事件时不能高效率的处理事件。而且,安全操作仍然主要依赖手动创建和维护基于文档的操作过程,这将导致较长的分析师入职时间、陈旧的过程流程、群组知识和执行操作功能中的不一致性等问题。而 SOAR 技术因为具有定制化、灵活化、联动化的特点,可以将人员和流程编排在一起,从而解决设备孤立技术正合度低,人力不足且经验难以固化的问题 [6]。
小结:SOAR 通过安全编排与自动化、安全事件响应平台、威胁情报平台功能推进标准化的事件自动响应活动。SOAR 技术为安全事件响应提供了未来的发展方向,值得我们进行深入研究。