网络安全分析系统的制作方法

文档序号:13627508阅读:160来源:国知局
网络安全分析系统的制作方法

优先权声明

本申请要求于2016年7月29日提交的名称为“networksecurityanalysissystem”的案卷编号为15718-84的美国临时申请序列号62/368,650的优先权。本申请还要求于2017年3月13日提交的名称为“networksecurityanalysissystem”的案卷编号为15718-178的美国申请序列号15/457,340的优先权。

本申请涉及安全系统,包括用于计算机网络的安全系统。本申请还涉及安全系统中的威胁分析、标识、审查和解决。



背景技术:

计算机系统可用的处理能力、存储器容量、可用磁盘空间以及其他资源近年来呈指数级增长。计算机系统的因特网络几乎部署在世界各地几乎每个可想到的应用中,并且执行从平凡到任务至关重要的各种各样的任务。这些系统的安全性的改善将加强对这些系统的保护,使其不会受到损害,不论损害是有意的还是无意的。

附图说明

图1示出了与提交网络数据用于分析的企业位置通信的网络安全分析系统;

图2示出了与企业位置通信的网络安全分析系统的另一视图;

图3示出了网络安全分析系统的示例实现;

图4示出了系统可以实现的滑动窗口机器学习的示例;

图5至图15示出了警报和分析图形用户界面的示例;以及

图16示出了系统如何使用加权因子来计算得分差异的示例。

具体实施方式

网络安全分析系统(“系统”)实现了高速和高数据量分析框架,该框架摄取和分析各种网络数据,诸如netflow数据、dns数据、以及安全信息和事件管理(siem)数据。系统检测、分类和报告异常活动。系统实现自然语言处理(nlp)技术,该技术检查网络内容和时间序列分析以建立和维护基线(例如,“正常”或标称)网络状态模型。系统对网络活动的多维视角进行其分析。

图1至图3提供了用于系统中的技术解决方案的以下讨论的示例上下文。也就是说,图1至图3是很多可能的不同的实现和实现上下文中的具体示例。在这方面,技术解决方案在其应用方面不限于下面讨论的任何附图中所示的架构和系统,而是适用于很多其他系统实现、架构、用户界面和连接性。

图1示出了通过网络108连接的地理分布式企业系统102、104和106的示例100。网络108可以包括通过例如任何预定的和可能的动态因特网协议(ip)地址范围定义的私有网络和公共网络。企业系统102-106包括托管和执行任何数目的任何类型的应用的单个物理和虚拟机。这些机器通常通过特定企业的企业网络被连接在一起。当企业涉及网络安全性时,企业可以订阅并且接收由网络安全分析系统110提供的网络安全分析。在其他实现中,网络安全分析系统110在企业本身内实现,而不是被实现作为外部服务。

系统110对企业执行复杂的技术安全分析。作为概述,系统110包括实现摄取电路112、流分析引擎114和批量分析引擎116的系统电路。系统电路还创建、训练和维护基线网络模型118。基线网络模型118是所选择的企业网络的有目的地构建的特征,并且表示在所选择的企业网络上设置的标称或“正常”活动。例如,基线网络模型可以由系统110使用来为规定的一组输入条件生成投影网络活动。系统110随着时间更新基线网络模型,以确保它们演进并且继续与企业网络的标称活动简档相匹配。例如,标称活动简档可以表示通过随着时间监测网络活动而确定的经验生成的活动简档。因此,基线网络模型118提供参考点,系统110可以对照该参考点来比较正在进行的网络活动以确定企业内的网络异常。

系统电路还包括界面生成电路120。界面生成电路120渲染系统界面并且将其递送给任何端点,诸如网络门户、智能电话应用、或专有企业审查和控制系统。系统界面的示例包括报告图形用户界面(gui)122、警报gui124和分析gui126的网络度量。系统110可以以各种各样的方式来渲染和递送系统界面。作为一个示例,系统界面可以通过将网络(例如,web浏览器)、移动或其他类型的界面130传送到连接的计算机或智能手机客户端的应用服务器128而可用。作为另一示例,系统界面可以通过企业内的安全位置的仪表板界面系统132而可用,该仪表板界面系统渲染安全仪表板,包括度量、警报、分析界面或其他界面元件。

