基于依照事件序列中时间位置的参考基线评估事件的系统和方法

文档序号:7978334阅读:114来源:国知局
基于依照事件序列中时间位置的参考基线评估事件的系统和方法
【专利摘要】提供用于事件的评估的系统和方法。用户特定的参考基线包括一组按时间次序的事件序列。当前会话中的事件序列的事件被接收。使用事件的属性以及当前会话中的事件序列内的事件的时间位置,做出关于所述事件是否至少部分地匹配于所述参考基线的确定。
【专利说明】基于依照事件序列中时间位置的参考基线评估事件的系统和方法
[0001]1.交叉引用
本申请要求享有2011年9月9日提交的、名称为“基于与基线的偏差对事件基于规则的分析”的共同待审美国临时专利申请N0.61/532,968的优先权。(律师案卷N0.82844890,该美国临时专利申请被通过引用结合于此,就各方面而言,如同完全在本文中提出的一样。本申请通过引用整体地结合2008年10月I日提交的、名称为“网络系统中的模式发现”的美国专利N0.7,984,502。
[0002]I1.【背景技术】
对于现代的业务,计算机网络和系统已成为不可缺少的工具。现今,关于几乎所有的可想象主题的兆兆位的信息由世界各地的用户通过这种网络访问并存储在这种网络中。在某种程度上,许多这种信息都是保密的并且其保护也是期望的。入侵检测系统(IDS)(包括欺诈检测系统(FDS))已被开发来检测信息和资源的未经授权的使用并且有助于披露未经授权的人员和/或装置访问计算机网络和在其中存储的信息的尝试。
[0003]有两种互补的方法来检测入侵:基于知识的方法和基于行为的方法。现今,许多使用中的IDS工具都是基于知识的。基于知识的入侵检测技术涉及把捕获的数据与关于现有的利用漏洞的技术的信息相比较。当匹配被检测时,警报被触发。另一方面,基于行为的入侵检测技术通过观察与系统或用户的正常或预期行为(其模型通过各种方法从所收集的参考信息提取)的偏差尝试侦查入侵。当观察到可疑的偏差时,警报被生成。
[0004]传统的安全系统使用规则来相关事件。规则可以被用于分析和相关用户活动事件以识别入侵,更具体地,偏离规范的行为模式。尽管这些机制强大到足够支持多种标准的相关用例,但一些入侵(诸如,复杂的欺诈攻击)可能未被检测到,或可能在规定一组高度复杂的规则之后被检测到。
[0005]II1.【专利附图】

【附图说明】
本公开可以通过参考附图而被更好地理解,并且其众多特征或优点也变得明显。
[0006]图1是依据实施例的网络安全系统的拓扑框图。
[0007]图2是依据实施例的参考基线的生成的过程流程图。
[0008]图3是依据实施例的基于与参考基线的偏差的用户活动事件的分析的过程流程图。
[0009]图4是依据实施例的触发响应动作的过程流程图。
[0010]图5图示了实施例可以在其中被实现的计算机系统。
[0011]IV.【具体实施方式】
安全系统从潜在的成千上万的来源接收事件。事件可以与规则交叉相关,以提供不会由单独装置识别的安全相关情报。通常,相关可以表示来自不同来源的不同事件与通常事故按照相关规则所规定的方式相关联。更具体地,相关例如包括:发现事件之间的关系、推断那些关系的重要性、以优先顺序排列所述事件和元事件、以及提供采取动作的框架。
[0012]如在此使用的,规则或“相关规则”是程序并且包括一组简单或复杂的条件,该条件可以与其他构成(诸如,聚集、分组、和触发器)组合。规则被使用在许多方面,诸如:针对特定条件和模式评估引入事件;使用规则相关以及其他构成(如,活动列表、会话列表、和威胁级别计算)相关来自不同事件的信息;推断关于事件的重要性的含义;以及响应于事件开始动作。
[0013]换言之,规则表达条件,对照该条件事件流被评估。所述评估的结果提供信息,用以从事件流中得出所述含义。当匹配被确时,规则可以开始动作作为响应。
[0014]除了条件之外,规则可以进一步包括:阈值(B卩,发生的次数、累积总额)、持续时间、结合标准、和/或聚集标准。例如:
如果(来自相同的源IP地址的)(登陆尝试失败)在(I分钟)内发生(10次),则(动作)对于这个规则,条件是“登陆尝试失败,”发生的阈值次数是“10,”持续时间是“I分钟,”以及聚集的标准是“来自相同的源IP地址。”
规则条件可以指各种数据模型。例如,规则条件可以指网络的字段或性质,以及作为网络上节点和/或机器的表示的资产模型。所述性质可以包括:开放端口、操作系统、漏洞、业务分类等。
[0015]规则条件还可以指数据列表(诸如,活动列表和会话列表)。会话列表把用户与其在网络上的事件业务相关联。更具体地,会话列表是可配置的表格,该表格维护与用户会话相关的时间数据(例如,DHCP会话信息、VPN会话信息、从用户到其角色的映射、和那些属性有效的对应时间段等)。
[0016]活动列表是可配置的表格,该表格聚集事件的指定字段。活动列表为时间段(例如,天、星期等)上的特定事件提供跟踪。可以使所述聚集的数据用于相关。例如,数据列表可以记录在账单周期内使用特定信用卡所产生的购买的累积总额。例如,所述累积总额由规则参考,以提醒到达信用额度的信用卡持有者。
[0017]在入侵检测的情况下,用户动作事件的按时间次序的序列与每一个这些事件之间的时间间隙对于识别异常和不正常的行为有重要作用。更具体地,用户活动与那个用户的基线行为的比较对于异常的及时检测以便检测欺诈有重要作用。
[0018]然而,规则在本质上通常是静态的,并且因此不足以捕获网络和/或系统中的所有用户之间的活动模式的差异。此外,传统的规则引擎允许对使用简单的结合条件和阈值条件来相关事件的规则有规范,该结合条件典型地基于匹配字段值把不同事件联系起来,阈值条件指定需要在某个时间段发生的事件的数量。尽管这些机制足够强大到支持许多标准的相关用例,但复杂的欺诈攻击的检测通常比能够以这种方式简单地指定需要更复杂的条件。
[0019]此外,一组复杂的静态规则可被用于捕获事件序列,并且在指定的事件序列内检测缺少的事件。对于具有多于两个事件的序列,检测所有可能的序列偏差会需要生成指数数量的规则,例如,其包括链住实现状态机的其他规则的规则。
[0020]依据一个实施例,在基于网络的金融交易(例如,账户访问)行为和其他类型的用户动作事件中检测异常的框架被描述。基于所识别的按时间次序的事件序列的模式和/或基于所述序列中每一个事件之间的时间间隙确定用户特定的基线。规则可以被用于基于在线会话的性质检测何时在线交易可能是欺诈性的。对应于用户与在线账户的交互或其他会话(例如,网络会话)的事件被对照用户特定基线进行比较。与用户基线或预期行为的重大偏差可以被标记为潜在的欺诈。此外,欺诈/可疑的事件可以被与安全信息相关,以通过利用安全系统之前不同的部分而提供更完整的系统视图。
[0021]在在线金融交易欺诈的情形下,检测基于用户的在线会话的分析。对于特定用户,正常在线会话可能要求以特定的次序(即,登录页面、首页面、账户余额页面、资金转账页面等)访问七个网页面。在这个示例中,资金转账交易在大约五分钟内完成。在特定的实例中,如果这个用户跳过这种交易的原本正常的步骤(即,不导航跳转至账户余额页面)、执行预期次序之外的步骤、在会话期间完成所述交易前仅仅花费20秒、或预期步骤之间的时间间隔严重偏离那个用户的正常行为,则所述异常可能预示欺诈访问。
[0022]在一个实施例中,提供用于事件的评估的系统和方法。包括一组按时间次序的事件序列的用户特定参考基线被生成。当前会话中的事件序列中的事件被接收。使用当前会话中的事件序列内的事件的时间位置和事件的属性做出关于所述事件是否至少部分地匹配所述参考基线的确定。规则的条件被分析,并且相关事件被生成。
[0023]图1是依据实施例的网络安全系统100的拓扑框图。系统100包括代理12a_n、至少一个管理器14、和至少一个控制台16 (该控制台16可以包括其基于浏览器的版本)。在一些实施例中,代理、管理器和/或控制台可以被组合在单个平台中,或被分布在两个、三个或更多的平台中(诸如,在图示示例中)。随计算机网络或系统发展,这种多层的体系结构的使用支持可扩展性。
[0024]代理12a_n是作为机器可读指令的软件程序,其提供来自多种网络安全装置和/或应用的高效、实时(或接近实时)的本地事件数据捕获和过滤。安全事件的典型来源是通常的网络安全装置,诸如,防火墙、入侵检测系统和操作系统日志。代理12a-n能够收集来自产生事件日志或消息的任何来源的事件,并且能够在本地装置(native device)、网络内的合并点、和/或通过简单网络管理协议(SNMP)陷阱(trap)进行操作。
[0025]代理12a_n是通过手动过程和自动化过程二者并经由相关联的配置文件可配置的。每个代理12可以包括至少一个软件模块,其包括:标准化组件、时间校正组件、聚集组件、批处理组件,解析器组件、传输组件、和/或附加的组件。这些组件可以通过配置文件中的适合命令被激活和/或失活。
[0026]管理器14可以包括基于服务器的组件,其使用规则引擎18和集中式事件数据库20进一步合并、过滤和交叉相关从所述代理接收的事件。管理器14的一个任务是捕获和存储所有的实时和历史事件数据以(经由数据库管理器22)构成完整的、企业范围的安全活动的画面。管理器14还提供集中式管理、通知(通过至少一个通知器24)、和报告、以及知识库28和案例管理流程。管理器14也可以部署在任何计算机硬件平台,并且一个实施例使用数据库管理系统来实现事件数据存储组件。管理器14和代理12a-n之间的通信可以是双向的(例如,以允许管理器14把命令传送到平台主控(hosting)代理12a-n),并且被加密。在一些装设中,管理器14可以充当多个代理12a-n的集中器,并且能够把信息转发到(例如,部署在公司总部的)其他管理器。
[0027]管理器14还包括至少一个事件管理器26,其负责接收由代理12a_n和/或其他管理器传送的事件数据消息,并且从其他管理器接收事件汇总数据。事件管理器26还负责生成事件数据消息,诸如,相关事件和审计事件。在与代理12a-n的双向通信被实现的情况下,事件管理器26可被用于把消息传送到代理12a-n。如果加密被用于代理-管理器通信,则事件管理器26负责加密从代理12a-n接收的消息,并且加密传送到代理12a_n的任何消
肩、O
[0028]一旦事件数据消息已被接收,事件数据被发送到规则引擎18。规则引擎18被配置成把事件数据与相关规则交叉相关,以便识别规则的匹配。
[0029]由所述规则触发的动作可以包括(例如,经由通知器24)传送到指定目的地的通知(例如,安全分析者可以经由所述控制台16、电子邮件消息、电话呼叫、蜂窝电话、语音信箱和/或寻呼机号码或地址、或借助于到另一个通信装置和/或地址(诸如,传真机等)的消息被通知)和/或到网络装置的指令(例如,经由代理12等)。
[0030]控制台16是基于计算机(例如,工作站)的应用,其允许安全专业人士执行逐日的管理和操作任务,诸如,事件监控、规则编写、事故调查和报告。单个管理器14能够支持多个控制台16。
[0031]在一些实施例中,控制台16的基于浏览器的版本可以被用于提供对安全事件、知识库项目、报告、通知和案例的访问。就是说,管理器14可以包括可经由在个人或掌上计算机(其代替控制台16)上主控的网络浏览器访问的网络服务器组件,以提供控制台16的一些或全部功能。浏览器访问对于远离控制台16的安全专业人士和兼职用户特别有用。控制台16和管理器14之间的通信是双向的并且可以被加密。
[0032]通过上述的体系结构,集中式或分散式环境可以被支持。这是有用的,因为组织可能想要实现系统100的单个实例,并且使用访问控制列表来区分用户。可替代地,组织可以选择针对多个组中的每一个部署独立的系统100,并且在“主控”级别合并结果。这种部署还能够实现“跟随太阳(follow-the-sun)”的布置,其中地理上分散的对等组通过把监管责任传送到当前工作标准业务时间的组而彼此合作。系统100也能够按照公司分层结构部署,其中业务部门独立地工作并且支持向上滚动到集中式管理职能。
[0033]网络安全系统100还包括异常检测能力。在一个实施例中,管理器14进一步包括原始基线模块31A、参考基线模块31B、和本地存储器32。
[0034]原始基线模块31A被配置成接收一组事件,诸如,经由事件管理器26来自代理12a-n中的至少一个的、经由数据库管理器22来自事件数据库20的、或来自事件管理器26的安全事件。原始基线模块31A被进一步配置成分别使用在事件中提供的用户ID和会话ID,每个用户和每个会话地把事件分组。
[0035]例如,按会话分组可以依据事件的会话标识符(ID)(例如,网络会话标识符)被执行。在另一个实施例中,基于会话的分组可以通过检查事件的时间戳以及确定一组事件为相同会话的一部分而被确定,其中在所述组中的事件的时间戳在时间接近度上是接近的。换言之,所述事件按事件(例如,交易)之间的时间接近度分组。
[0036]原始基线模块31A被进一步配置成识别会话期间所采取的用户动作的序列以及那些动作之间的时间间隙,生成原始基线。原始基线模块31A被配置成在数据列表(诸如,数据列表模块30中的活动列表和/或会话列表)中存储原始基线。
[0037]参考基线模块31B被配置成生成参考基线,对照所述参考基线,所接收事件的序列被分析以识别异常。参考基线模块31B更具体地配置成:使用原始基线识别按时间次序的事件序列的通常和独特模式,所述事件序列基于每个用户构成历史记录。此外,独特的事件序列中的每一个事件之间的时间间隙被确定。[0038]参考基线模块31B被进一步配置成计算关于事件流程的统计,其包括跨越特定事件流程的所有会话的单独事件的发生次数。原始基线模块31A和参考基线模块31B可以是所示的独立的模块,或可以与另一个组件(诸如,规则引擎18)集成。
[0039]规则引擎18被配置成接收一组事件,诸如,经由事件管理器26来自代理12a_n中的至少一个的、经由数据库管理器22来自事件数据库20的、或来自事件管理器26的安全事件。此外,规则引擎18被配置成:把当前会话的引入事件的序列和时间数据(包括时间间隙)与关联于特定用户的参考基线相比较,并且在当前会话信息与参考基线不匹配的情况下,开始规则触发。
[0040]网络安全系统100还包括数据列表的能力。在一个实施例中,管理器14进一步包括数据列表模块30和本地存储器32。数据列表模块30被配置成维护会话列表和/或活动列表。此外,数据列表模块30被配置成接收一组事件(诸如,经由事件管理器26来自代理12a-n中的至少一个的、或自事件管理器26本身的安全事件),和/或接收来自原始基线模块31A和参考基线模块31B中的至少一个的用户特定基线。会话列表和/或活动列表可以在本地存储器32中的表格(即,主控表格和/或本地表格)中被维护。在一个实施例中,数据列表表格中的每一个记录表示用户特定、会话特定的事件流程。例如,如果用户参与金融交易的多个会话,则对于单个用户可以有多个事件流程。
[0041]本地存储器32可以是任何适合的存储介质并且可以被设置在管理器14本身上、在包含管理器14的集群中、或在对管理器14而言可访问的网络节点上。
[0042]基线生成
潜在入侵(包括金融交易的过程期间的欺诈)的检测通过参考基线的生成而被促进,该参考基线表示用户的历史上(例如,正常或异常)行为或业务模式中的一种模式。然后,参考基线中的这些模式被用于检测用户行为中的异常。
[0043]图2是依据实施例的参考基线生成的过程流程图。所描述的过程流程200可以通过可执行指令的序列的执行来实现。在另一个实施例中,过程流程200的各部分通过网络安全系统的组件、硬件逻辑(例如,专用集成电路(ASIC)等)的布置来实现。例如,过程流程200的块可以通过网络安全系统的原始基线模块中的可执行指令的序列的执行来实现。例如,所述原始基线模块可以被部署在网络安全系统中的管理器处。此外,过程流程200的块可以通过网络安全系统的参考基线模块中的可执行指令的序列的执行来实现。例如,所述参考基线模块可以被部署在网络安全系统中的管理器处。
[0044]网络安全系统监控和分析事件(诸如,安全事件和应用事件)。在基于网络的金融交易的情况下,所述应用事件可以包括用户活动事件/金融交易事件,例如,用户例如经由网页点击通过在线金融系统的导航,用以查看账户余额、开始用户信用卡账户的资金的转入和转出、添加收款人,更新账户信息等。在一个实施例中,特定用户在特定的会话(例如,网络会话、登陆会话等)期间每一次逐页遍历通过金融系统均在事件流程中被分组。如此,事件流程是基于每个用户和每个会话的事件的集合。事件的用户和/或会话信息可以根据事件中的字段确定。所述事件包括:安全事件、应用事件(例如,金融交易事件)、和其他类型的由部署在安全系统对其监管的系统处的代理生成的事件。
[0045]在步骤210,原始基线被确定。如在此使用的,原始基线是一组关联于特定用户的历史事件流程和时间间隙信息。所述原始基线可以包括多个会话的事件流程。这些事件流程组成关联于用户的历史记录。在一个实施例中,事件流程被组织成基于每个用户和每个会话的按时间次序的事件序列。此外,对于每一个事件流程,序列中每一个事件之间的时间间隙和/或会话所花费的总的时间被确定。通过采用一个事件发生的时间与下一个连续事件发生的时间之间的差异,可以确定一个事件和下一个连续事件之间的时间间隙。
[0046]下面的表1是关联于用户I的部分原始基线的示例,其可以被包含在数据列表的事件表格中。所述原始基线包括时间间隙信息。
[0047]表1
【权利要求】
1.一种用于事件的评估的方法,所述方法包括: 由计算装置生成用户特定的参考基线,所述基线包括一组按时间次序的事件序列; 接收当前会话中的事件序列的事件; 使用事件的属性并且基于当前会话中的事件序列内的事件的时间位置,确定所述事件是否至少部分地匹配于所述参考基线;以及 基于所述事件是否至少部分地匹配于所述参考基线的确定,分析规则的条件。
2.如权利要求1所述的方法,其中所述参考基线进一步包括与按时间次序的事件序列的组中的每一个序列相关联的计时数据,其中,所述组中的每一个序列是与用户相关联的历史事件的独特模式。
3.如权利要求1所述的方法,其中确定所述事件是否至少部分地匹配于所述参考基线包括: 基于与所接收事件相关联的用户标识符,在多个参考基线中,识别所述用户特定参考基线; 在具有与所接收事件的时间位置相同的时间位置的参考基线的序列中选择事件; 把所接收事件的属性与所述参考基线中的事件的相同属性相比较,其中,所接收事件的属性为事件类型。
4.如权利要求3所述的方法,其中确定所述事件是否至少部分地匹配于所述参考基线进一步包括:确定所接收事件的属性是否在规则条件中所指定的偏差阈值内。
5.如权利要求1所述的方法,其中按时间次序的事件序列的组中的至少一个序列被标记为正常用户行为或异常用户行为。
6.如权利要求5所述的方法,其中分析所述规则的条件包括: 如果所述事件匹配于被标记为正常用户行为的至少一个序列,则确定所述规则条件为“假”;以及 如果所述事件匹配于被标记为异常用户行为的至少一个序列,则确定所述规则条件为“直”
ο
7.如权利要求1所述的方法,其中确定所接收事件是否至少部分地匹配于所述参考基线包括: 跟踪所接收事件的发生时间与当前会话中的事件序列的之前所接收事件的发生时间之间的时间间隙; 把所述时间间隙与参考基线的计时数据相比较。
8.如权利要求1所述的方法,其中按时间次序的事件序列的组中的每一个序列与计时数据相关联,并且其中所述计时数据包括使用原始基线中事件的发生时间生成的统计。
9.一种用于事件的评估的系统,所述系统包括: 处理器;以及 耦合到所述处理器的存储器,所述存储器被配置成存储包括多个用户特定的参考基线的数据列表; 其中所述处理器被配置成: 生成多个用户特定的参考基线的第一用户特定的参考基线,所述第一用户特定的参考基线包括一组按时间次序的事件序列;接收当前会话中的事件序列的事件; 使用事件的属性并且基于当前会话中的事件序列内的事件的时间位置,确定所述事件是否至少部分地匹配于所述参考基线; 基于所述事件是否至少部分地匹配于所述参考基线的确定,分析规则的条件; 生成相关事件。
10.如权利要求9所述的系统,其中所述参考基线进一步包括与按时间次序的事件序列的组中的每一个序列相关联的计时数据,其中,所述组中的每一个序列是与用户相关联的历史事件的独特模式。
11.如权利要求9所述的系统,其中所述处理器被配置成通过下述操作确定所述事件是否至少部分地匹配于所述参考基线: 基于与所接收事件相关联的用户标识符,在多个参考基线中,识别所述用户特定的参考基线; 在具有与所接收事件的时间位置相同的时间位置的参考基线的序列中选择事件; 把所接收事件的属性与所述参考基线中的事件的相同属性相比较,其中,所接收事件的属性为事件类型。
12.如权利要11所述的系统,其中所述处理器被配置成通过下述操作确定所述事件是否至少部分地匹配于所述参考基线: 确定所接收事件的属性是否在规则条件中所指定的偏差阈值内。
13.如权利要求9所述的系统,其中按时间次序的事件序列的组中的至少一个序列被标记为正常用户行为或异常用户行为。
14.一种存储多个控制数据处理器来评估事件的指令的非临时性的计算机可读介质,多个指令包括使所述数据处理器进行以下操作的指令: 生成多个用户特定的参考基线的第一用户特定的参考基线,第一参考基线包括一组按时间次序的交易事件序列,其中每一个事件为金融交易的一部分; 接收当前会话中的交易事件序列的交易事件; 使用交易事件的属性并且基于当前会话中的交易事件序列内的交易事件的时间位置,确定所述交易事件是否至少部分地匹配于所述参考基线; 基于所述交易事件是 否至少部分地匹配于所述参考基线的确定,分析规则的条件;以及 把所述交易事件与安全相关的事件相关。
15.如权利要求14所述的非临时性的计算机可读介质,其中使所述数据处理器确定所述事件是否至少部分地匹配于所述参考基线的指令包括使数据处理器进行以下操作的指令: 基于与所接收事件相关联的用户标识符,在多个参考基线中识别所述用户特定的参考基线; 在具有与所接收事件的时间位置相同的时间位置的参考基线的序列中选择事件; 把所接收事件的属性与所述参考基线中的事件的相同属性相比较,其中,所接收事件的属性为事件类型。
【文档编号】H04L12/26GK103765820SQ201180073352
【公开日】2014年4月30日 申请日期:2011年10月20日 优先权日:2011年9月9日
【发明者】A.辛拉, R.布洛克 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1