引言
面对各种各样的网络攻击,在防御上实现自动化入侵响应是企业安全自始至终的诉求,实际上,各种防护类、日志审计类等安全产品,最终目标还是为了对网络攻击做出合理的响应。在当今大数据、人工智能等概念的驱动下,网络安全有了新的机遇,这些智能化技术能否解决安全运营中最后一公里的问题呢?本文总结自动化入侵响应的需求和现实,给出见解。
一、背景
对于网络攻击,从防御角度来看可以大体分为检测和响应两大步,对应的系统称之为入侵检测系统(IDS,intrusion detection system)和入侵响应系统(IRS,intrusion response system),IDS负责检测网络中的恶意活动,IRS负责选择合适的应对措施处置恶意活动从而保护目标网络,不过由于IRS至今为止并没有一个成熟的商业化工具,该概念和相关研究仍然停留在学术圈内。早期的网络中,入侵事件并不频繁,防御系统的设计中心偏向系统的监测和分析模块,而把响应的任务留给用户,这种设计在现代复杂的网络环境中已逐渐凸显其弊端。
现代企业在部署核心安全产品后便对网络环境的安全性有了基本的感知能力,此后便会进入持续的安全运营阶段,安全分析人员会分析设备产生的告警,对告警进行研判,根据先验知识判断当前攻击的状态,并且结合企业实际的业务对攻击采取一定的缓解措施,如:封堵攻击IP,关闭对应端口,对主机打补丁等等,如果是高级攻击、复杂攻击,往往还需要部署蜜罐,捕获并分析此类攻击行为。
为了处理海量设备告警,现代企业往往会成立安全运营中心(SOC),运营人员会根据经验选择自认为可疑的告警进行研判,而该安全运营过程往往会遇到两方面压力:一方面,分析人员依靠人工处理,只能处理海量告警中的少量告警,引发“告警疲劳”问题,会遗失大量关键告警,另一方面,由于分析人员在安全知识、业务理解等方面的差异,做出的决策可能会出现失误。实际上,一个合理决策行为的制定往往需要考虑大量因素,如:攻击严重程度、攻击影响范围、网络拓扑、业务压力,甚至还需要对攻击做出一定预测等等,做出合理的决策往往不大容易,该目标不仅要求安全分析人员对安全有比较深入的了解,还要对企业的需求和抗风险能力有一定的认知。总结来说,一方面,人力面对大量制约条件往往难以做出合理决策,另一方面,企业每天有大量的安全事件需要决策,需要大量人力投入,这种情况下,自动化或半自动化的入侵响应技术便成了企业共同的呼声。需要指出的是,这里的自动化入侵响应技术应该是从输入到输出的全流程自动化,不仅仅包括设备最后执行时的自动化,更重要的是核心决策部分,根据各种输入和限制条件给出合理动作的一种方法。
实际上,入侵响应系统在网络安全发展的早期就被提出,由于诸多原因,研究进展和工业实际部署都比较缓慢,本文将深入分析自动化入侵响应技术的本质,探索其技术发展方向。本文第二部分会对IRS系统做简单介绍,第三部分介绍IRS系统中核心的策略选择算法,第四部分对该方向做整体分析,第五部分进行总结。
二、入侵响应系统
IDS能够识别攻击,产生告警,但是缺乏对入侵的响应机制,IRS基于IDS的告警对入侵行为做出响应,两者的关系如图1所示,IDS、IRS均旁路部署于企业内网中,IDS会对链路上的流量进行分析,产生告警,IRS需要根据这些告警和一些其他因素,对攻击做出响应,执行的结果可能还会有一个反馈过程,以便对整体系统进行优化。
图1 IRS网络拓扑图
本部分总结IRS的体系结构、目标、分类、输入输出和核心问题。
2.1 入侵响应系统体系结构
入侵响应系统的总体结构如图2所示,当检测设备检测到入侵事件并触发告警给响应决策模块后,响应决策模块根据告警信息和响应决策知识库进行响应决策,最终决策出针对当前入侵行为的响应措施和响应时间策略发送给响应执行模块,响应执行模块从相应工具库中调用响应工具进行具体措施的执行。显然,在整个过程中,响应决策模块是最核心的部分,响应的正确性、及时性与之密切相关。
图2 入侵响应系统体系结构
2.2 入侵响应系统的目标
理想情况下,自动化入侵响应系统应该满足如下目标[4]:
1. 快速找到止损/减轻方案(或者是临时应对措施)将事件影响尽可能控制在最小范围内;
2. 修复感染设备;
3. 配置相关策略防止未来相似的攻击。
在具体实施上,自动化入侵响应系统的响应策略应该满足以下要求:
合理性。响应决策不仅需要评估安全事件及相关影响因素,还要考虑代价、资源约束、技术可行性、响应效果等各种因素,力求以最小的代价达到尽可能高的安全级别保护,能够有效阻止入侵行为,降低系统损失。
自适应性。由于入侵行为的不断变化以及系统环境的不确定因素,仅仅通过简单的静态决策表来响应是不够的,应该根据响应的效果评估,动态调整响应策略。
及时性。现代黑客逐渐使用自动化攻击的手段,对响应的速度提出了挑战。
安全性。入侵响应系统应保证自身的安全性,不被攻击者控制。
2.3 入侵响应系统的分类
如图3所示,入侵响应系统从大类上分为3种:基于通知、基于人工响应、基于自动化响应。其中,基于通知的入侵响应系统就是提供各种形式的入侵信息给相应的人员,基本上就是目前IDS产品的功能;基于人工响应的入侵响应系统允许运维人员对从一些预定义的响应操作中选择特定动作对入侵事件做响应;基于自动化响应的入侵响应系统是安全运维人员的终极追求,即对入侵事件提供及时的响应能力。
图3 入侵响应系统分类[2]
在基于自动化响应的IRS系统中,响应的选择机制是研究的重点内容,具体来说:
静态策略型IRS系统。该类型的IRS系统建立告警与响应之间的一一映射关系,通过枚举各种可能的告警种类,安全专家人工制定响应策略库,当告警发生时,IRS系统通过查表可以得到相应的响应策略。目前绝大多数的IRS为静态映射型,2001年,Carver调研了当时存在的56种入侵检测系统,其中有18种系统具有自动入侵响应机制,14种系统采用了静态映射模型进行响应措施的决策[7]。静态策略模型只考虑攻击类型采取动作,并没有对IDS的误报率和漏报率、攻击的严重程度、目标系统的脆弱性等因素做考量,因此该模型缺乏可行性和准确性。
动态策略型IRS系统。该类型的IRS系统要根据观察到的告警对正在发生的攻击活动进行推理,从而采取合适的响应,核心问题在于其动态决策能力。第一步需要考虑网络的拓扑、检测器的部署位置判定被攻击的目标,第二步需要根据发生攻击可能性、攻击的严重性、被攻击机器的实际情况等因素进行响应,最后需要评估响应的有效性以确定是否需要采取后续操作。实际上,大量因素会影响到该决策过程,如动作的执行成本、动作带来的负面作用等等。该方向也是目前IRS系统研究的主流方向,也是最有可能实现前一小节所说的目标和要求的方向。
2.4 入侵响应系统的输入输出
IRS的输出很好理解,就是针对各种攻击对应的处置动作,这些动作不仅仅是传统WAF、IPS等网络设备的IP封堵功能,还有针对资产的行为、不同设备之间的联动行为等等,如:检测到恶意域名访问时,需要通过与DNS系统对接进行封堵;当遇到网络入侵事件时,可以通过修改路由器的路由策略进行封堵、也可以联动防火墙、交换机配置ACL策略进行封堵、甚至可以通过TCP RST、SDN流表等方式实现精准阻断;对于某些失陷的主机需要进行隔离操作等等。我们依据NIST中对应急响应生命周期的定义[8](图4),将各种处置动作分为隔离/清除类和加固类,分别对应NIST应急响应框架中的缓解模块和根除模块,缓解和根除是依次进行的。
图4 应急响应生命周期
本部分我们尽可能多的收集整理安全设备的可以执行的防护动作,如表1所示,我们将IRS系统可以执行的动作分为加固类和隔离/清除类两大类,其中加固类的动作分为边界加固、Web加固、终端加固3种,需要指出的是,该分类是根据实际经验来得出的,我们仅采用在实际运营过程中会使用到的、便于部署实施的动作,很多类型的动作没有归入其中,如MITRE Shield中涉及到的各种针对ATT&CK的响应动作,Carver所提出基于追踪攻击、分析攻击、屏蔽攻击、最大化系统机密性、最大化数据完整性、最小化资源成本、恢复系统和维持服务等8个响应目的动作[7],显然目前这些动作的都只是被动防御,只涉及到事故缓解、系统加固类型的操作,但目前仅考虑这些动作的选择就需要大量的人力投入,有限集合内做到合理动作选择已属不易。
表1 IRS系统动作执行集合
IRS的输入往往很难界定,不仅仅需要告警,还需要很多额外的信息,额外信息的选取与响应策略息息相关。一般来说,想要做出合理的响应动作,需要考虑如下因素:攻击影响评估,响应操作损失评估,响应操作收益评估。
攻击影响评估,指的是安全设备告警所指示的攻击倘若真实发生,对目标系统造成的影响。首先必须明确的是,想要明确量化特定攻击造成的影响几乎是不现实的,常用方法是对损失做一个近似估计,该估计在实际运维过程中是有必要的,通常涉及到两个主体,一个是攻击,一个是目标系统,若目标系统为非重要资产,往往不会受到过多关注,若攻击本身并无高危险性,实际运维过程中也往往将之忽略。若要将该过程进行量化评估,则涉及到三种输入:一是资产信息,用以判断资产的严重性,二是资产的漏洞信息,用以判断告警中的攻击是否会对目标系统产生影响,三是攻击严重程度,不同漏洞造成危害程度是不一样的,CVSS评分可以作为一种参考。
响应操作损失评估,指的是操作对正常业务造成的影响,如关闭一台Web主机造成的影响,如:用户影响、业务影响等等,对于重要业务系统,响应策略往往需要非常保守,响应的前提条件也要以不影响正常业务也前提条件。
响应操作收益评估,指的是操作带来的收益,如是否能根除或者缓解攻击。
由于响应策略的选择过程涉及到过多的因素,因此IRS的输入绝不仅仅是设备告警这一个信息维度,往往还需要包含:攻击知识库,资产信息,网络拓扑结构等一系列辅助信息。
2.5 入侵响应系统的核心
入侵响应系统的核心是响应动作的选择策略问题,需要考虑大量的输入因素做出最终决策,放在现实运维场景中,分析人员需要根据攻击的严重程度、网络拓扑、操作的可能造成的后果等因素在面对攻击的时候做出及时的、风险承受范围内的操作,因此,本质上,该问题是一个多目标决策问题,限制条件为时间和成本。在众多研究当中,研究者们发明出攻击图、攻击树、防御树等分析方法对上一小节所述的各种维度进行量化评估,由于这些方法通常需要满足大量的前置条件,也没有一个成型的算法在实际工业生产中投入使用。
三、策略选择算法
策略选择算法是IRS系统的核心所在,在学术界有比较多的研究,其中很大一部分都是构造攻击图、攻击树、防御树等数据结构来对攻击成本和防御成本做分析,但是这些方法往往需要对内网资产、漏洞、网络拓扑等信息有比较全面的了解,这对于现代企业尤其是大型企业来说并不现实,因此本部分仅对种类型的方法做简单介绍,重点介绍一种基于部分信息对各种因素做评估的方法。
3.1 攻击树、攻击图
为了对攻击影响进行评估,通常会构建攻击图或者攻击树的数据结构,这种结构用于描述资产之间的联通性和依赖性。具体来说,攻击树用于描述系统的安全状态,能够直观地描述可以通过哪些路径对该目标系统进行攻击,如图5所示,攻击图把网络拓扑、可能的漏洞联系起来,描述了攻击者可能通过哪些路径接触到特定的目标系统。
图5 攻击树样例
3.2 一种策略选择算法介绍
利用攻击树、攻击图等模型对各种因素进行评估在现实中会受到很大制约,系统之间的调用关系,存在的漏洞等信息错综复杂,很难完全梳理清楚,在这里我们介绍另一种方法[1]。
该方法按照如图5的步骤进行,可以看到策略选择的过程主要在于对各种因素进行评估,核心步骤主要分为4步:
1.评估系统资产,该步骤旨在对系统资源做评估,了解各种资源的服务的重要性。
2.设定评估入侵损害,根据攻击的严重程度、置信度、攻击目标等因素判定损失程度。
3.评估响应成本,响应成本包括响应执行的收益,响应执行的负面作用和响应执行的操作成本。
4.策略选择,该步骤需要对各种因素做有机结合,从而选择最优的动作。
图6 一种无须全局信息的策略选择方法
- 评估系统资产
一个主机上有时候会运行多个服务,将这些服务表示为集合SR = (sr1, sr2, . . . , srz),将一个服务的重要性表示为Wsrj ,该重要性由该资源在(C,I,A)上影响性和对应的权重组成,以一台Web服务器为例,网络接口的重要性可以按照如下方式计算:网络接口在的可用性要求最高,评分为1,机密性和完整性次之,评分为0.1,而CIA对于整个Web服务来说,权重分别问0,1和0.7,因此网络接口的重要性评分为1.07。
- 评估响应成本
将响应定义为集合R = (r1,. . . , rn),响应成本为rg,响应成本由两方面组成:操作成本和对系统的影响性,其中不同操作成本(如增加防火墙规则,给系统打补丁)之间存在较大差异,表示为OC(rg),这个需要人工设定具体数值;对系统的影响性按照如下方式确定:1.确定会被操作影响的系统服务,2.把每个响应对服务的影响性按序排列,3.按照如下公式计算:
其中h为总响应数,g为当前响应的服务的影响性排名,我们以如下5种动作对网络接口的影响性为例,隔离整个网络的影响性最高,部署分析工具的影响性最小。
那么,响应的影响成本可以表示为:
由于篇幅限制,对于入侵成本评估和策略选择方法本文在此不做过多介绍,感兴趣的读者可以参考[1].
四、整体分析
其实IRS与IDS的研究最早都可以追溯到上世纪90年代,可是由于IRS自身的复杂性、自动化响应实施困难等因素,不管工业界还是学术界,IDS一直是研究的主流方向,IRS的功能最多也只是以简单的响应组件的方式嵌套在IDS产品中,如IPS系统对流经的数据包做简单的放行/丢弃操作。面对日益复杂的网络攻击,SOC团队每天遇到海量的告警待处理,IPS已经完全不能满足现代企业的安全需求,安全编排自动化与响应(SOAR)的概念这个时候被业界广泛认同并寄予厚望。那么同样是一种自动化响应的方式,SOAR与学术界IRS的概念之间有何关系呢?
SOAR是Gartner 2015年提出的概念,组织收集来自不同数据源的安全威胁和警报数据,进行事故分析和分类,利用人类和机器的结合力量来帮助定义、划分优先级并推动标准化事件反应活动并形成一个标准的工作流程。其中,SOAR的核心就是Playbook,Playbook制定针对特定攻击的一整套处置流程,一旦配置完之后,便可做到对攻击的自动化响应。
实际上,通过图2我们不难发现,IRS中包含响应执行模块,而SOAR便是将响应执行模块做到极致的一种工业实践,并且前文所说的IRS的核心,响应决策模块,实际上对应的就是SOAR中内置的各种playbook,在实际生产环境当中,SOAR的playbook往往由有经验的工程师人为编排,因此这种方式往往受主观因素影响较大。
总结而言,学术界和工业界,自动化入侵响应的核心问题都是响应决策模块,因此我们可以清楚的明白SOAR未来的研究方向,即策略选择算法的研究。而通过对学术界主流的策略选择算法的介绍,读者不难发现,攻击图和攻击树的建模方式要求IRS对于系统之间的网络拓扑、系统漏洞情况有非常明确的认知,这很难满足实际情况,而不需要对全局信息有充分了解的方法,其评估方法也存在一定合理性问题,并且同样需要很多人工因素的参与,如人工设置各种系统和服务的重要性等等,这些不足导致学术界的方法很难适应现实中的入侵响应系统。
整体流程上,SOAR可以参照前文所述的评估系统资产、评估响应成本、评估攻击成本、策略选择的4步走策略,但是由于众多的因素会影响到响应动作的评估过程,这些因素也往往不好量化,究其原因,是我们在实际安全运维过程中往往会受到各种限制,我们将这些限制总结为IRS系统面临的4大挑战供读者参考:
安全设备缺乏对内网环境的可见性。可见性分由多个方面组成,如:资产的可见性、漏洞的可见性、网络拓扑的可见性等等,现代企业的SOC一般被动地收集大量信息,但是缺乏对这些信息的进一步认知,例如,不清楚资产的重要性就无法进行针对性保护,缺乏对漏洞的可见性就会不清晰自身的薄弱环节,更容易陷入到告警疲劳之中,缺乏对网络拓扑的可见性就会丧失对攻击者的攻击路径和防御路径的判断,根据一项调查表明,网络环境的可见性是全球SOC的通病,也是分析人员公认的痛点之一[6]。更近一步,内网环境可见性的缺失会影响到各种防御措施的量化评估工作。
缺乏动作影响因素的清晰的认知和量化。如,很多研究类论文称IRS系统需要考虑攻击代价与防御代价,但是动作的防御代价按常理来说应该由人工参与度、攻击的严重性、误操作严重性等等一系列因素构成,至今为止该因素的构成因素并未达成共识,并且没有一个合理的评估方法对这些因素进行量化;另一方面,动作的执行代价与保护的目标息息相关,信息系统的安全性往往有机密性、完整性、可用性(CIA)三方面构成,不同的保护目标对于动作的执行代价也存在一定差异。总之,由于无法量化,自动化响应往往也成为空中楼阁。
误报的控制。基于大量误报的自动化工具对于安全运营来说无疑是一场灾难,虽然有一些模型会把告警的置信度进行评估,只对高置信度的告警进行处置,但是置信度如何计算,计算结果是否可靠等问题依然很具挑战性。
动作采取的实时性。动作采取的延迟越大,内部网络所遭受的风险越大,具有关研究表明[5],对于一个熟练的攻击者,响应延迟为10小时,入侵的成功率为80%,20小时,成功率为95%,30小时,攻击者几乎没有失败过,而目前业界在使用的SOAR,绝大多数场景还是在攻击成功,损失造成之后再进行响应,其动作的实时性还是有待提升。
五、总结
本文介绍了入侵响应系统的有关概念,通过比较工业界目前使用的入侵响应系统和理想中的入侵响应系统,读者可以清晰的了解到,虽然入侵响应系统有了20年左右的发展,但是目前来说仍然进展缓慢,笔者总结了造成这种现象的主要挑战,并通过实际案例介绍一种学术界的入侵响应算法,读者可以清晰地看到这些方法无法落地的真正原因。
而如今虽然大数据、人工智能等技术蓬勃发展,但是这类技术的应用场景往往需要大量的标注、评估方法确定等比较确定的场景中,而就目前而言,IRS系统中的各个衡量指标往往存在争议,评估中的各种不确定性因素众多,执行结果的反馈往往不足,这些因素制约了高级算法在该领域的进一步应用。但是尽管如此,工业界对于响应自动化的需求是迫切的,SOAR仅仅根据专家知识构建出一套可以自动化运行的脚本便可在安全市场内大放异彩,可以预见策略选择方法的进一步研究会推动该方向的发展!
参考文献:
[1] Stakhanova, Natalia, et al. “Towards cost-sensitiveassessment of intrusion response selection.” Journal of computersecurity 20.2-3 (2012): 169-198.
[2] Inayat, Zakira, et al. “Intrusionresponse systems: Foundations, design, and challenges.” Journal of Networkand Computer Applications 62 (2016): 53-74.
[3] Nespoli, Pantaleone, et al. “Optimal countermeasuresselection against cyber attacks: A comprehensive survey on reactionframeworks.” IEEE Communications Surveys & Tutorials 20.2(2017): 1361-1396.
[4] Foo, Bingrui, et al. “Intrusionresponse systems: a survey.” Information assurance: dependability andsecurity in networked systems (2008): 377-412.
[5] Cohen, Fred. “Simulating cyber attacks, defences, andconsequences.” Computers & Security 18.6 (1999):479-518
[6] Kokulu, Faris Bugra, et al.”Matched and Mismatched SOCs: A Qualitative Study on Security OperationsCenter Issues.” Proceedings of the 2019 ACM SIGSAC Conference on Computerand Communications Security. 2019.
[7] Carver, Curtis A. “Adaptive-basedintrusion response.” College Station: Texas A&M University (2001).
[8] https://nvlpubs.nist.gov/nistpubs/specialpublications/nist.sp.800-61r2.pdf