图2示出了企业系统102-106和系统110的另一视图200。在该示例中,企业系统通过数据界面204向系统110递送网络数据202,例如通过安全套接层(ssl),经由虚拟专用网络(vpn)、http,或者通过其他连接。网络数据202可以包括在企业网络上表征或报告的各种各样的数据。网络数据202的几个示例包括netflow数据(例如,分组和连接数据)、事件日志、系统日志、应用日志、数据库日志、威胁软件数据、操作智能、机器数据(包括网络客户和用户的活动和行为的记录)、以及交易、应用程、服务器、网络和网络上的移动设备的活动和行为记录。作为附加示例,网络数据202可以包括关于机器配置、web访问日志、操作系统事件、消息队列、改变事件、诊断命令输出、事务记录(诸如,呼叫详细记录)、和传感器数据的数据。很多网络数据202以符合自然语言语义的文本形式来表达。如将在下面更详细地描述的,系统110对网络数据202执行nlp处理技术以从网络数据202导出网络安全洞察。

在系统110内,摄取电路112接受来自企业系统的连接,并且接收网络数据202用于分析。作为一个示例,摄取电路112可以包括通信界面206,例如以太网端口或wifi界面。摄取电路112包括被适配用于与企业系统进行通信的接收器,诸如ssl接收器208和vpn接收器210。流分析引擎114可以例如实现spark流处理和开放网络洞察(oni)流处理。批量分析引擎116可以实现例如运行基于spark的潜在dirichlet分配(lda)处理的cloudera(tm)批量分析平台,用于分析网络数据202。系统110还可以实现数据格式化、搜索、分析和可视化处理器212,诸如elasticsearch(tm)处理器。

图3示出了系统110的示例实现300。系统架构可以广泛地变化,并且可以基于例如用于卷数据工作负载的实时分析和快速处理的intelxeon处理器e7-8800/4800v3产品平台。示例实现300包括通信界面302、系统电路304和输入/输出(i/o)接口306。示例实现300还包括显示电路308,显示电路308在本地生成机器界面310或用于远程显示,例如在本地或远程机器上运行的网络浏览器中。机器界面310和i/o接口306可以包括gui、触敏显示器、语音或面部识别输入、按钮、开关、扬声器和其他用户界面元件。

通信界面302可以包括无线传输器和接收器(“收发器”)312、和由收发器312的传输和接收电路使用的任何天线31。收发器312和天线314可以支持wifi网络通信,例如,在任何版本的ieee802.11下,例如802.11n或802.11ac。通信界面302还可以包括物理收发器316。物理收发器316提供用于各种通信协议中的任一种的物理层界面,诸如任何类型的以太网、电缆数据服务接口规范(docsis)、数字用户线(dsl)、同步光网络(sonet)、或其他协议。

系统电路304可以包括硬件、软件、固件或其他电路的任何组合。系统电路304可以例如利用一个或多个片上系统(soc)、专用集成电路(asic)、微处理器、分立模拟和数字电路、以及其他电路来实现。系统电路304是系统110中任何期望的功能的实现的部分。仅作为一个示例,系统电路304可以包括一个或多个指令处理器318和存储器320。存储器320存储例如控制指令322和操作系统324。处理器318执行控制指令322和操作系统324以执行系统110的任何期望的功能。因此,控制指令322可以包括批量和流分析指令334、模型开发指令336、以及异常检测、警告和报告指令338。控制参数326提供并且规定控制指令322、操作系统324和系统110的其他功能的配置和操作选项。

在一个实现中,系统110实现elasticsearch(tm)、logstash(tm)和kibana(tm)软件栈。系统110执行logstash以从多个源(例如,依赖于系统110来实现网络异常检测服务的企业系统)摄取和检索网络数据202。摄取过程从客户端侧开始,在客户端侧,例如logstash的实例执行以记录事件数据并且经由ssl将其安全地传输到系统110的摄取电路112中的logstash实例(例如,在分级区域中)。系统110可以将网络数据202转换成特定的文件格式,诸如公共事件格式(cef)或逗号分隔值(csv)格式。系统110还可以通过执行操作分析过程来使用附加上下文增强网络数据202。一旦系统110增强了网络数据,系统110将网络数据发送到潜在的多个目的地。示例目的地包括流分析引擎114、批量分析引擎116、数据格式化、搜索、分析和可视化处理器212、数据库340、和用于数据归档的云存储装置。

系统110可以实现例如使用数据格式化、搜索、分析和可视化处理器212执行的警报处理逻辑354。警报处理逻辑354可以实时地操作并且按照预定义的警报规则356来执行。注意,系统110可以通过采用来自预定义的用例库的规则或以其他方式来建立警报规则356。当规则触发时,系统110触发警报并且记录警报。警报规则356可以导致系统110中的任何部件(包括批量分析引擎116和流分析引擎114)之间的数据交换。例如,批量分析引擎116可以接收原始警报并且返回运行于警报的分析结果警报,并且任何数据和结果可能存在于由可视化处理器生成的任何报告gui中。

