利用低置信度安全事件来检测安全事故的制作方法

文档序号:14448321阅读:255来源:国知局
利用低置信度安全事件来检测安全事故的制作方法



背景技术:

本文提出的实施方案总体涉及用于管理安全事件的技术,并且更具体地讲,涉及用于基于低置信度安全事件来检测安全事故的技术。

相关领域的描述

许多企业(例如个人、组织、公司等)采用某种形式的网络安全解决方案来帮助与安全威胁进行斗争和/或防御安全威胁。在一些情况下,例如,企业越来越依赖外部安全服务(例如诸如,托管安全服务提供商(mssp)等)来提供专门的计算机和网络服务,并且/或者采用安全管理工具(例如诸如,安全事故和事件管理器(siem)等)来帮助管理企业安全操作。部分地由于与大型计算基础结构相关联的成本增加、安全专业知识欠缺、资源限制等,对mssp和siem的使用增多。例如,企业计算基础结构通常包括许多计算系统、应用程序、网络、数据存储系统等,它们不断地经受各种各样的安全威胁和漏洞。此外,企业计算基础结构经常采用各种安全工具(例如,防火墙、反病毒软件、入侵检测系统、入侵防御系统等)来监视计算系统和基础结构。因此,企业采用外部安全服务和/或安全管理工具来帮助监视、检测和防御安全威胁。

外部安全服务(诸如mssp等)可提供客户的安全需求的一部分或全部。外部安全服务所执行的典型功能的示例包括:采集、分析和(向分析员)呈现从网络和安全设备采集的信息;安装、管理和/或升级网络安全装备(例如,防火墙、入侵检测软件等);执行漏洞扫描;以及其他类似的服务。在一些情况下,企业和/或mssp可使用siem来帮助执行这些功能中的一个或多个功能。一般来讲,siem是将通常来自多个供应商的产品遥测聚合成通用格式以集中安全相关数据并促进创建检测规则的工具。大多数siem由企业的事故响应者(例如,安全分析员)管理,企业的事故响应者(例如,安全分析员)创建规则并监视系统输出以识别安全事故。然而,在一些情况下,mssp也可使用siem来执行安全事故检测。例如,在这些情况下,mssp可验证来自siem的输出,并且然后向企业的安全分析员警示安全事故。

为了执行这些网络服务,mssp和/或siem通常不得不收集并处理大量的信息。例如,为了检测安全事故,mssp和/或siem一般不得不处理成千上万种类型的安全事件,并且依赖手动创建的规则来检测安全事故。然后将这些安全事故呈现给安全管理员,安全管理员通常负责决定是否处理或解决该安全事故。然而,以这种方式来执行安全事故检测通常导致许多误报事故。当被呈现给安全管理员时,这些误报事故会导致不必要且无用的信息淹没管理员,并将管理员与真实的安全威胁分离,这样反而使企业网络系统容易受到攻击。



技术实现要素:

本文提出的一个实施方案描述了一种用于基于低置信度安全事件来检测安全事故的方法。该方法总体包括聚合接收自来自一个或多个设备的日志的安全事件的集合。该方法还包括基于分配给每种不同类型的安全事件的置信度分数来评估该安全事件的集合,其中每种不同类型的安全事件的置信度指示安全事故已发生的可能性。该方法还包括基于置信度分数来确定至少一个阈值,所述至少一个阈值用于确定何时报告来自该安全事件的集合的安全事故的发生。该方法又还包括在确定该集合的至少一个安全事件已超过所述至少一个阈值时,向分析员报告安全事故的发生。

另一个实施方案包括具有处理器和存储程序的存储器的系统,当在处理器上执行时,该程序执行用于基于低置信度安全事件来检测安全事故的操作。该操作包括聚合接收自来自一个或多个设备的日志的安全事件的集合。该操作还包括基于分配给每种不同类型的安全事件的置信度分数来评估该安全事件的集合,其中每种不同类型的安全事件的置信度指示安全事故已发生的可能性。该操作还包括基于置信度分数来确定至少一个阈值,所述至少一个阈值用于确定何时报告来自该安全事件的集合的安全事故的发生。该操作又还包括在确定该集合的至少一个安全事件已超过所述至少一个阈值时,向分析员报告安全事故的发生。

又一个实施方案包括存储指令的计算机可读存储介质,当在处理器上执行时,该计算机可读存储介质执行用于基于低置信度安全事件来检测安全事故的操作。该操作包括聚合接收自来自一个或多个设备的日志的安全事件的集合。该操作还包括基于分配给每种不同类型的安全事件的置信度分数来评估该安全事件的集合,其中每种不同类型的安全事件的置信度指示安全事故已发生的可能性。该操作还包括基于置信度分数来确定至少一个阈值,所述至少一个阈值用于确定何时报告来自该安全事件的集合的安全事故的发生。该操作又还包括在确定该集合的至少一个安全事件已超过所述至少一个阈值时,向分析员报告安全事故的发生。

附图说明

为了使人可详细地理解实施本公开的上述特征的方式,可通过参考实施方案来获得本公开的更具体描述(上文简要概述),其中一些实施方案在附图中示出。然而,应当注意,附图仅示出了示例性实施方案,并且因此不被认为是限制其范围,可允许其他等效的实施方案。

图1根据一个实施方案示出了示例性计算环境。