gui生成电路120可以实现各种可视化处理器,以生成用于网络调查、异常报告和异常解析的任何期望的数据可视化。作为一个示例,gui生成电路120在elastic(tm)堆栈内实现kibana(tm)可视化处理器。在这方面,作为示例,gui生成电路120组成威胁可视化界面356,威胁可视化界面356可以包括语境化仪表板和搜索界面。威胁可视化界面356经由webui或其他机器界面来在操作者系统358上渲染和呈现用例度量和其他威胁信息。威胁可视化界面356被精心地设计以减少操作者的认知负担并且促进流可搜索性、异常理解和异常解析。仅作为几个示例,可视化处理器可以包括django(tm)web框架、angular(tm)结构框架和apache(tm)可视化引擎。

系统110可以包括数据库340中的数据库控制系统和数据库表结构。卷存储设备存储用于控制指令322的数据库表结构以例如通过数据库控制系统来访问从而执行在控制指令322中实现的功能。

在图3所示的示例中,数据库340存储提供标称网络行为的演进定义的任何数目的基线模型342。数据库340将网络数据202存储在事件数据库344中。为了支持nlp处理,数据库340在语料库数据库352中维持网络表征文档的语料库。从语料库,nlp处理标识感兴趣的单词(存储在例如数据库348中)和话题(存储在例如话题数据库350中)。这些单词和话题可以出现在作为网络数据202的部分而被接收的任何文档中,其中文档由文档数据库346定义并且存储在文档数据库346中。网络表征文档的一个示例是由所选择的网络标识符定义的网络事件的集合。例如,文档可以是由源ip地址和目的地ip地址标识的网络事件的集合。这些地址表征例如被接收作为netflow、jflow、s-flow、netstream、cflow或rflow记录和数据报的网络数据202中存在的事件。因此,各种示例实现可以通过将定义改变为更加紧密地匹配或不太偏离存储在网络文档的语料库内的网络数据的方式来演进标称网络行为的定义。

数据库340、控制指令322、控制参数326和机器界面生成电路308改进了底层计算机硬件本身的功能。也就是说,这些特征(在本文中描述的特征中)是底层计算机系统运行的方式进行的具体改进。根据动态调节网络的标称模型,这些改进有助于跨越各种企业网络实现网络分析和异常检测的更有效、准确、一致和精确的执行。

关于基线模型118,图4示出了系统110可以实现的滑动窗口机器学习的示例。如前所述,摄取电路112从企业系统102-106接收网络数据202。系统110适应表征标称网络操作的语料库的动态特性。异常检测的一个巨大的技术难题如下:什么行为是标称网络行为往往在不断地演进和变化。定义正常行为的网络会话和网络活动的模式在某些有时冗长的可变时间段内延伸。响应于这些技术挑战,系统110开发出动态地适应在基线模型118中表示的标称行为的定义,以提供“正常”的更准确和最新的基线,系统110可以对照其来更准确地标识异常。

如图4所示,系统110通过执行机器学习处理器402来解决这个技术问题,机器学习处理器402分析网络活动的交叠的移动窗口412,作为导致基线模型118的分析框架的部分。正常的网络活动随着时间的变化反映在词汇表的lda话题分布的变化中。这些变化反映在衡量模型中的每个文档符合该周期的模型的程度的得分。得分表示可以被分解为循环平稳周期(例如,多个交错的快照)的时间序列。当时间序列没有明确地定义的频率属性时,系统110可以执行自相关函数以通过发布候选周期作为函数的滞后来估计周期。系统110动态地调节感兴趣的周期和交叠、以及被标识和用于标识异常值的基线文档。这些异常值反映内容异常。处理降低了问题空间的维度,并且该降低的维度的视角是系统110在被提供给操作者的gui中渲染的几个之一。

出于说明的目的,图4中的窗口为24小时宽,每次迭代的窗口偏移量为两个小时,并且窗口(n)和窗口(n+1)之间存在22小时的交叠。在该示例中,系统110每两小时产生网络行为的新的基线模型410。每个模型产生一组文档得分,例如整体得分,其反映文档对该模型的适合性。如上所述,文档可以是以ip源地址和目的地地址为特征的一组网络数据记录,例如netflow记录。

稳定性可以通过关于得分的移动的交叠的窗口来定义。例如,系统110可以从来自模型(m)到(n)(例如,1到10)的得分来创建向量,并且从来自模型(m+1)到(n+1)(例如,2到11)的得分来创建第二向量,然后是3到11,等等。系统110使用所选择的分析技术(诸如,余弦相似度)来比较这些向量。因此,文档得分随着时间的变化(例如,模型(m)到模型(m+1))指示文档相对于动态语料库的稳定性。系统110使用得分(例如,稳定性度量)来定义正常网络状态的基于内容的视角。例如,具有很小变化的高得分可以指示标称操作,而具有与模型的低拟合的稳定性的较大变化可以指示潜在的异常。

注意,控制参数326可以定义窗口大小和偏移量、窗口数、以及lda处理器404在聚合之前生成模型的小时数或天数。对于任何给定企业的任何给定网络,窗口大小和偏移量、窗口数、小时数/天数和其他分析参数可能会有很大的不同,并且合适的参数可以凭经验来确定。lda处理器404响应于每个窗口的网络数据来生成加窗网络模型406。例如,对于240小时的10天周期,例如,2小时的滑动窗口将导致108个独特的加窗网络模型406。响应于稳定性和文档得分,聚合处理器408将多个加窗网络模型406组合到一起以形成新的基线模型410,其表示什么是任何给定网络的标称网络活动的正在进行的定义。

以下是聚合的具体示例。继续上述10天周期、和2小时的滑动窗口,每个ip地址将有108个得分。当移动窗口412滑动时,每两个小时生成一组新的得分。聚合处理器408例如以以下方式来组合加窗网络模型406:在感兴趣的周期内定义各个ip得分和稳定性测量的分布。然后使用累积分布函数(cdf)标识展示出高度拟合度和稳定性的那些ip。

lda处理器404针对定义的词汇表部件执行其处理,包括控制什么构成文档的文档定义。例如,对于netflow数据,lda处理器404可以选择源和目的地ip地址作为标识符。如上所述,文档然后变成由所选择的标识符定义的事件的集合。控制参数326可以定义构成文档的唯一网络事件的数目,事件具有预定义的含义,诸如在源ip地址与目的地ip地址之间进行或尝试的连接。

lda处理器404还建立单词定义。为了将lda应用于网络分析,lda处理器404定义有含义的单词。再次使用netflow数据作为示例,lda处理器404可以选择端口、分组大小、分组数和字节数作为单词。可能使用的单词的其他示例包括连接开始时间和连接持续时间。在一个具体实现中,单词的值是:端口、连接开始时间、分组数和字节数。

系统110还分析网络数据中存在的预定义的话题。什么单词构成话题可以基于例如网络数据的初始分析来提前决定,并且话题的数目可以被限制为例如20个话题的所选择的集合。因此,在一个实现中,系统使用固定数目的话题。在lda中,话题不是预定义的。相反,话题经由lda来分配,并且假设分布具有dirichlet参数化。话题没有被强烈地定义,但是可以被分类。例如,在lda运行之后,话题中最可能的单词可能表明该话题可以被归类为某种形式的僵尸网络活动。更具体地,系统110考虑跨词(wt)和跨文档(dt)的话题分布,以在任何时间点定义lda模型。wt是单词值定义和单词频率的函数,单词频率本身是单词值定义、文档值定义和文档频率的函数。文档频率是定义的事件如何被收集(文档值定义)的函数。wt可以被表达为单词和文档值定义的函数。应用于dt的相同的逻辑产生相同的结果。这些功能依赖性证明了词汇表在准确地测量在任何给定时间点定义基线模型410的文档之间的差异时的重要性。

对于任何给定的文档值定义,存在具有不同定义值的文档将具有相同级别的活动的确切的概率。在上面的示例中,源和目的地目标ip地址都被包括在文档值定义中。这些单词以及因此它们的价值定义区分这些文档。单词值词汇表的相对大小可能会有很大差异,因为值本身描述了在安全性分析方面有含义的语料库。在这方面,仅作为一个示例,系统110能够确定在“正常”连接中什么目的地端口与特定数目的分组和字节组合是常见的、以及什么组合是异常的。