图2根据一个实施方案示出了被配置为基于低置信度安全事件来检测安全事故的示例性工具。

图3根据一个实施方案示出了结合分析员反馈的安全事故检测工具的示例。

图4根据一个实施方案示出了示出安全事件列表和针对安全事故的证据集的示例性报告。

图5根据一个实施方案示出了用于利用低置信度安全事件来检测安全事故的方法。

图6根据一个实施方案示出了用于使用分析员反馈以利用低置信度安全事件来检测安全事故的方法。

图7根据一个实施方案示出了被配置为利用低置信度安全事件来检测安全事故的示例性计算系统。

具体实施方式

如今,许多组织采用能够生成安全事件的系统。这些系统的示例包括防火墙、认证系统、网络入侵检测和防御系统、基于主机的入侵检测系统、虚拟专用网络(vpn)设备、无线安全设备、反病毒系统、反恶意软件系统等。如本文所用,安全事件一般是指网络、系统或服务的操作中的可观察改变,其指示可能已违反或包括安全性、可能已违背安全性策略,和/或安全性保护可能已失败。安全事故一般由一个或多个不需要的或意料之外的安全事件组成,这些安全事件有可能危及安全性和/或损害系统的运行。

对组织系统的全天候监视可能会导致mssp、siem和其他安全解决方案不得不处理以便确定安全事件中的任一个安全事件是否指示安全事故的大量安全事件。然而,这些安全事件中的大多数本质上越来越具有行为性和情境性,并且可能传达一些风险,但是就指示实际安全事故(例如,漏洞、被感染机器、攻击等)而言并非绝对化的。

本文提出的实施方案描述了用于基于低置信度安全事件来检测应当调查的安全事故的技术。低置信度安全事件一般是指传达安全事故(例如诸如,感染、漏洞、攻击等)的低风险并且不值得单独调查的安全事件。在一个实施方案中,安全管理服务器从计算网络中的设备接收安全日志。例如,可生成由安全管理服务器评估的安全日志的设备包括网络设备、安全设备、应用程序、数据库等。每个安全日志都可提供与一种或多种不同类型的安全事件的异构集合相关联的数据。这些不同类型的安全事件的示例包括认证事件、审计事件、入侵事件、反病毒事件等。

在一个实施方案中,安全管理服务器聚合不同类型的安全事件达一段时间并计算每个安全事件的置信度分数。安全管理服务器可使用机器学习技术(例如,利用与事故关联的一组基础事实事件)来确定置信度分数。给定安全事件的置信度分数一般表示可用于估计该事件在给定情境中的发生对实体的安全状态的影响的数据集合。例如,置信度分数可表示对特定安全事件已在确报安全事故情境中发生的时间百分比的度量。置信度分数中的数据可标引安全管理服务器可用的任何情境。此类情境可包括什么事件优于安全事件或补丁、漏洞、正被监视的设备的配置数据、有关事件的字段的智能数据(例如诸如,ip或url的信誉)等。然后,安全管理服务器基于置信度分数确定用于检测来自安全事件的安全事故的一组阈值。例如,如下所述,安全管理服务器使用这些阈值来确定何时将来自日志的一组给定的安全事件提升到应当被调查的安全事故的级别,所述一组给定的安全事件中的任何一个安全事件都不值得单独调查。

在一个实施方案中,安全管理服务器采用不同的多样性量度和/或机器学习技术来确定阈值。例如,安全管理服务器使用多样性量度来评估可从不同设备(或系统)生成的不同类型的低置信度安全事件的组合。然后,可将来自多样性量度的信息与机器学习技术一起使用以生成阈值,安全管理服务器使用这些阈值来确定何时将不然可能被忽略的一组不同的低置信度安全事件提升到应当被调查(例如,由系统分析员来调查)的安全事故的级别。在一个实施方案中,安全管理服务器还可开发可用于支持检测到的安全事故的一组证据。

在一个实施方案中,一旦检测到安全事故(例如,使用阈值等),安全管理服务器就给系统分析员提供与安全事故相关联的安全事件的列表,连同支持每个安全事件的证据。一旦安全管理服务器接收到对来自分析员的反馈类型的指示(例如,响应、无响应等),安全管理服务器就基于分析员反馈的类型来细化该组阈值或证据集中的至少一个。

用于检测安全事故的传统技术一般依赖基于高置信度安全事件而手动创建的规则,而低置信度事件一般用于提供情境。然而,此类方法不能够基于低置信度安全事件来检测安全事故(并且因此传达安全事故的低风险)。例如,在使用传统技术的情况下,这些类型的安全事件可能看起来是良性的(例如,因为它们不是高置信度事件),然而,当这些低置信度安全事件与其他安全事件(其可能是或可能不是高置信度事件)一起被放入情境中时,它们实际上可指示确报安全事故(例如,被感染机器)。

此外,对于安全事件的不断改变的本质而言,传统的安全事故检测技术是不灵活且反应迟钝的。例如,大多数传统技术一般专注于测量单种类型的各个事件的异常级别,但不能够分析可能来自若干不同类型的机器的安全事件的异构集合。另外,siem、mssp等一般处理成千上万种不同类型的安全事件,这些安全事件被不断地更新以处理新的威胁。新引入事件可能是高置信度的,但是依赖人力的基于规则的方法通常会导致这些新的高置信度安全事件被忽略,一直到分析员最终认识到这些事件是这样的并创建规则来合并它们。