关于上述示例单词值,连接开始时间、分组数和字节数是数字的,并且可以具有各种值。这些值的微小差异往往对单词值定义的陈述角色的影响很小,即区分具有相同活动的文档。作为其分析的部分,系统110然后可以对这些值进行分组,分组参数基于经验数据的实际分布。分组分析使得系统110能够检测指向最不符合模型的文档的异常值。系统110可以调节分组大小以提供文件之间的任何期望水平的区分。端口值也是数字的,并且分析捕获(例如,基于经验审查)期望的和不期望的源和目的地端口组合。

数值分组是系统110为每个单词赋予唯一含义所需的一个步骤。含义是用语料库给出的,并且因此所讨论的数字的唯一值的分布驱动分组。分组的数目可以被固定以控制词汇的大小。如果发生分组的溢出,则系统110将剩余的值重新分配到剩余的分组中。

lda处理器404被实现为nlp工具。lda处理器404可以在语料库中的大小相似的文档上操作,例如单词计数。lda处理器404根据跨单词和文档的话题分布来描述语料库中包含的概念。概念可以表示具有含义的单词,并且因此具有很少或没有含义的单词(诸如文章和停止词)可以被排除,而不损害模型的有效性。

如上所述,文档的一个源是netflow元数据。netflow元数据是一种形式的整体网络行为的抽象,并且词汇表中的所有创建的单词都有含义。此外,在任何收集周期期间,文档大小可以并且确实显著地变化,例如从1个单词到数百万个单词。lda处理器404中的评分逻辑考虑到文档大小的变化及其对标识最不适合所创建的话题模型的ip地址的影响。虽然低的得分通常表示低的单词计数,但是会出现相对较低的得分来自相对较高单词计数的情况。

lda是一种被设计用于查看文档的语料库的nlp工具,它期望文档的语料库在单词数目方面大致相同。然而,系统110中的技术解决方案的部分包括处理具有各种单词大小的文档,例如从一个单词到数百万个单词,而不是忽略具有有助于定义什么是正常网络业务的不同大小的文档。在这方面,系统110考虑不同大小的文档,但是对原始文档得分应用补偿因子或加权因子以考虑大小的变化。

转到图16,该图示出了系统110如何处理不同大小的文档的补偿示例1600。在该示例中,样本是具有相同的特定的单词计数的一组文档,并且对于具有其他单词计数的文档执行类似的分析以对跨不同大小的文档的得分进行加权。模型开发逻辑336已经执行了以对数正态标度生成原始得分的直方图1602(实线)的分析。系统110检测扩展尾部1604的存在,扩展尾部1604即其中具有相同单词计数的文档具有非常低的得分(例如,低于预定的得分阈值)的区域。

分析还包括相应的概率分析1606。例如(在该示例中),得分将低于在分组6中所包含的得分的概率大约为0.005。系统110使用在概率分析1606中确定的概率来加重原始得分。概率越低,系统110应用于原始得分以生成最终得分的加权系数越大。加权有效地将最终得分降低到更有可能为异常的范围。

系统110可以实现第二自然语言处理技术,诸如主分量分析(pca),例如在批量分析引擎116的流水线中。例如,流水线在cef中摄取数据。系统110执行pca以降低cef格式化数据的维度,从而减少大量的信息,提取最有用的数据分量,并且减少认知负荷以便于分析。在一个实现中,每个维度对应于在cef格式化数据中映射到名称的字段。例如,源ip可以定义每个事件id是与源ip的附加信息相对应的维度的名称。例如,当给定源ip存在三个事件id时,源ip将是三维空间中的数据点。通过采用顶部的“k”个主分量(例如,前两个)并且使用这些分量作为新的坐标轴来确定常见的趋势。然后,系统110可以在这些轴上绘制这些数据点。一旦绘制了每个点,则绘图可以揭示簇并且强调异常值。系统110可以将异常值标识为异常的源ip地址,并且将源ip地址发送到其他系统部件(诸如,数据格式化、搜索、分析和可视化处理器212)用于进一步分析和增强。

图5至图15示出了警报和分析图形用户界面500-1500的示例。在任何给定的网络中,可能存在极大的设备集合、在网络上发生的大量的数据业务、以及随着时间不断演进的业务模式。下面描述的gui通过实现结构和功能来解决与现有的gui的技术问题,包括渲染直接有助于更好地理解网络拓扑的设备和威胁的视图,其示出了通过网络通信的设备,并且指示通信是否可能是异常的。特别地,下面描述的gui提高了在进行以下操作时的速度、准确度和可用性:标识与网络设备相关的潜在威胁,对潜在的威胁进行分类,以及在存在潜在威胁的情况下响应于潜在威胁来做出关于要采取什么措施的决定。

系统110不限于用于渲染gui的一种特定的方式。在这方面,图5-9示出了渲染gui的一种方法,而图10至图15示出了第二方法。在第二方法中,如将在下面更详细地描述的,gui包括网络聚焦的多环视图。

系统110提供了整体企业网络活动的综合视图。系统110渲染的界面不仅突出显示网络活动,而且突出显示与网络活动相关联的企业处理。这些界面提供了一个通用的平台,用于可视化地集成由多个传感器生成的警报和被集成到系统110中的异常检测机制。系统网络流、日志和端点分析提供了分层防御能力,该能力检测和关联恶意活动以产生威胁行为的整体表示。这些界面使得这些相关事件能够在企业业务处理和网络结构的背景下被理解。这反过来又为迅速地评估新出现的威胁的性质并且迅速地开发减少对正在进行的企业操作的影响的补救策略提供了基础。

换言之,网络安全分析系统100通过实现网络数据的多视角分析来执行具有低误报率的异常检测。分析系统采用一种新的用于使用例如话题建模和时间序列算法来定义网络基线的方法。系统110实现自然语言处理技术以检查网络内容和时间序列数据,从而建立和维护基线网络状态模型的定义,新的活动与其相比较以标识异常。

在图5中,示例界面500呈现由ip地址167.108.124.197给出的节点的警报。警报502是代表性的。在警报502中,数据流指示符504规定引起警报的网络数据源,诸如dns数据、netflow数据、系统日志数据、或其他网络数据。处理引擎标识符506指示哪个分析引擎标识异常,例如pca处理引擎、lda引擎或nlp引擎。细节窗格508报告有关异常的具体细节,包括日期和时间、端口号、通信协议、和严重性得分。

图6示出了用于警报列表的示例界面600,其可以在多个ip上聚合警报(例如,警报602)用于稍后的审查和考虑。警报在细节窗格604中提供附加信息,例如关于图5中给出的示例。警报602包括例如目的地ip地址、目的地端口和网络数据类型(例如,netflow或dns数据)。警报602还包括解释元素606和历史元素608,其中任一个可以被扩展和折叠以示出或隐藏关于警报的附加细节。

图7至图9示出了网络视图界面700-900。gui生成电路120可以响应于例如在网络数据202内在预定义的时间窗口(例如,最后24小时)内找到的ip地址来创建网络视图界面700-900。在图7中,例如,界面700包括外部部分702,外部部分702显示在企业网络外部的ip的gui节点元素。在图7中,界面700将这些ip布置成循环gui节点元素的环形布置,包括节点704、706、708、710和712,作为几个示例。这些外部节点可以表示不是所分析的企业网络的部分或者在所分析的企业网络内被控制的任何设备或端点。

界面700还包括内部部分714。内部部分714显示在企业网络内部的ip的gui节点元素。在图7中,界面700将这些ip分配在由环形形状定义的内部空间中,包括节点716、718和720,作为几个示例。界面700对环722上的相关内部节点进行几何分组。相关节点可以是例如数据库或电子邮件服务器的集合、或者一组网络打印机、或者满足任何预定义的关系准则的其他资源。

界面700包括节点之间的连接路径。连接路径可以对过去节点如何通信在一起进行可视化。例如,连接路径724示出了在外部节点704-712与内部节点716之间存在先前的通信事件。操作者可以与界面700交互以缩放、三维旋转、并且水平和垂直地滚动以关注界面700的任何给定区域。操作者可以选择要审查的节点,或者界面700可以自动地突出显示涉及异常事件的节点。在图7中,界面700突出显示与内部节点720的审查相关的通过网络的包括路径分段726的特定路径。

图8示出了过滤器界面802。过滤器界面802关于任何可用数据对节点进行过滤,诸如ip地址、端口、服务等,以帮助操作者找到感兴趣的特定端口或ip地址。gui生成电路120响应地更新界面以显示通过或匹配过滤器的ip以及相关路径和警报(例如,ip130.181.182.34的警报列表804)、以及通过被选择用于审查的节点或警报所牵涉的网络的路径。在图8中,操作者已经选择节点720用于审查,并且界面800利用警报列表804以及关于该节点的附加细节来进行响应。

如图9所示,界面900可以利用更详细的警报信息902来进行响应,包括数据类型、分析类型、异常得分、说明、历史和其他信息。gui生成电路120还可以创建警报的全屏列表用于审查。