此外,在许多情况下,siem、mssp等都面临着对极低置信度的如此多的嘈杂警示,以至于在实际安全事故期间,低置信度事件的背景值一般仅比事件量低百分之二十。因此,在此类嘈杂环境中,使用传统技术倾向于产生大量误报安全事故,当呈现给人类分析员时,这些误报安全事故可能会使分析员负担过重并将其与真实的安全威胁分离。

本文提出的实施方案提供了可通过利用应用于安全事件的置信度标签(或警示)来自动地检测被感染机器、漏洞、攻击和其他安全事故的技术。可由能够为多种多样的事件集合标注上置信度分数的任何系统来提供置信度标签。如下所述,本文提出的技术可用于消除几乎不具有检测被感染机器的能力的低置信度警示。这样做可消除大量的噪音,因为观察到的最频繁的事件是那些近零置信度事件。在这些事件不碍事的情况下,本文提出的技术可用于基于对在固定时间窗口中发生的安全事件多样性的几乎任何度量来检测高置信度事件。

另外,通过将额外的基于置信度的量度结合到基于阈值的异常检测模型中,本文提出的技术可改进分类准确度(例如,安全事故的分类准确度)。此外,本文提出的技术能够(通过证据)证明每个检测到的安全事故的合理性,这样允许分析员通过经由反馈循环机制调整签署置信度分数来(例如,在一些示例中,实时地)微调系统。

需注意,在以下描述中,使用接收自安全设备诸如防火墙、入侵检测系统、反病毒系统等的安全事件作为可与本文描述的技术一起使用的不同类型的系统中的一些系统的参考示例来描述以下实施方案中的一些实施方案。然而,本领域的普通技术人员将认识到,本文提出的实施方案可适于与各种各样的计算设备诸如用于安全监视、通信、数据存储、云计算等的那些一起实施。

图1根据一个实施方案示出了示例性计算环境100。如图所示,计算环境100包括经由网络120连接到安全管理服务器(sms)130的企业网络110。网络120一般来讲可以是广域网(wan)、局域网(lan)、无线lan(wlan)等。在特定实施方案中,网络120是互联网。

如图所示,企业网络110包括一个或多个计算设备104a至104n、安全监视系统120和存储系统102。在一个实施方案中,存储系统102是数据库。计算设备104a至104n中的每一个可以是具有网络接口的任何类型的物理计算系统,诸如台式计算机、膝上型计算机、移动设备、平板电脑、服务器(例如,web服务器、认证服务器、dns服务器、邮件服务器等)、用户驻地设备(例如,路由器、交换机、网关等)等。

在企业网络110内,安全监视系统120被配置为监视计算设备104a至104n(以及企业网络110中的其他系统)以收集安全事件。安全监视系统120包括用于检测企业网络110内的安全事件的多个安全设备,诸如入侵检测系统122、防火墙系统124和反病毒系统126。检测到的每个安全事件都可指示与攻击、包括或以其他方式中断计算设备104a至104n的运行的尝试相关的活动。不同类型的安全事件的示例包括但不限于:认证事件(例如,尝试读取密码文件等)、(基于主机或网络的)入侵事件、网络流量事件、反病毒事件(例如,检测恶意软件感染)等。一旦安全监视系统120识别安全事件,该安全事件就可以任何形式(例如诸如,以系统日志、安全日志等)被存储在存储系统102内。

如上所述,大多数组织对其计算设备/系统(例如诸如,企业网络110内的那些)执行全天候监视。因此,在任何给定的时间段内,安全监视系统120能够产生巨大量的安全事件。考虑到在任何给定的时间段内在企业计算系统中可发生的大量安全事件,大多数组织通常使用mssp、siem等(例如诸如,在本示例中的sms130)来帮助监视、检测和/或分析安全事件。

如图所示,sms130包括日志收集工具132,该日志收集工具被配置为收集存储在来自企业网络110内的设备和系统的日志中的安全事件。日志可来自计算设备104a至104n、存储系统102、安全监视系统120内的安全系统(例如,入侵检测系统122、防火墙系统124和反病毒系统126等)等中的任一者。sms130还包括安全事故检测(sid)工具134,该安全事故检测工具被配置为执行本文提出的技术。例如,sms130能够执行图5中的操作500、图6中的操作600,或本文描述的技术中的任何技术(或技术的组合)。例如,如下所述,sid工具134能够基于不同类型的安全事件的聚合来提供更高置信度的安全警示(例如,与传统技术相比),所述不同类型的安全事件中的每个安全事件都可以是安全事故的低指示器(例如,低置信度)。

为了使分析员确信特定的检测到的安全事故是真实的事故且分析员需要采取行动,sid工具134被配置为通过生成和报告支持识别为特定事故的每个安全事件的证据的集(或列表)来证明事故的合理性。例如,如将参考图4所述,一旦sid工具134识别安全事故,sid工具134就显示在安全事故期间发生并且与安全事故相关联的安全事件的列表。除了安全事件的列表之外,sid工具134还提供与事故中的安全事件最相关联的事件的列表。事件的该额外列表在安全事故期间没有发生,但是是与指示感染已发生的可能性的活动关联的一组事件。在一些示例中,该组证据可包括一次或多次登录尝试、密码文件访问尝试、文件系统更新、本地文件损坏以及可靠性指示可疑活动和/或管理员想要知道的其他任何其他信息。在一些示例中,该组证据还可包括与成功的感染、漏洞或攻击关联的事件。