图10-15示出了不同的可视化方法。图10示出了可视化1000,其包括表示企业网络的网络图表1002。例如,网络图表1002可以通过显示网络数据的可视化(例如,数值图、状态指示符或其他可视化)来表示企业网络。警报细节面板1004包括例如处于警报状态的节点的网络节点细节。过滤器面板1005呈现多个过滤选项,例如按日历日期、严重性得分、ip地址或警报类型。系统110可以响应于来自先前时间间隔的网络数据202的记录在预先确定的时间或以预先确定的间隔来审查网络图表1002,例如,每天一次,当需要时,当检测到新的异常时,或在其他时间。系统110交叠网络图表1002上的警报以帮助操作者查明潜在的网络异常。

在图10的示例中,网络图表1002不显示网络物理拓扑,网络图表1002上的图形部件的接近度也不表示物理连接性或位置。相反,网络图表1002通过显示连接到路由器的节点以及从内部节点到外部节点的路径来示出面向安全性的视图。更详细地,图10中的网络图表1002显示内部节点的最外环1006、内部路由器的中间环1008、外部节点的最内环1010。

内部节点是位于企业的私有ip空间中的那些端点,例如桌面、笔记本计算机、智能电话、服务器和其他设备。也就是说,内部节点是由企业内部地拥有和控制的端点、企业认为在其网络内部的端点。布置在中间环1008上的内部路由器也是在企业的控制之下的网络设备。外部节点是在企业网络外部的那些端点。仅作为几个示例,外部节点包括因特网连接的计算机、智能手机和服务器。

在一个实现中,端点组中布置在最外环1006上的端点连接到相同的路由器。以这种方式,网络图表1002描绘了关于最外环1006中的每个端点的子网视图,其中端点被收集到端点组中。在端点组中可以存在任何数目的端点,并且端点组的成员资格可以由任何预定的网络特性来确定,例如端点到公共的企业路由器的连接。图10示出了其中端点组1012包括连接到内部路由器1014的大量端点(包括端点1050、1052和1054)的示例。在该示例中,端点簇是泪珠状的,以帮助强调端点组中的大量端点。

图11示出了网络图表1002的可视化1100,其中应用可变缩放以示出端点组1102中的细节。特别地,由系统110支持的可变缩放揭示出端点组包括单独的连接线,其中每个连接线的端点(例如,端点1103)表示特定设备。图11中的图例1104还区分可视化1100中的不同类型的线。对于任何线型的区别特征是可预先配置的,以包括任何颜色、形状、厚度、图案、动画或其他特征。线样式1106是示出内部到内部连接的升高线,其涉及处于警报状态的子网内的单个端点,并且系统110建议审查异常活动实际上是否存在。线样式1106从而指示系统110已经根据涉及设备的ip地址的网络数据生成警报。内部到内部线样式有助于标识在网络内部移动的异常业务,例如在企业端点之间传播的病毒。

线样式1108指示涉及处于警报状态的子网内的单个端点的内部到外部连接。由于警报涉及外部连接,所以gui使用线样式1108来将注意力引导到可能更严重的警报。内部到外部线样式有助于标识来自网络外部的异常业务,例如对内部网络的外部攻击。

选择端点使得系统110能够生成与网络图表1002相邻的警报细节面板1004。警报面板1004包括关于警报节点的特定信息。在图10的示例中,警报面板1004包括以下详细字段:设备ip地址1016、警报日期1018、引起警报的网络数据类型1020(例如,dns或netflow数据)、警报分析类型1022、设备端口号1024、源ip地址和端口1026、以及通信协议1028。

图12至图14突出显示gui上的系统控制的另一特征。特别地,图12示出了系统110接受并且响应于gui上的滚动、俯仰和偏转旋转输入。图12提供网络图表1002的旋转1200的一个特定示例。图12突出显示系统110生成网络图表1002作为三维实体生成。三维特性有助于准确地描绘端点之间的连接性和数据流,包括从最外环1006上的内部节点到中间环1008上、以及到内环1010的路由器,以突出显示如何、何地以及何时网络业务进出企业网络。作为一个特定示例,图12中施加的三维旋转示出了内部节点1202具有关于通过路由器1204的网络业务的警报状态。图12还示出了正在发生与外部端点1206的相关联的网络业务。

图13提供了旋转控制的另一示例1300。在图13中,系统110响应于操作者旋转输入以提供某些外部节点(例如,外部节点1302和1304)的更好的视图。如线风格所示,这些节点涉及潜在的异常网络业务。此外,系统110已经响应于操作者对该外部节点的选择渲染了与外部节点1302相邻的特定警报显示1306。警报面板1306可以提供任何上述警报细节,或者提供到上述警报细节的超链接,以帮助操作者了解潜在的异常网络业务是否真的有问题。图14提供了旋转控制的附加示例1400,以提供外部节点1402和1404以及在网络图表1002中显示的警报面板1406的增强视图。

图15示出了系统110还可以在二维视图(例如,警报列表视图1500)中提供警报细节。警报列表视图1500可以是以文本为中心的视图,其以容易查看的格式在一个位置提供关于很多警报的信息。在这方面,警报列表视图1500包括在网络图表1002上显示的警报信息的文本表示。

警报列表视图1500可以传达各种信息字段。在图15所示的示例中,警报列表视图1500包括关于可排序列中的每个警报和相关联的端点的细节。信息字段的示例包括日期1502、源ip地址1504、源端口1506、目的地ip地址1508和目的地端口1510。附加示例包括通信协议1512、以及注释和威胁智能指示符1514。信息字段还包括标识警报和警报状态1518的检测技术1516,例如,新的、关闭无动作、已采取的关闭动作、等待审查等。

此外,警报列表视图1500包括得分严重性界面1520。系统110接受通过评分严重性界面1520输入的威胁严重性得分。这为威胁审查者提供关于威胁严重性的反馈提供了一种有效的机制。在该示例中,得分严重性界面1520接受与普通漏洞评分系统(cvss)框架一致地输入的基本、时间和环境得分,包括提供度量值的文本表示的向量串。

系统110实现网络数据的技术分析以递送降低认知负荷并且更准确地确定网络异常的报告界面。作为几个示例,系统110确定给定的原始网络数据馈送、连接的起源、所使用的协议、连接有的时长、连接是交互式的还是单向的(以及在哪个方向上)。系统110添加dns信息以标识哪些网站正在与企业网络进行交互、以及哪些网站正在发送数据以及哪些网站正在接收数据。来自其他数据源的端点数据提供附加观点。系统110内部和交叉引用多个透视图,以使得操作者能够更好地积极地寻找和终止在企业网络内部的恶意动作。系统110提供历史数据和实时活动的清晰图片,并且然后作为可视化的结果,提供认知地预测或预期攻击者的下一步动作的能力。

上述方法、设备、处理、电路和逻辑可以以很多不同的方式和用硬件和软件的很多不同的组合来实现。例如,所有或部分实现可以是包括指令处理器的电路,指令处理器诸如中央处理单元(cpu)、微控制器、或微处理器;或专用集成电路(asic)、可编程逻辑器件(pld)、或现场可编程门阵列(fpga);或包括离散逻辑或其他电路部件的电路,包括模拟电路部件、数字电路部件或两者;或其任何组合。作为示例,电路可以包括分立的互连硬件部件,或者可以在单个集成电路管芯上被组合,分布在多个集成电路管芯之间,或者在公共封装件中的多个集成电路管芯的多芯片模块(mcm)中实现。

因此,电路可以存储或访问指令用于执行,或者可以单独用硬件来实现其功能。指令可以存储在除了瞬态信号之外的有形存储介质中,诸如闪速存储器、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom)等;或存储在磁盘或光盘上,诸如光盘只读存储器(cdrom)、硬盘驱动器(hdd)或其他磁盘或光盘;或在另一机器可读介质中或上。诸如计算机程序产品等产品可以包括存储在介质中或中的指令,并且指令在由设备中的电路执行时可以引起设备实现以上描述或在附图中图示的任何处理。

实现可以是分布式的。例如,电路可以包括多个不同的系统部件,诸如多个处理器和存储器,并且可以跨越多个分布式处理系统。参数、数据库和其他数据结构可以单独地存储和管理,可以并入到单个存储器或数据库中,可以以很多不同的方式在逻辑上和物理上组织,并且可以以很多不同的方式来实现。示例实现包括链表、程序变量、哈希表、数组、记录(例如,数据库记录)、对象和隐式存储机制。指令可以形成单个程序的部分(例如,子例程或其他代码段),可以形成多个单独的程序,可以分布在多个存储器和处理器之间,并且可以以很多不同的方式来实现。示例实现包括独立程序、并且作为库的部分,诸如共享库,如动态链接库(dll)。例如,库可以包含共享数据和一个或多个共享程序,其包括在由电路执行时执行以上描述或附图中图示的任何处理的指令。

已经具体地描述了各种事项。然而,很多其他实现也是可能的。

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