例如,在一种情况下,针对所识别的事故中的任何安全事件,证据集可指示该事件在安全事故情境中发生的时间百分比(例如,安全事件触发的时间的80%,其与osattack相关联)以及特定安全事故的名称。在一个实施方案中,sid工具134可提供证据集,该证据集示出安全事件与可靠地触发事故的创建的其他安全事件的关联性。例如,在这种情况下,针对所识别的事故中的任何安全事件,证据集可指示该事件在另外的安全事件情境中发生的时间百分比(例如,安全事件与apacheweb服务器缓冲器溢出同时发生的时间的60%、安全事件与“system.infected.3234”同时发生的时间的30%、安全事件与“artemis!2384917”同时发生的时间的15%、安全事件与“outboundzeroaccesstraffic”同时发生的时间的5%等等)。这样做允许人类分析员容易地理解安全事故,使得人类分析员可轻易地判断该事故是否是真实的,以及是否对该事故采取行动。此外,报告此类信息给分析员提供将反馈结合到元素真正属于证据集的程度的机会,这样允许ssp改进安全事故检测、降低误报事故的数量等。

例如,在一些实施方案中,sid工具134被配置为结合分析员反馈(或者在一些情况下,缺乏反馈)以确定是否修改证据集中列出的事件、改进安全事故检测技术等。例如,同样如下所述,一旦sid工具134向分析员警示给定的安全事故、提供与该事故相关联的安全事件的列表,并且提供与列表中的安全事件中的每一个相关联的证据集,sid工具134就可基于分析员是否响应(并且如果分析员响应,则基于响应的类型)来确定是否修改证据集(例如,在证据集中添加/删除/修改项目)。

然而,需注意,图1仅示出了计算环境100的一个可能的布置。例如,尽管安全系统中的一些被示出独立于计算设备104a至104n,但是在一些实施方案中,安全系统中的一个或多个可在计算设备104a至104n内。更一般地,本领域的普通技术人员将认识到,计算环境100的其他实施方案也可被配置为基于低置信度安全事件的聚合来提供对安全事故的高置信度检测。

图2根据一个实施方案进一步示出了结合图1描述的sid工具134的示例。如图所示,sid工具134包括置信度分数部件202、学习部件204、证明部件206和反馈部件208。在一个实施方案中,一旦日志收集工具132从计算设备104a至104n收集到日志,置信度分数部件202就聚合固定时间窗口(例如,近似为分钟、小时、天等)内的安全事件,并计算所识别的安全事件中的每一个的置信度分数。

一般来讲,每个置信度分数都是相应的安全事件在感染、攻击、漏洞等情境中发生的时间百分比。使用读取密码文件作为一种类型的安全事件的参考示例,如果安全系统中的一个安全系统将要记录该类型的安全事件,则置信度分数部件202将首先确定在固定时间窗口期间发生的密码文件尝试的数量。然后,置信度分数部件202将确定在感染的情境中(例如,在此之前和/或之后的某个时间)安全事件在固定时间窗口期间发生的次数的数量。基于该信息,置信度分数部件202然后可计算读取密码文件的置信度分数。例如,使用上文示例,如果读取密码文件在一天中发生10000次,并且在这10000次中,反病毒软件(在主机设备上)指示存在感染的安全事件发生8000次,则置信度分数部件202将计算置信度分数为0.8。这样,置信度分数部件202可计算多种多样的安全事件集合的置信度分数。

在一个实施方案中,一旦置信度分数部件202计算每种类型的安全事件的置信度分数,置信度分数部件202就使用多个多样性量度来评估该安全事件(及其相应的置信度分数)。一种这种类型的量度是基于置信度分数的总和的。例如,在一种情况下,置信度分数部件202可采用测量在固定时间窗口期间所触发的每个安全事件类型的置信度分数的总和的量度。并非专注于任何一种类型的安全事件的发生数量,该量度代替地仅对每种类型的安全事件计数一次(无论该安全事件在固定时间窗口期间发生多少次)。例如,如果具有类型1(具有0.01的置信度分数)的安全事件发生一百万次,具有类型2(具有0.5的置信度分数)的安全事件发生一百次,则该量度将指示置信度总分数为0.51。

在一个示例中,置信度分数部件202可使用测量在时间窗口期间所触发的每个事件的每个实例的置信度分数的总和的对数的量度。与上述量度(其忽略了具有任何一种特定安全事件类型的实例的数量)相比,该量度考虑了安全事件的实例的数量,并且可基于实例的绝对量来指示安全事故已发生的百分比可能性。例如,因为警示量可在一天内频繁地在数以千百万计的安全事件中变动,所以使用对数。

另一类型的量度包括基于安全事件类型的量度。例如,在一种情况下,置信度分数部件202可使用测量在该时间段期间所触发的不同事件类型的总数量(例如,忽视具有特定事件类型的实例的数量)的量度。在一种情况下,置信度分数部件202可采用仅考虑反病毒安全事件的数量的量度。仅仅基于反病毒事件的量度可以有所帮助(针对安全事故检测),因为反病毒事件通常是安全事故的更可靠指示器,并且一般来讲比网络事件更为罕见。这样,当确定针对安全事故检测的阈值和/或一组证据时,置信度分数部件202可使用更专注于反病毒事件的量度。另外,基于反病毒事件的量度还可结合置信度分数的总和、置信度分数的总和的对数等,类似于上述量度。

置信度分数部件可使用的其他类型的量度包括但不限于:基于在固定时间窗口期间所触发的任何一个安全事件持有的最大置信度分数的量度、基于有助于检测的不同安全设备的数量的量度(例如,如果涉及反病毒设备和网络设备,则将存在对安全事故的更广泛和更强烈的指示)等等。需注意,上述多样性量度是作为可用于评估可来自不同设备的不同类型安全事件的量度的参考示例提供的。然而,一般来讲,置信度分数部件202可使用上述量度或其他类似量度中的任何一个(或组合)来评估安全事件。

在一个实施方案中,一旦置信度分数部件202计算每个安全事件的置信度分数并使用一个或多个多样性量度来评估安全事件,置信度分数部件202就将信息(例如,安全事件、置信度分数、根据量度的分析信息等)提供给可生成一组人工阈值的人类分析员(例如,在不存在基础事实集的情况下)。另选地,在另一实施方案中,如果存在可用的基础事实集,则置信度分数部件202将该信息提供给学习部件204,该学习部件将该信息输入到机器学习算法中,以便训练安全事故检测模型。例如,在一个特定实施方案中,学习部件204可采用支持向量机(svm),该支持向量机定义将已知事故与误报警示识别最佳分开的特征的线性组合。在许多情况下,使用svm模型对于大数据环境可能是有益的,因为svm容易被定义为关于sqlwhere子句中的表列的高效算术函数。然而,需注意,一般来讲,学习部件204可采用任何有监督的机器学习算法来开发阈值和/或证据集。

在一个实施方案中,一旦学习部件204开发出一组阈值,学习部件204就可使用这些阈值来执行安全事故检测。例如,学习部件204可使用这些阈值来确定何时将给定的一组不同的低置信度安全事件类型提升到应当由系统分析员来调查的安全事故的级别(否则其可能被忽略)。一旦学习部件204检测到给定的安全事故(例如,基于至少一个低置信度安全事件超过阈值),证明部件206就提供(例如,如图4所示)在该安全事故期间发生的所有安全事件的列表。证明部件206还为每个安全事件提供一组证据。该证据证明了来自隐蔽事件的高置信度水平的合理性,并用于鼓励系统分析员迅速采取行动。例如,该组证据通常表示可能比在事故期间实际发生的安全事件更具威胁性的严重恶意活动和/或可疑活动。通过向分析员报告该组证据,分析员可轻易地判断该事故是否是真实的,以及是否对该事故采取行动。

在一个实施方案中,反馈部件208被配置为响应于安全事故警示而接收关于分析员的决定(采取行动或不采取行动)的反馈。例如,在一个实施方案中,如果分析员通过采取行动以解决该安全事故来对安全事故警示做出响应,则该响应可指示证明部件206提供了正确的一组证据。在另一实施方案中,如果分析员通过指示证据集中的一个或多个元素应当被修改(例如,添加/删除/改变)来对该安全事故做出响应,则该响应可用于基于分析员的信息来细化证据集。在该实施方案中,可给分析员提供关于如何创建置信度分数的见解,这将允许分析员提供更多细致入微的反馈。例如,分析员可接收关于置信度分数、多样性量度、阈值和/或用于创建证据集或检测安全事故的其他信息中的每一个的信息。报告该信息可帮助分析员理解证据集如何对检测到的安全事故起作用,使得分析员可修改证据集以进一步降低误报指示。通过直接移除证据集或向证据集添加项目,置信度分数将自动地被重新调整。在又一实施方案中,如果分析员不对安全事故警示做出响应,则非响应仍然可指示证据集需要被细化,因为反馈部件208可推断分析员将该事故视为误报(例如,因为不存在足够充分的证据以使分析员采取行动)。

因此,通过基于来自分析员行为的信息来不断地调整和细化该组证据和/或安全事故检测模型,本文提出的技术可增加灵活性、改进准确度以及降低在事故检测期间可发生的误报事故的量(例如,与传统技术相比)。

图3根据一个实施方案示出了结合分析员反馈的sid工具134的示例。如该特定实施方案所示,sid工具134(经由日志收集工具132)接收来自安全设备诸如计算系统306上的防火墙302、入侵检测系统304、反病毒308等的多个不同的日志。这些日志中的每个日志都可能包含若干不同类型的安全事件,这些安全事件中的每个安全事件都可传达与安全事故相关联的一定量风险。

一旦sid工具134接收到安全事故,sid工具134就(经由置信度分数部件202)计算每个安全事件的置信度分数,使用一个或多个多样性量度来评估安全事件。然后,sid工具134使用该信息来(经由学习部件204,或者在一些实施方案中,经由人类分析员)确定可用于将已知事故与误报警示识别分开的阈值并生成一组证据。

一旦sid工具134检测到安全事故,sid工具134就(经由证明部件206)向一个或多个分析员310提供与检测到的安全事故相关联的安全事件的列表以及证明每个列出的安全事件的合理性的该组证据。一旦分析员310接收到该信息,分析员310就可通过尝试解决安全事故、修改证据集中的一个或多个项目、将事故标记为误报/确报来响应,或者根本不响应。sid工具134监视分析员310的响应并且可基于响应的类型来细化证据集和/或阈值。

需注意,尽管图3中所示的场景示出了sid工具134接收来自三个不同安全设备的日志,但是本文提出的技术允许sid工具134针对任何数量的设备以及针对各种各样不同类型的安全事件来接收日志和/或执行安全事故检测。

图4根据一个实施方案示出了示例性监视界面400,该监视界面示出了安全事故的一个示例。如图所示,监视界面400包括安全事件列表402,该安全事件列表列出了在安全事故期间发生的所有安全事件(例如,在本示例中为九个)。在该列表中,每个安全事件都由“事件id”、“置信度”分数和“签署名称”来识别。例如,“httpiisisapiextension”是一般与利用缓冲器溢出漏洞的尝试相关联的安全事件。在该特定实施方案中,安全事件列表402按照减少置信度的顺序对促成该事故的安全事件进行排序。然而,在其他实施方案中,安全事件可以任何类型的顺序(例如,渐增等)和/或布置列出。

监视界面400还包括证据列表404。证据列表404包括与安全事件列表中的事件最强烈地一起发生并且与成功感染关联或指示可疑活动(例如,一次或多次登录尝试、重复的密码文件尝试等)的事件的列表。为了清楚起见,在该特定实施方案中,证据列表404包括仅第一安全事件(例如,“httpiisisapiextension”)的证据。然而,需注意,证据列表404可提供在给定的安全事故期间发生的每个安全事件的一组一个或多个事件。证据列表404中的每个事件都由“事件id”、“置信度发生率”和“签署名称”来识别。证据列表404中列出的事件不是在特定的安全事故期间所触发的事件,而是在相同类型的安全事故期间频繁地确实发生的事件。向分析员报告该信息证明了来自隐蔽事件的高置信度水平的合理性。例如,证据集通常表示可能听起来比在事件期间实际发生的事故更具威胁性的严重恶意活动。因此,在该实施方案中,向分析员呈现附属于“httpiisisapiextension”的“osattack”签署将提高分析员采取行动以解决该安全事故的可能性,因为这些事件表示针对os的成功攻击。其他常见的示例(未示出)包括与运营商僵尸网络强烈关联的证据列表中的广告软件。

根据一个实施方案,报告来自支持安全事故检测的证据集的证据还允许分析员在出现误报检测时提供细致入微的反馈。在一些情况下,分析员可将误报归因于证据集的问题。例如,如上所述,证据集由可用于建立安全事件的置信度分数的警示组成。因此,通过报告证据集中同时发生元素的列表,本文提出的技术允许分析员从证据集中删除不是被感染系统的百分百可靠指示器的元素。一般来讲,证据集中存在不属于该证据集的警示是误报检测的主要原因之一,并且部分地是由于选择了保守的警示多样性阈值或人工阈值。因此,消除证据集中的错误可自动地修正这些情况下的置信度分数,从而使得检测准确度提高。

在其他情况下,分析员可将误报归因于缺乏充分的证据。例如,误报的另一个可能的原因是在固定时间窗口中的聚合安全事件数据之上针对该安全事件的阈值不够保守。因此,利用本文提出的技术,如果提供的证据表明感染,但是提供的证据不足以下结论(证实感染),则分析员可将安全事故标记为误报,从而引起安全事故检测模型的再培训以及对确报和误报之间的细化界限的重新选择。

需注意,示例性监视界面400示出了用于呈现安全事件和与安全事故相关联的一组证据的信息字段的一个可能的展示。例如,在一些实施方案中,监视界面400包括允许用户选择(或点击)证据集中的事件以表明该事件不属于该证据集的字段、按钮等。在一些情况下,监视界面400包括允许用户选择应当包括在证据集中的事件或者确认证据集中的事件正确的字段。更一般地,本领域的普通技术人员将认识到,监视界面400可包括呈现给分析员的信息字段的不同配置(例如,具有相同或不同的信息)。

图5根据一个实施方案示出了用于利用低置信度安全事件来检测安全事故的方法500。如图所示,方法500开始于步骤502,其中sid工具134聚合接收自来自一个或多个设备的日志的安全事件的集合。在一个实施方案中,sid工具134聚合一段时间(例如,近似为分钟、小时等)的安全事件。在一个实施方案中,安全事件的集合包括来自一个或多个不同设备的安全事件的异构集合。

在步骤504处,sid工具134计算每个不同安全事件的置信度分数。每个置信度分数指示安全事故已发生的可能性。在步骤506处,sid工具134部分地基于置信度分数来确定用于检测安全事故的阈值。例如,如上所述,在一个实施方案中,为了确定阈值,sid工具134使用一个或多个多样性量度来评估安全事件,并将置信度分数和评估数据传输给基于该信息来创建人工阈值的人类分析员。在另一实施方案中,sid工具134将信息输入到机器学习算法中以便生成阈值。

在步骤508处,sid工具134(例如,使用阈值、分析员反馈等)确定一组证据。在步骤510处,sid工具134(例如,使用阈值、证据集等)确定是否已检测到安全事故。如果否,则sid工具134停留在步骤510。如果sid工具134确实(例如,使用阈值和该组证据)检测到安全事故,则针对每个检测到的安全事故,sid工具134向分析员提供与该安全事故相关联的安全事件的列表(步骤512)和每个安全事件的证据的列表(步骤514)。在一个实施方案中,sid工具134还为分析员提供了用于揭示针对任何个人签署的置信度分数的证明的机制。例如,如上所述,对事件的置信度分数的证明可包括提供已被观察到在有疑问的安全事故的任何实例的预定义的时间段(例如,近似为分钟、小时、天等)内同时发生的安全事件的列表(例如,证据的列表)。在一个特定实施方案中,预定义的时间段是24小时。可通过减少频率来排序来对该列表进行排序,并且证据集中的每个事件都可通过其名称来描述(例如,如图4所示)。证据集中的每个事件都可进一步通过该事件在所报告的有疑问的安全事件的时间段内同时发生的时间相对于与该组证据中的任一事件同时发生的(所报告)的安全事件的实例的总数量的百分比来描述。

在步骤516处,sid工具134确定分析员是否已对安全事故警示做出响应。无论分析员响应还是不响应,sid工具134都使用来自响应的信息或根据缺乏响应来更新阈值(步骤506)和证据集(步骤508)。在一个实施方案中,在接收到该组证据中的事件中的一个事件不属于该证据集的指示时,sid工具134分析移除所指示的事件对向分析员报告安全事故的估计影响。例如,sid工具134可相较其他先前接收到的或确定的信息(例如,阈值、置信度分数、先前的分析员反馈等)来平衡分析员对该事件应被移除的建议,以确定从证据集中移除该事件是否将提高系统的准确度。在其中sid工具134确定从证据集中移除该事件将减少(例如由分析员)修复的事故的数量或增加向分析员报告的误报安全事故的数量的情况下,sid工具134可忽略分析员的建议(即,不从证据集中移除该事件)。在其中sid工具134确定从证据集中移除该事件将增加被修复的事故的数量或减少向分析员报告的误报安全事故的数量的情况下,sid工具134可决定从证据集中消除该事件。这样,这些技术可用于提供对安全事故的改进检测并降低误报事故的数量。

图6根据一个实施方案示出了用于结合分析员反馈以改进对安全事故的检测的方法600。如图所示,方法600开始于步骤602,其中sid工具134确定是否已接收到分析员反馈。如果已接收到,则接下来在步骤604处,sid工具134确定分析员是否将安全事故标记为误报。如果sid工具134确定分析员确实将安全事故标记为误报,则在步骤606处,sid工具134(例如,使用机器学习技术等)确定新的阈值。

然而,如果在步骤604处,sid工具134确定分析员没有将安全事故标记为误报,则sid工具134前进至步骤610并确定分析员是否修改(例如,删除、添加等)证据集中的任何元素。如果修改了,则在步骤612处,sid工具134(例如,基于分析员反馈)修改证据集,并且在步骤614处,sid工具134自动地重新调整置信度分数(例如,基于证据集中不属于该证据集的元素的置信度分数等)。

重新参见步骤602,如果在步骤602处,sid工具134确定分析员没有提供反馈,则sid工具134可推断分析员将该安全事故视为误报事故,并且在步骤620处(例如,使用机器学习技术等)调整阈值。一旦sid工具134已执行步骤606,614或620,sid工具134就前进至步骤616,并确定是否已检测到另外的安全事故。如果已检测到,则在步骤618处,sid工具134(例如,基于分析员反馈)提供安全事件的列表和针对每个安全事件的证据集。然后,sid工具134前进至步骤602以确定分析员是否具有额外的反馈。这样,本文提出的技术能够不断地提高安全事件检测的有效性、降低误报的数量等。

图7根据一个实施方案示出了被配置为基于低置信度安全事件来执行安全事故检测的示例性服务器计算系统700。如图所示,服务器计算系统700包括但不限于各自连接到总线717的中央处理单元(cpu)705、网络接口715、存储器720和存储730。服务器计算系统700还可包括将i/o设备712(例如,键盘、显示器、鼠标设备等)连接到服务器计算系统700的i/o设备接口710。此外,在本公开的情境中,服务器计算系统700中所示的计算元件可对应于物理计算系统(例如,企业网络中的系统)。

cpu705检索并执行存储在存储器720中的编程指令,并且存储和检索驻留在存储730中的应用数据。总线717用于在cpu705、i/o设备接口710、存储730、网络接口715和存储器720之间传输编程指令和应用数据。需注意,cpu705被包括以表示单个cpu、多个cpu、具有多个处理核心的单个cpu等。存储器720一般被包括以表示随机存取存储器。存储730可以是磁盘驱动器存储设备。存储730包括安全日志732和配置文件734。尽管示出为单个单元,但是存储730可以是固定和/或可移除存储设备的组合,所述固定和/或可移动存储设备为诸如固定磁盘驱动器、可移除存储卡或光学存储器、附网存储(nas)或存储区域网(san)。

例示性地,存储器720包括日志收集工具722和sid工具740。日志收集工具722收集来自计算网络(例如,企业网络)的安全监视中涉及的若干不同类型的安全日志732。安全日志732可能包含不同类型的安全事件,这些安全事件中的每个安全事件都可传达与安全事故相关联的一定量风险。一旦sid工具740接收到安全事件,置信度分数部件724就聚合安全事件、计算每个安全事件的置信度分数,并且使用一个或多个多样性量度来评估置信度分数。学习部件726使用该信息(例如,经由机器学习技术、手动定义等)来确定可用于安全事故检测的阈值。学习部件也可使用阈值来确定初始的一组证据(例如,如果当前没有一个可用)。

在一个实施方案中,一旦sid工具134检测到安全事故,证明部件728就(向分析员)提供与检测到的安全事故相关联的安全事件的列表以及证明每个列出的安全事件的合理性的该组证据。反馈部件720监视分析员的响应,并且可基于该响应来细化证据集和/或阈值。

这样,本文提出的技术允许改进安全事故检测,而不依赖专家-分析员规则来指定条件,在这些条件下,高置信度事件应当形成呈现给分析员(例如,客户、管理员、用户等)的安全事故。

前面的讨论提出了各种各样的实施方案。然而,本公开并不限于这些具体描述的实施方案。相反,无论是否涉及不同的实施方案,以下特征和元素的任何组合都被设想用于实现和实践本文描述的技术。此外,尽管本公开的实施方案可实现优于其他可能的解决方案和/或现有技术的优点,但是无论如何,给定实施方案所实现的特定优点并不限制本公开。因此,以下方面、特征、实施方案和优点仅是例示性的,并且不被认为是所附权利要求的元素或限制,除非在权利要求中明确叙述。

方面可体现为系统、方法或计算机程序产品。因此,实施方案可采取完全硬件实施方案、完全软件实施方案(包括固件、常驻软件、微代码等)或组合软件和硬件方面的实施方案的形式,这些软件和硬件方面在本文中一般可全部被称为“电路”、“模块”或“系统”。此外,实施方案可采取体现在其上具有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。

可利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于:电子的、磁的、光学的、电磁的、红外的或半导体的系统、装置或设备,或前述内容的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下:具有一条或多条线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光学存储设备、磁存储设备,或前述内容的任何合适的组合。在本文档的情境中,计算机可读存储介质可以是可包含或存储指令以供指令执行系统、装置和设备使用或与其结合的任何有形介质。

附图中的流程图和框图示出了根据本文提出的各种实施方案的系统、方法和计算机程序产品的可能具体实施的架构、功能和操作。就这一点而言,流程图或框图中的每个框都可表示包括用于实现指定的逻辑功能的一个或多个可执行指令的代码的模块、区段或部分。在一些另选的具体实施中,框中标注的功能可不按照附图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可基本上同时执行,或者这些框有时可以相反的顺序执行。框图和/或流程图图示中的每个框以及框图和/或流程图图示中的框的组合可通过执行指定功能或动作的专用硬件型系统或专用硬件和计算机指令的组合来实现。

前面的讨论提出了各种各样的实施方案。然而,本公开并不限于这些具体描述的实施方案。相反,无论是否涉及不同的实施方案,以下特征和元素的任何组合都被设想用于实现和实践本文描述的技术。此外,尽管本公开的实施方案可实现优于其他可能的解决方案和/或现有技术的优点,但是无论如何,给定实施方案所实现的特定优点并不限制本公开。因此,以下方面、特征、实施方案和优点仅是例示性的,并且不被认为是所附权利要求的元素或限制,除非在权利要求中明确叙述。

方面可体现为系统、方法或计算机程序产品。因此,实施方案可采取完全硬件实施方案、完全软件实施方案(包括固件、常驻软件、微代码等)或组合软件和硬件方面的实施方案的形式,这些软件和硬件方面在本文中一般可全部被称为“电路”、“模块”或“系统”。此外,实施方案可采取体现在其上具有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。

可利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于:电子的、磁的、光学的、电磁的、红外的或半导体的系统、装置或设备,或前述内容的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下:具有一条或多条线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光学存储设备、磁存储设备,或前述内容的任何合适的组合。在本文档的情境中,计算机可读存储介质可以是可包含或存储指令以供指令执行系统、装置和设备使用或与其结合的任何有形介质。

附图中的流程图和框图示出了根据本文提出的各种实施方案的系统、方法和计算机程序产品的可能具体实施的架构、功能和操作。就这一点而言,流程图或框图中的每个框都可表示包括用于实现指定的逻辑功能的一个或多个可执行指令的代码的模块、区段或部分。在一些另选的具体实施中,框中标注的功能可不按照附图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可基本上同时执行,或者这些框有时可以相反的顺序执行。框图和/或流程图图示中的每个框以及框图和/或流程图图示中的框的组合可通过执行指定功能或动作的专用硬件型系统或专用硬件和计算机指令的组合来实现。

如本文所用,提及项目列表中的“至少一个”的短语是指这些项目的任何组合,包括单个成员。例如,“a、b或c中的至少一个”旨在覆盖a、b、c、a-b、a-c、b-c和a-b-c,以及具有几倍相同元素的任何组合(例如,a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c和c-c-c或a、b和c的任何其他排序)。

虽然前述内容涉及本公开的实施方案,但是在不脱离本公开的基本范围的情况下,可设计本公开的其他和进一步的实施方案,并且本公开的范围由随后的权利要求书确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1