[go: up one dir, main page]

CN107683586A - 用于异常检测中的计算基于小区密度的稀有度的方法和装置 - Google Patents

用于异常检测中的计算基于小区密度的稀有度的方法和装置 Download PDF

Info

Publication number
CN107683586A
CN107683586A CN201680032329.3A CN201680032329A CN107683586A CN 107683586 A CN107683586 A CN 107683586A CN 201680032329 A CN201680032329 A CN 201680032329A CN 107683586 A CN107683586 A CN 107683586A
Authority
CN
China
Prior art keywords
network
bins
data
density
multivariate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201680032329.3A
Other languages
English (en)
Other versions
CN107683586B (zh
Inventor
纳温德拉·亚达夫
艾伦·沙伊布
拉奇塔·阿卡斯迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN107683586A publication Critical patent/CN107683586A/zh
Application granted granted Critical
Publication of CN107683586B publication Critical patent/CN107683586B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

在一个实施例中,一种方法,包括:在分析设备处接收网络数据;将网络数据的特征分组为多变量箱;生成针对多变量箱中的每一个的密度;基于下述项来计算针对多变量箱中的每一个的稀有度度量:箱中获得特征的概率、和具有相等或较小密度的多变量箱中的所有其它箱的该概率;并且基于所计算的稀有度度量来标识异常。本文还公开了装置和逻辑。

Description

用于异常检测中的计算基于小区密度的稀有度的方法和装置
相关申请声明
本申请要求于2015年6月4日提交的名称为“通过网络行为的普遍视角的异常检测(ANOMALY DETECTION WITH PERVASIVE VIEW OF NETWORK BEHAVIOR)”的美国临时申请No.62/171,044的优先权(代理人案号CISCP1283+)。该临时申请的内容通过引用整体合并于此。
技术领域
本公开一般涉及通信网络,并且更具体地,涉及异常检测。
背景技术
异常检测用于标识不符合预期模式或数据的行为的项目、事件或流量。例如,异常检测系统可以学习正常的活动,并对与正常行为相背离的行为采取行动。密度估计是一种可用于异常检测的技术。
附图说明
图1示出了其中可以实现本文描述的实施例的网络的示例。
图2描绘了用于实现本文描述的实施例的网络设备的示例。
图3示出了根据一个实施例的、用于异常检测的网络行为收集和分析系统。
图4示出了根据一个实施例的图3的系统的细节。
图5是示出了根据一个实施例的、用于异常检测的过程的流程图。
图6是示出根据一个实施例的基于小区密度的稀有度计算的过程的概述的流程图。
图7示出了使用不同的箱宽度直方图的基于密度的稀有度的示例。
图8是示出了特征如何在网络数据中通常不是独立的的图。
图9是示出根据一个实施例的、用于生成时间加权分箱的特征密度的过程的流程图。
图10是示出根据一个实施例的用于计算稀疏度度量的过程的流程图。
贯穿附图的多个视图,相应的附图标记表示相应的部件。
具体实施方式
概述
在一个实施例中,一种方法通常包括:在分析设备处接收网络数据;将网络数据的特征分组为多变量箱;生成针对多变量箱中的每一个的密度;基于下述项来计算针对多变量箱中的每一个的稀有度度量:箱中获得特征的概率、以及具有相等或较小密度的多变量箱中的所有其它箱的该概率;并且基于所计算的稀有度度量来标识异常。
在另一实施例中,一种装置通常包括:用于接收网络数据的接口;以及处理器,用于:将网络数据的特征分组为多变量箱,生成针对多变量箱中的每个的密度,基于下述项来计算针对多变量箱中的每个的稀有度度量:箱中获得特征的概率、以及具有相等或更小密度的所有其它多变量箱中的该概率,并且基于所计算的稀有度度量来标识异常。
在又一实施例中,一种编码在一种或多种非暂态计算机可读介质中用于执行的逻辑,当该逻辑被执行时,可操作用来:处理网络数据;将网络数据的特征分组为多变量箱;生成针对多变量箱中的每一个的密度;基于下述项来计算针对多变量箱中的每个的稀有度度量:箱中获得特征的概率、以及具有相等或较小密度的多变量箱中的所有其它箱的该概率;并且基于所计算的稀有度度量来标识异常。
示例的实施例
以下描述被呈现以使本领域普通技术人员能够制造和使用实施例。具体实施例和应用的描述仅作为示例被提供,并且各种修改对于本领域技术人员将是显而易见的。本文描述的一般原理可以在不背离实施例的范围的情况下应用于其它应用。因此,实施例不限于所示出的那些,而是将被赋予与本文所描述的原理和特征一致的最宽范围。为清楚起见,没有详细描述涉及实施例的技术领域中已知的技术材料的细节。
异常检测的目标是标识与数据集中的其它示例不同的观察结果。密度估计是一种可用于异常检测的统计技术。在密度估计中,可以使用数据样本来生成基础概率密度的估计。直方图是可以用来估计密度的技术之一。用于异常检测的基于直方图的技术可以用于分别针对每个维度计算离群值分数,然后计算总分数。由于维度之间的复杂性和显着的多变量关系,这种方案可能不适用于高维网络元数据。核(Kernel)密度技术可用于生成连续的密度估计,其可被概念化为平滑的直方图。这种方法存在诸如复杂性、带宽和核的选择、以及过度平滑等缺点,这往往会导致尖锐过于平滑的分布。
本文描述的实施例提供基于多元直方图的异常检测的非参数方法。如下面详细描述的,可以基于多变量单元的密度排序来确定稀有度。在一个或多个实施例中,使用具有不同宽度的箱(小区)来降低在低密度(宽箱)处的噪声和高密度(窄箱)处的增益精度。箱的最优数量可能取决于数据的分布和分析的目标。
这里使用的术语“非参数”是指不基于参数化概率分布(无分布)的方法。非参数方法不依赖于属于任何特定分布的数据。例如,不是具有固定数量的参数,而是参数的数量随数据量的增加而增加。非参数方法是灵活的,因为它们支持任何形状的分布,并且不会对数据分布加以假设。在网络流量领域,由于在网络元数据中观察到的不规则和变化的分布,使用非参数方法是非常重要的。
本文使用的术语“多变量”是指取决于特征组合的小区、直方图或密度估计,而不是取决于独立的特征。多变量方法使用同时观察和分析多个结果变量。在网络流量领域,异常检测的单变量方法可能不足以标识可疑行为。由于特征之间存在复杂的多变量关系,因此单变量方法可能只能检测到具有异常特性的一小部分流。
密度估计是一种灵活而强大的异常检测方法,不需要假设或者基于距离推断含义。这对于网络元数据的领域尤为适用,因为数字分布表现出在其它领域不经常出现的独特品质。多数字网络元数据特征(例如,数据分组计数、字节大小或其它特征)可以被概念化为使用数字和定类(nominal)测量尺度两者的混合。例如,流字节大小的比例有意义(数字),但存在对应于特定的流量事件(例如建立(定类)连接的初始TCP(传输控制协议)握手)的特定字节大小值。因此,由于基于距离的方法不适用于分类类型信息,对于这种情况,密度估计是一种合适的方案。对于某些维度,特征值的频率可能比特征的值更具信息性。
网络流量异常可以以许多特征被标识在多维数据中。网络元数据特征可以是混合的,涉及分类、二进制和数字特征。许多单变量特征分布可能是不规则的,表现出尖锐的和(口袋形)稀疏。尺度可能不同,从而限制了基于距离的方法的使用。这些特征可能不是独立的,并且表现出不规则的多元关系。本文描述的实施例提供适用于具有这些特性的数据的异常检测系统。
在一个或多个实施例中,可以通过整个网络(诸如,使用多个有利的点的数据中心)收集网络数据。这使用来自每个(或几乎每个)数据分组的元数据提供了网络行为的普遍图示。在一个或多个实施例中,分析系统提供监视所有事件(或几乎所有事件)的同时提供普遍安全性的大数据分析平台。一个或多个实施例可以从每个(或几乎每个)主机、进程、和用户角度提供可视性。网络元数据可被结合到中央大数据分析平台中以供分析。由于有关网络行为的信息是从多个角度捕获的,因此可以将各种数据源关联起来,为数据分析提供强大的信息来源。
关于随时间收集并存储在中央位置的网络行为的全面和普遍的信息使得使用机器学习算法来检测可疑活动成为可能。可以使用建模正常或典型网络行为的多种方案,并且不符合该预期行为的活动可能被标记为可疑并且可能受到调查。机器学习允许基于网络行为的动态建模来标识网络流量内的异常。
现在参考附图,并且首先参考图1,示出了其中可以实现本文描述的实施例的简化网络。这些实施例在包括多个网络设备的数据通信网络的上下文中操作。网络可以包括经由任何数量的节点(该节点辅助网络内数据的传递)(例如,路由器、交换机、网关、控制器、边缘设备、接入设备、汇聚设备、核心节点、中间节点或其它网络设备)进行通信的任何数量的网络设备。节点可以通过一个或多个网络(例如,局域网(LAN)、城域网(MAN)、广域网(WAN)、虚拟专用网络(VPN)、虚拟局域网(VLAN)、无线网络,企业网络,企业网络,互联网、内联网、无线接入网络、公共交换网络或任何其它网络)进行通信。网络流量也可在主校园和远程分支或任何其它网络之间传播。
在图1的示例中,结构10包括多个脊节点12a、12b以及叶节点14a、14b、14c、14d。叶节点14a、14b、14c可以连接到一个或多个端点(主机)16a、16b、16c、16d(例如,托管虚拟机(VM)18的服务器)。叶节点14a、14b、14c、14d分别经由链路20连接到多个脊节点12a、12b。在图1所示的示例中,每个叶节点14a、14b、14c、14d连接到每个脊节点12a、12b,并被配置为路由主机16a、16b、16c、16d和其它网络元件之间的通信。
叶节点14a、14b、14c、14d和主机16a、16b、16c、16d可以经由任何数量的节点或网络进行通信。如图1的示例所示,一个或多个服务器16b、16c可以经由网络28(例如,层2(L2)网络)进行通信。在图1所示的示例中,边界叶节点14d与位于外部网络24(例如,互联网/WAN(广域网))中的边缘设备22(例如,路由器)进行通信。边界叶14d可用于将任何类型的外部网络设备、服务(例如防火墙31)或网络(例如,层3(L3)网络)连接到结构10。
脊节点12a、12b和叶节点14a、14b、14c、14d可以是包括被配置为执行转发功能的网络交换或路由元件的交换机、路由器或其它网络设备(例如,L2、L3或L2/L3设备)。叶节点14a、14b、14c、14d可以包括例如为主机16a、16b、16c、16d、虚拟机18或其它设备或外部网络(例如,网络24)提供连接性的访问端口(或非结构端口),以及为脊交换机12a、12b提供上行链路的结构端口。
例如,叶节点14a、14b、14c、14d可以作为交换元件(例如机架顶部(ToR)交换机)或任何其它网络元件来实现。叶节点14a、14b、14c、14d还可以包括行末或行中间拓扑或任何其它拓扑中的聚合交换机。叶节点14a、14b、14c、14d可以位于网络结构10的边缘,并因此表示物理网络边缘。一个或多个叶节点14a、14b、14c、14d可将端点组(EGP)连接到网络结构10、内部网络(例如,网络28)或任何外部网络(例如,网络24)。例如,EPG可以被用于将应用映射到网络。
端点16a、16b、16c、16d可以经由叶节点14a、14b、14c连接到网络结构10。在图1所示的示例中,端点16a和16d分别直接连接到叶节点14a和14c,该叶节点14a和14c可以将主机连接到网络结构10或任何其它叶节点。端点16b和16c经由L2网络28连接到叶节点14b。端点16b、16c和L2网络28可以定义LAN(局域网)。LAN可以通过位于相同的一般物理位置(例如,建筑物或校园)的专用通信链路与节点相连接。
WAN(广域网)24可以经由L3网络(未示出)连接到叶节点14d。WAN 24可以通过长距离通信链路(例如,公共载波电话线路、光路径、同步光纤网络(SONET)或同步数字体系(SDH)链路)连接地理上分散的节点。互联网是连接不同网络并提供各种网络节点之间全球通信的WAN的示例。节点可以通过根据预定的协议(例如,传输控制协议(TCP)/互联网协议(IP))交换离散的帧或数据分组来通过网络进行通信。
一个或多个端点可以在其上实例化有一个或多个虚拟交换机(未示出)用于与一个或多个虚拟机18的通信。如端点16d所示,可以在被安装在服务器上的管理程序19之上的每个物理服务器上创建和运行虚拟交换机和虚拟机18。为便于说明,仅在端点16d上示出了管理程序19,但应当理解,其上安装有虚拟机18的其它端点中的一个或多个端点也可以包括管理程序。而且,一个或多个端点可以包括虚拟交换机。虚拟机18被配置为与其它虚拟机交换通信。网络可以包括托管任意数量的虚拟机18的任何数量的物理服务器。主机还可以包括没有虚拟机的刀片/物理服务器(例如,图1中的主机16c)。
本文使用的术语“主机”或“端点”可以指物理设备(例如,服务器,端点16a、16b、16c、16d)或者虚拟元件(例如,虚拟机18)。端点可以包括任何通信设备或组件,例如计算机、服务器、管理程序、虚拟机、容器,(例如,运行在虚拟机上的)进程、交换机、路由器、网关、主机、设备,外部网络等。
一个或多个网络设备可以配置有将覆盖网络(未示出)与网络结构10连接的虚拟隧道端点(VTEP)功能。覆盖网络可以允许在物理网络基础设施上创建和分层虚拟网络。
实施例包括网络行为数据收集和分析系统,其包括分布在整个网络中的多个传感器26、收集器32和分析模块30。数据监视和收集系统可以与现有的交换硬件和软件集成,并且例如在以应用为中心的基础设施(ACI)内运行。
在某些实施例中,传感器26位于整个网络中的组件处,从而监测所有的分组。例如,传感器26可以被用于收集遍历网络(例如,东-西、南-北)的每个分组的元数据。传感器26可以安装在网络组件中,以从在网络组件处发送的和从网络组件接收的分组中获得网络流量数据,并监视网络内的所有网络流。本文使用的术语“组件”可以指网络的组件(例如,进程、模块、片、刀片、服务器、管理程序、机器、虚拟机、交换机、路由器、网关等)。
在一些实施例中,传感器26位于每个网络组件处以允许在数据传输的每一跳处的粒度分组统计和数据。在其它实施例中,传感器26可以不安装在网络的所有组件或部件中(例如,共享主机环境,在该共享主机环境中客户具有对一些虚拟机18的排他控制)。
传感器26可驻留在数据中心网络(例如,虚拟分区、管理程序、物理服务器、交换机、路由器、网关或任何其它网络设备)的节点上。在图1所示的示例中,传感器26位于服务器16c、虚拟机18、管理程序19,、叶节点14a、14b、14c、14d和防火墙31。传感器26还可以位于一个或多个脊节点12a、12b或介于网络元件之间。
网络设备(例如,端点16a、16b、16d)可以包括在设备内的各种组件(例如,虚拟机、管理程序、主机)上运行的多个传感器26,从而监视所有分组(例如,来自和去往组件的分组37a,37b)。例如,图1的示例中的网络设备16d包括驻留在管理程序19上的、以及运行在主机上的虚拟机18的传感器26。
在整个网络中的组件处的传感器26的安装允许分析去往和来自ACI内的分组的路径上的每个点的网络流量数据。该分层的传感器结构提供对发送数据的组件(即,虚拟机、管理程序、交换机)和数据被发送的时间的标识,以及在网络中每个点发送和接收的数据分组的特性。这也允许确定哪个特定过程和虚拟机18与网络流相关联。为了做出该确定,运行在与流相关联的虚拟机18上的传感器26可以分析来自虚拟机的流量以及在虚拟机上运行的所有进程;并且基于来自虚拟机的流量以及在虚拟机上运行的进程,传感器26可以提取流并且处理信息以具体确定虚拟机中的哪个进程负责该流。传感器26还可以提取用户信息从而标识哪个用户和进程与特定流相关联。在一个示例中,传感器26随后可以标记进程和用户信息并将其发送到收集器32,该收集器32为各种传感器26在虚拟机18、管理程序19以及交换机14a、14b、14c、14d中收集统计和分析数据。
如先前所述,传感器26被定位以标识在整个系统中传输的分组和网络流。例如,如果运行在主机16d上的多个VM 18中的一个从互联网24接收分组37a,则它可以经过路由器22、防火墙31、交换机14d、14c、管理程序19以及该VM。由于这些组件中的每一个包含传感器26,因此分组37a将被标识并报告给收集器32。在另一示例中,如果分组37b从在主机16d上运行的VM 18发送到在主机16a上运行的VM 18,则沿包括VM18、管理程序19、叶节点14c、叶节点14a和节点16a处的VM的数据路线所安装的传感器将从分组收集元数据。
传感器26可用于收集包括但不限于包括来自每个(或几乎每个)分组的元数据的网络信息、进程信息、用户信息、虚拟机信息、租户信息、网络拓扑信息、或基于从数据路径上被发送的每个数据分组收集的数据的其它信息。网络流量数据可以与分组、分组的集合、流量、流量组等相关联。网络流量数据可以包括例如VM ID、传感器ID、关联的进程ID、关联的进程名称、进程用户名称、传感器私钥、传感器的地理位置、环境细节等等。网络流量数据还可以还包括描述OSI(开放系统互连)模型的所有层上的通信的信息。例如,网络流量数据可以包括信号强度(如果适用)、源/目的地MAC(介质访问控制)地址、源/目的地IP(互联网协议)地址、协议、端口号、加密数据、请求过程、采样分组等等。在一个或多个实施例中,传感器26可以被配置为仅捕获代表性的分组样本。
系统还可以收集网络性能数据,该数据可以包括例如特定于由网络设备发起的文件传输的信息、交换的电子邮件、重传的文件、注册表访问、文件访问、网络故障、组件故障等。也可以收集诸如带宽、吞吐量、延迟、抖动、错误率等之类的其它数据。
由于传感器26位于整个网络中,因此使用多个有利的点(即,从网络中的多个角度)来收集数据以提供网络行为的普遍视角。从多个角度捕获网络行为信息,而不仅仅是位于数据路径中或与数据路径中的组件通信的单个传感器,允许了来自各种数据源的数据相互关联,从而为数据分析和异常检测提供有用的信息源。例如,向收集器32提供数据的多个传感器26可以提供来自各种网络视角(视角V1、视角V2、视角V3等)的信息,如图1所示。
传感器26可以包括例如(例如,运行在虚拟机、容器、虚拟交换机、管理程序、物理服务器或其它设备上的)软件,专用集成电路(ASIC)(例如,交换机的组件、网关、路由器、独立分组监视器、PCAP(数据分组捕获)模块),或其它设备。传感器26还可以在操作系统(例如,Linux、Windows)或裸机环境下操作。在一个示例中,ASIC可以用于提供10毫秒到1000毫秒(或更多或更少)的输出间隔,并且软件可以用于提供大约1秒(或更多或更少)的输出间隔。传感器26可以是轻量级的,因此对数据中心中的正常流量和计算资源影响最小。传感器26可以例如嗅探通过其主机网络接口卡(NIC)发送的分组,或者单独的进程可以被配置为将流量报告给传感器。传感器执行可以包括例如硬件、ACI/独立、软件、IP表、Windows过滤平台等。
当传感器26捕获通信时,它们可以不断地将网络流量数据发送到收集器32以进行存储。例如,传感器26可用于从流送的数据收集数据。传感器26可将其记录发送到一个或多个收集器32。在一个示例中,传感器可以被分配主要和次要收集器32。在另一示例中,传感器26可以通过发现进程来确定最佳收集器32。
在某些实施例中,传感器26可以在将网络流量数据发送到收集器32之前对其进行预处理。例如,传感器26可以移除无关或重复的数据或创建数据的摘要(例如,等待时间、数据分组、每个流发送的字节、标记的异常活动等)。收集器32可以用作系统的网络存储器,或收集器可以组织、总结和预处理数据。例如,收集器32可以将数据进行制表、对流量流进行表征、将分组进行匹配,以标识流量流和连接链路,或标记异常数据。收集器32还可以根据各个时间段合并网络流量数据。
在收集器32处收集的信息可以包括例如网络信息(例如,来自东-西和南-北的每个分组的元数据),处理信息,用户信息(例如,用户标识(ID)、用户组、用户凭证),虚拟机信息(例如,VM ID、处理能力、位置、状态),租户信息(例如,访问控制列表),网络拓扑等。收集的数据还可以包括描述分组流信息的分组流数据,或者该收集的数据可以从分组流信息中导出,分组流信息可以包括例如流量相关的所有分组所共有的五元组或其它值集合(例如,源地址、目的地址、源端口、目的端口和协议值,或者这些或其它标识符的任何组合)。收集器32可以利用可具有各种格式或模式的各种类型的数据库结构和存储器。
在一些实施例中,收集器32可以直接连接到架顶式交换机(例如,叶节点)。在其它实施例中,收集器32可以位于行末端交换机附近。在某些实施例中,叶节点14a、14b、14c、14d中的一个或多个可以各自具有关联的收集器32。例如,如果叶节点是架顶式交换机,则每个机架可以包含分配的收集器32。系统可以包括任何数量的收集器32(例如,一个或多个)。
分析设备(模块)30被配置为接收和处理由收集器32收集并由位于整个网络上的节点上的传感器26检测到的网络流量数据。分析设备30可以是例如独立的网络装备,或者被实现为可以分布到VM、VM集群、软件即服务(SaaS)或其它合适的分布模型的VM映像。分析设备30也可以位于端点或其它网络设备中的一个处,或者分布在一个或多个网络设备中。
在某些实施例中,分析设备30可以使用应用独立性模块确认网络中组件的独立性。分析设备30可以针对组件行为建立模式和规范,或解决策略使用。在一个实施例中,分析设备30还可以包括发现应用或在其上发现应用并然后运行应用依赖性算法的选择机器。
在某些实施例中,分析设备30可以在主动-备用模型中实现,以确保高可用性,其中,第一分析模块起主要作用并且第二分析模块起次要作用。如果第一分析模块发生故障,则第二分析模块可以接管控制。。
如图1所示,分析设备30包括异常检测器34。异常检测器34可以在可操作以进行以下内容的任何计算机或网络设备(例如,服务器、控制器、设备、管理站或其它处理设备或网络元件)处操作:接收网络性能数据并基于所接收的信息标识其中异常地偏离了其它特征的特征。例如,异常检测器34可以通过对于在发生安全违规之前发生的行为和事件进行监视和分析,来了解是什么导致安全违规,从而防止将来发生这样的事件。
计算机网络可能暴露于各种不同的攻击,其暴露计算机系统的脆弱性从而危害其安全。例如,在网络上传输的网络流量可能与恶意程序或设备相关联。异常检测器34可以被提供有与攻击相对应的网络状态、和与正常操作对应的网络状态的示例。随后,异常检测模块34可以分析网络流量数据以标识网络何时受到攻击。在一些示例实施例中,网络可以在可信环境内操作一段时间,使得异常检测器34可以建立基准常态。分析模块30可以包括数据库或各种组件的规范和期望。数据库可以包括来自外部来源的数据。在某些实施例中,分析设备30可以使用机器学习技术来使用异常检测器34标识对网络的安全威胁。由于恶意软件在不断发展和变化,机器学习可以被用来动态更新用于标识恶意流量模式的模型。机器学习算法用于基于对网络行为的动态建模提供网络流量内的异常的标识。
异常检测器34可用于标识与数据集中的其它示例不同的观察。例如,如果存在具有已知异常标签的示例数据的训练集合,则可以使用监督式异常检测技术。监督式异常检测技术利用已被标记为“正常”和“异常”的数据集并训练分类器。在不确定训练数据中的示例是否是异常值的情况下,可以使用无监督的异常技术。无监督的异常检测技术可以用于在通过查找看似适合数据集的其余部分的实例而假设数据集中的大多数实例是正常的情况下,来检测未标记的测试数据集中的异常。在一个或多个实施例中,无监督的机器学习技术被用来标识多维网络元数据中的网络异常。
异常检测器34可以包括基于密度的稀有度模块,其可操作以计算基于小区密度的稀有度用于异常检测。如下所述,实施例可以利用基于时间序列加权多元分箱(binned)特征密度估计的累积概率,针对网络行为的异常检测方法。权重可以取决于例如观察数据的新鲜度(观察时间)(例如基于感测、收集或接收的时间)。在一些实施例中,特征可以以基于单变量转变点的凭经验定义的箱(小区)边界来分组。可以基于具有相同或较小密度小区的累积概率,来计算每个小区的稀有度度量。这允许了根据历史上少见的少见特征组合来标记新的观察结果,因此可能是可疑的。下文将进一步描述用于网络异常检测的基于密度的稀有度计算的细节。
应当理解,图1中示出的以及上面描述的网络设备和拓扑仅仅是示例,并且本文描述的实施例可以在不超出实施例的范围的情况下,在包括不同网络拓扑或网络设备的网络中实现,或者使用不同的协议实现。例如,虽然网络结构10在本文中被图示和描述为叶脊结构,但是实施例可以基于任何网络拓扑来实现,包括任何数据中心或云网络结构。本文描述的实施例可以例如在包括三层(例如,核心、聚集和访问级别)、胖树、网格、总线、集线器和辐条等的其它拓扑中实现。根据各种架构,传感器26和收集器32可以适当地放置在整个网络中。此外,异常检测器34处的基于密度的稀有度模块可以使用直接从任何数量的传感器或经由一个或多个收集器从网络内的任何数量的位置处收集的网络数据(元数据)。因此,本文中所描述的用于确定基于小区密度的稀有度的实施例,可以用于包括任何数量或布置的数据传感器或收集器的任何网络拓扑。网络可以包括辅助数据通过网络的任何数量和类型的网络设备(例如,路由器、交换机、网关、控制器、设备)、操作为端点或主机(例如,服务器、虚拟机、客户端)的网络元件、和与任何数量的网络的通信中的任何数量的网络站或域。
此外,图1中示出的以及上面描述的拓扑结构易于扩展,并且可以容纳大量的组件以及更复杂的布置和配置。例如,网络可以包括可以是地理上分散的或位于相同的地理区域中的任何数量的结构10。因此,网络节点可以被用于任何合适的网络拓扑结构中,该网络拓扑结构可以包括互连以形成大而复杂的网络的任意数量的服务器、虚拟机、交换机、路由器、设备、控制器、网关或其它节点,该网络可以包括云或雾计算。节点可以通过采用任何合适的有线或无线连接的一个或多个接口耦接到其它节点或网络,这提供了电子通信的可行路径。
图2示出了可以用来实现本文描述的实施例的网络设备40的示例。在一个实施例中,网络设备40是可以以硬件、软件或其任何组合来实现的可编程机器。网络设备40包括一个或多个处理器42、存储器44、网络接口46和分析/基于密度的稀有性模块48(图1中所示的分析模块30、异常检测器34)。
存储器44可以是存储供处理器42执行和使用的各种应用、操作系统、模块和数据的易失性存储器或非易失性存储器。例如,一个或多个分析/异常检测/基于密度的稀有性组件(例如,模块、设备、代码、逻辑、软件、固件等)可被存储在存储器44中。设备可以包括任意数量的存储器组件。
逻辑可被编码在一个或多个有形介质中以供处理器42执行。例如,处理器42可以执行存储在诸如存储器44的计算机可读介质中的代码,以执行下面关于图5、6、9和10描述的过程。计算机可读介质可以是,例如电子(例如,RAM(随机存取存储器)、ROM(只读存储器)、EPROM(可擦除可编程只读存储器))、磁、光学(例如CD,DVD)、电磁、半导体技术或任何其它合适的介质。网络设备可以包括任何数量的处理器42。在一个示例中,计算机可读介质包括非暂态计算机可读介质。
网络接口46可以包括用于接收数据或将数据传输到其它设备的任何数量的接口(线卡、端口)。网络接口46可以包括例如用于连接到计算机或网络的以太网接口。如图1所示以及上面所描述的,接口46可以被配置为接收从遍布网络分布的多个传感器26收集的网络数据。网络接口46可以被配置为使用各种不同的通信协议传送或接收数据。接口可以包括用于通过耦接到网络的物理链路传送数据的机械、电气和信令电路。网络设备40还可以包括任何数量的输入或输出设备。
应当理解,图2中示出的以及上面描述的网络设备40仅仅是示例,并且可以使用网络设备的不同配置。例如,网络装置40可进一步包含可操作以辅助本文所描述的能力的硬件、软件、处理器、装置、组件、模块或元件的任何适合的组合。
图3示出根据一个实施例的网络行为数据收集和分析系统的示例。系统可以包括以上参照图1描述的传感器26、收集器32和分析模块(引擎)30。在图3所示的示例中,系统还包括外部数据源50、策略引擎52和呈现模块54。分析模块30通过收集器32和从外部数据源50接收来自传感器26的输入,同时还与策略引擎52进行交互,该策略引擎52可以从网络/安全策略控制器(未示出)接收输入。例如,分析模块30可以经由呈现模块54(例如,经由拉取或推送通知)向用户界面或第三方工具提供输入。
在一个实施例中,传感器26可以由配置和映像管理器55提供和维护。例如,当新的虚拟机18被实例化或当现有的VM迁移时,配置管理器55可以在VM上提供和配置新的传感器26(图1和3)。
如先前所述,传感器26可驻留在数据中心网络的节点上。一个或多个传感器26可以包括例如软件,例如运行(驻留)在虚拟分区上的软件(其可以是VM(VM传感器26a)的实例)、管理程序(管理程序传感器26b)、沙箱、容器(容器传感器26c)、虚拟交换机、物理服务器或任何在其中运行软件的其它环境。传感器26还可以包括专用集成电路(ASIC)(ASIC传感器26d)(例如,交换机、网关、路由器、独立分组监视器或包括分组捕获(PCAP)模块(PCAP传感器26e)或类似技术的其他网络设备的组件)、或独立单元(例如,连接到网络设备的监视端口的设备,或者沿数据中心的主干(链路、路径)串联连接的设备)。
传感器26可以通过高速连接将它们的记录发送到一个或多个收集器32以进行存储。在某些实施例中,一个或多个收集器32可以从外部数据源50(例如,白名单50a、IP监视列表50b、Whois数据50c或带外数据)接收数据。在一个或多个实施例中,系统可以包括收集器32和分析模块30之间的宽带宽连接。
如上所述,分析模块30包括异常检测器34,异常检测器34可以使用机器学习技术来标识对网络的安全威胁。分析模块30可以包括对应于攻击的网络状态和对应于正常操作的网络状态的示例。随后,异常检测器34可以分析网络流量数据以识别网络何时受到攻击。分析模块30可以存储数据库中的各种组件的规范和期望,其也可以合并来自外部源50的数据。随后,分析模块30可以创建关于组件如何使用策略引擎52进行交互的访问策略。还可以在系统外部建立策略,并且策略引擎52可以将它们并入到分析模块30中。如上所述,异常检测器34可以被配置用于基于小区密度的稀有度计算。下面参考图5、6、9、10描述了可由异常检测器34执行的过程的细节。
呈现模块54为系统提供外部接口,并且可以包括例如服务层54a、认证模块54b、web前端和UI(用户接口)54c、公共警报模块54d和第三方工具54e。呈现模块54可以预处理、汇总、过滤或组织数据以用于外部呈现。
服务层54a可以作为呈现模块54和分析模块30之间的接口来操作。呈现模块54可以用于生成网页。web前端54c可以例如与服务层54a连接,以在包括条形图、核心图、直方图、非循环依赖图、线图、表格等的网页中呈现来自服务层的数据。在一个示例中,呈现模块54可以用于呈现直方图(例如如图7所示)以用在如下所述的基于密度的稀有度计算中。
公共警报模块54d可以使用通过分析模块30生成或可通过分析模块30访问的分析数据,并标识满足指定标准的网络条件并将警报推送到第三方工具54e。第三方工具54e的一个示例是安全的信息和事件管理(SIEM)系统。第三方工具54e可以通过API(应用编程接口)从服务层54a检索信息,并且例如根据SIEM的用户界面呈现信息。
图4图示了根据一个实施例的、图3中所示的网络行为数据收集和分析系统的数据处理架构的示例。如前所述,系统包括配置/图像管理器55,其可以用于配置或管理向一个或多个收集器32提供数据的传感器26。数据移动器60将来自收集器32的数据传输到一个或多个处理引擎64。处理引擎64还可以接收带外数据50或APIC(应用策略基础设施控制器)通知62。数据可以在数据湖(data lake)或其它存储库处被接收和处理。数据湖可以被配置为例如存储275Tb(Tbyte)(或更多或更少)的原始数据。系统可以包括任何数量的引擎,包括例如用于标识流的引擎(流引擎64a)或用于标识攻击(包括DDoS(分布式拒绝服务))的引擎(攻击引擎64b、DDoS引擎64c)。系统还可以包括搜索引擎64d和策略引擎64e。搜索引擎64d可以被配置为例如执行结构化搜索、NLP(自然语言处理)搜索、或者可视搜索。数据可以从一个或多个处理组件提供给引擎。
处理/计算引擎64还可以包括处理组件64f,其可操作用于例如标识主机特征64g和应用特征64h并且执行应用依赖性映射(ADM 64j)。处理64f可以包括,例如下文描述的基于密度的稀有性计算过程。例如,DDoS引擎64c可以在ADM 64j离线生成模型的同时在线生成模型。在一个实施例中,处理引擎是水平可扩展系统,该系统包括预定义的静态行为规则。计算引擎可以从一个或多个策略/数据处理组件64i接收数据。
流量监视系统还可以包括总体上在66处指示的持久性和API(应用编程接口)部分。系统的该部分可以包括与数据库程序(例如,JDBC(JAVA数据库连接)66e、警报66f、RoR(软件开发(Ruby on Rails))66g)相接口的各种数据库程序和访问协议(例如,Spark、Hive、SQL(结构化查询语言)66a、Kafka 66b、Druid 66c、Mongo 66d)。这些或其它应用可以被用来标识、组织、总结或呈现以供在(总体上在68处指示并且在上文参照图3描述的)用户界面和服务组件处使用的数据。用户接口和服务段68可以包括可以接收来自缓存器68d和认证模块68e的输入的各种接口,包括例如即席查询68a、第三方工具68b和全堆栈web服务器68c。
应当理解,图3和图4中所示以及上面描述的系统和体系结构仅仅是示例,并且在不背离实施例的范围的情况下,系统可以包括以各种配置或架构布置的任何数量或类型的组件(例如,数据库、过程、应用、模块、引擎、接口)。例如,传感器26和收集器32可以属于一个硬件或软件模块或多个单独的模块。其它模块还可以组合成更少的组件或进一步分成更多的组件。此外,在而不背离实施例的范围的情况下,本文描述的基于密度的稀有度计算可以在包括不同架构或组件的系统中执行。
图5示出根据一个实施例的用于异常检测的处理流程的概述。如上文关于图1所描述的,数据可在遍布网络的传感器26处被收集,以监视通过网络的所有分组(步骤80)。数据可以包括例如原始流量数据。所收集的数据可以是大数据(即,包括具有不同类型数据的大数据集)并且可以是多维的。数据可从网络中的多个角度被捕获以提供普遍的网络视图。例如,收集的数据分组可包括网络信息、进程信息、用户信息和主机信息。
在一个或多个实施例中,数据源在步骤82处经历清理和处理。在数据清理中,可以应用基于规则的算法,并将已知攻击从数据中移除,用于到异常检测的输入。例如,这可以被用来减少由于已知的恶意活动的密度估计的污染。
在步骤84标识(派生、生成)数据的特征。原始特征可以用于导出统一的信号。收集的数据可以包括任何数量的特征。可以将特征表达为例如矢量、数组、表格、列、图形或任何其它表示。例如,可以针对许多数字特征产生导出log算法变换。例如,网络元数据特征可以是混合的并且涉及分类、二进制和数字特征。特征分布可能是不规则的,表现出尖锐和(口袋形)稀疏。规模可能不同,特征可能不是独立的,并可能表现出不规则的关系。本文描述的实施例提供适用于具有这些特征的数据的异常检测系统。在一个或多个实施例中,定义了一种用于标识具有许多特征的多维数据中的网络流量异常的非参数可伸缩方法。
原始特征可以被用来导出合并的信号。例如,从流级数据中,可以为每个流方向计算每个数据分组的平均字节数。也可以计算前向与反向字节比和分组比。此外,正向和反向TCP标志(例如SYN(同步)、PSH(推)、FIN(完成)等)可以被分类为两者均缺失、两者均为零、两者均大于1、仅前向和仅反向。导出的对数变换可能会产生许多数字化(右偏(rightskewed))特征。特征集还可以针对不同的分析水平而导出。
在某些实施例中,离散数字特征(例如,字节计数和分组计数)和组合特征被放置到不同大小(宽度、范围)的箱中(步骤86)。可以使用恒定大小的箱,但使用不同的箱宽度可能有利于减少低密度(宽箱)的噪声,并在高密度(窄箱)的情况下获得精度。箱的最优数量可以取决于数据的分布。在一些实施例中,可以使用单变量转换点,使得箱范围由观察数据的变化来定义。例如,特征可以被分组为包含箱边界的箱,箱边界根据每个箱内的数据遵循离散均匀分布的概率来选择。可以基于分布特来最佳地定义小区,该小区具有被统计地定义在单变量转换点处的边界。在一个示例中,可以使用统计测试来标识分布中的有意义的转换点。
在一个实施例中,箱范围使用统计方法以标识分布中的有意义的转换点的统计方法,由观察数据中的变化来定义。特征(例如,网络流中的字节)的分布可以显示狭窄尖锐、稀疏区域和平滑覆盖区域的区域。统计方法可以用来标识这些不同区域之间的转换。异构分布可以被分为在内部的观察为同质的箱。由于同一箱的成员与相同的密度估计(常数)相关联,所以可以给定假定的离散均匀分布对每个箱进行建模。对于候选箱边界,可以执行测试以确定在给定假定离散均匀分布的情况下观察该箱内的一组计数的概率。如果概率超过预定值(alpha),则认为箱边界是适当的。如果没有证据表明箱内的标的数据不遵循离散均匀分布,则可以得出结论箱边界是可接受的。然而,如果数据显示,观测给定频率的概率计数,则箱的给定离散均匀分布是不太可能的,则箱边界被拒绝,从而得出结论箱展现出不同数据特性。在这种情况下,箱可以被细分,使得每个箱在箱内展现数据一致性。箱分界可以被定义,使得测试的概率总是大于预定值alpha。在某些实施例中,等比例的皮尔逊卡方(CHISQ)检测可以用于检测箱内两个或更多值的比例(成功概率)为相同的无效假设。上文描述的过程可以用于基于观察数据的特征来最优地定义不同宽度的多变量小区。
分箱的特征可以用于密度估计目的(步骤88)。在一个示例中,可以为每个分箱的特征组合计算密度以提供密度估计。可以使用非参数多变量密度估计来标识异常。多变量密度的估计可以基于离散化特征组合的历史频率来生成,以创建时间序列分箱的特征密度估计。这提供了更高的数据可视性和可理解性,帮助进行异常值调查和取证,并为其它潜在度量、视角、查询和实验输入提供构建块。下面参照图9描述根据一个实施例的密度计算的细节。
随后可以基于具有相等或更小密度的区域的累积概率来计算稀有度(步骤90)。可以基于多元小区密度的顺序来确定稀有度。在一个示例中,具有最低密度的分箱的特征组合对应于最少见的区域。在一个或多个实施例中,可以将较高的权重分配给更近期观察到的数据,并且基于具有相同或更小密度的区域的累积概率来计算稀有度值。与所有其它观察相比,不是计算每个观察的稀有度,而是可以基于特定上下文来计算稀有度。如下所述,还可以针对不同级别的分析(实体)计算稀有度度量。以下参考图10描述根据一个实施例的稀有度计算的细节。
具有历史上少见的特征组合的新的观察可以被标记为异常,而与通常观察到的特征组合相对应的新观察并不被标记为异常(步骤92)。异常可以包括,例如点异常、上下文异常、集体异常。点异常是相对于其余数据异常的观察。上下文异常相对于特定上下文(或数据子集)是异常的。集体异常是一组关于数据异常的观察。所有这些类型的异常都适用于标识网络数据中的可疑活动。在一个实施例中,使用相同的标识符组的成员来定义上下文异常。
所标识的异常可以用于检测可能指示恶意行为的可疑网络活动(步骤94)。所标识的异常可用于下游目的,包括网络取证、策略制定和执行。例如,可以使用一个或多个实施例来自动生成最佳签名,随后可以将其快速传播以帮助控制恶意软件家族的传播。
图6是示出根据一个实施例的、基于小区的密度稀有度的处理的概述的流程图。网络数据在分析设备30处被接收(步骤96)(图1和6)。如上所述,可以从多个传感器26收集网络数据以提供网络的普遍视角。例如,可以从分布在整个网络中的多个传感器收集网络数据,以从网络中的多个角度监视网络内的网络流。如上关于图5中的步骤84-86所述,特征被网络数据标识并被分组为多变量箱(步骤98)。如图7所示并在下面描述,在一个实施例中,箱限定了宽度不同的小区。对于每个分箱的特征组合,生成密度(步骤100)。密度可以是时间加权的特征密度,其中更高的权重被分配给更近期观察的特征,而旧的特征被分配给更低的权重(即,低权重)。在一个实施例中,使用应用于累积的分箱的特征组合计数的指数衰减来对特征进行加权。一旦计算出每个小区的密度,就可以根据密度对小区进行排序。随后可以基于在箱中获得特征(观察)的概率、和具有相等或更小密度的箱的概率,为每个多变量箱计算稀有度度量(步骤102)。可以基于所计算的稀有度度量来标识异常(步骤104)。
应当理解,图5和图6所示以及上面描述的过程仅仅是示例,并且步骤可以在不脱离实施例的范围的情况下被添加、组合、移除或修改。
如先前所述,可以定义小区边界,并将特征分组到任何数量的多变量箱中。如图7的曲线图170所示,箱(小区)(172a、172b、172c、172d、172e、172f、172g、172h、172i、172j)可以具有不同的宽度(即,至少两个箱具有不同的宽度(范围))。如图8的示例所示,使用多变量方法是因为网络数据中的特征可能不是独立的。图8的图180示出了用log_fwd_byte_count_bin描绘的log_fwd_byte_per_packet_bin,以说明这些特征以何种方式不独立。
图9是示出根据一个实施例的用于确定密度的过程的流程图。一旦小区边界被定义,新的观察结果将按照时间单位被分批处理。对每个批次获得分箱的特征组合计数(即,箱内的观察次数)(步骤190)。多变量密度的估计可以基于离散特征组合的历史频率来生成。例如,对于每个新批次,可使用在指定的(例如,用户指定的)最大时间窗内的所有先前数据来获得多变量密度估计(步骤192)。在一个或多个实施例中,可以将指数衰减应用于每个批次的累计计数(步骤194)。这具有将更高的权重分配给更近观察到的特征、和将更低的权重分配给旧的观察的效果。对于每个分箱的特征组合,随后可以基于落在分箱内的观察的总计数和次数(通过时间序列权重进行调整)来计算密度(步骤196)。
在一个示例中,对于每个批次,每个分箱的特征组合(i,其中i=1...N分箱的特征组合)的频率(F)被计算作为旧批次的频率(foi)乘以e的负λ次方加上新批次中的计数(fni)。这可以表示为:
Fi=foie+fni
对于除了在期望典型的流量模式随时间快速改变的特定环境中的情况之外,可以使用更大的λ(大于或等于1)的值。
对于每个分箱的特征组合,密度(Di)可以被计算为总计数(Ci)除以箱的尺寸(落入箱中的可能观察的数量)(Oi)和(应用了指数衰减之后的)计数(Fi)之和的乘积。这可以表示为:
图10是示出根据一个实施例的用于计算稀有度的过程的流程图。如上所述,具有最低密度的分箱的特征组合对应于最少见的区域。一旦为每个小区计算了密度(例如,如上文关于图9所描述的),则基于密度对小区进行排序(步骤197)。对于每个多变量箱,可以计算出个稀有度度量小于或等于针对箱获得观察的概率加上在具有相等或更小的密度的所有其它箱中获得观察的概率(步骤199)。对于每个新的观察,这种方案提供了基于历史数据的定量的稀有度测量。
再次参考图7,可视地示出了与第四箱(172d)中的观察相关联的稀有度。在该示例中,稀有度计算包括第四箱(172b)和具有相同或更小密度的所有其它箱(172e、172g、172i、172j)。
一旦箱(l,...,N)基于密度(密度从最高到最低)被排序,箱(i)的稀有度可以表示为:
R≤在箱(i)中获得观察的概率+在箱(i+1,...,N)中获得观察的概率;其中(l+1)包括所有等密度的箱。
本文使用的术语“观察”是指观察的数据(特征)(例如,字节计数、分组计数等)。在箱内获得观察的概率可以被定义为箱中的特征的数量/可能特征的总数。
应当理解,图9和图10所示以及上面描述的过程仅仅是示例,并且在不脱离实施例的范围的情况下可以增加、修改、组合或者移除步骤。
在一些情况下,当与当时所有其它流量相比时,特定网络流量的特征可能并不少见,但仅当与特定提供者IP地址(或其它实体)处接收到的其它流量相比时才会出现异常。此外,与当时观察到的其它流量相比,端口扫描或DDoS(分布式拒绝服务)攻击中的任何一个流量可能并不少见,但当随时间与针对IP地址观察到的典型流量相比时,可能会作为组出现异常。因此,仅将异常网络流量标识为具有少见的全球特征特性的流量,可能是不够的。而是,每个潜在的异常单元可以基于上下文、层级和比较类型与各种参考组进行比较。以下描述可用于增加潜在恶意活动的覆盖范围和标识的实施例。这些实施例中的一个或多个(或其任何组合)可以与上述实施例一起使用。
在一个实施例中,可以使用相同的标识符组的成员来定义上下文异常。并不为每个观察与所有其它观察结果相比而计算稀有度值,而是可以基于特定的上下文来计算稀有度值。例如,具有全球意义上并不少见的特性的流,可能在两个特定的IP地址之间是非常少见的。例如,可能对于数据中心而言典型的特定类型的流,如果在两个特定的IP地址之间观察到的话,可能是意外的。另一个示例可以是,特定类型的流对于IP地址来说是典型的,但对该IP地址的特定服务器端口来说并不是典型。为了标识上下文异常,可以基于相同的上下文家族,将每个新的流的特征组合与历史流的子集进行比较。
在一个示例中,定义了两个流的上下文。例如,上下文可以基于以下维度的相同组合:(1)租户、提供者IP地址、协议、提供者端口和类型;(2)租户、提供者IP地址、消费者IP地址、协议、提供者端口和类型。稀有度度量可以全局地和针对上下文中每一个进行计算。多个上下文的稀有度度量标准为下游分析提供了丰富的数据源。可以针对每个上下文提供异常统计,以及提供针对具体上下文的特征图和上下文层级统计(即,上下文年龄、新上下文、缺少的上下文、以及诸如异常流和典型流的比例之类的上下文层级特征)。这些数据允许用户使用更全面的观点或上下文搜索和标识异常。
在一个实施例中,使用不同的分析单元来提供数据的多个视角。在上面的描述中,只讨论了一个层级的分析:原始流数据。但并不是所有的异常都可以通过单一的分析来标识。除非考虑到其它层级的分析,否则一些异常可能不明显。在一个或多个实施例中,可以使用超出原始流量数据的分析层级。其它实体(分析层级)可能包括IP地址、应用、用户、角色或其它实体。这种方法允许标识异常的IP地址、应用、用户和角色(不仅是异常流)。一个示例是DDoS(分布式拒绝服务)攻击,其中每个流可能具有典型流量的特征但是作为一个组代表异常事件。这也可能被概念化为集体异常。对于每个级别的分析(或实体),可以使用给定时间段的原始流量数据导出特征集。每个分析单元都可能有自己独特的导出特征。IP层级数据的示例的特征包括流量速率、消费者到提供者字节速率、提供者到客户端的平均字节数/分组、平均流持续时间、消费者入度(in-degree)、不同的协议、不同的提供者端口等。其它分析单元可能有其它导出特征。使用上述相同的方法来计算每个新的流的稀缺度度量,稀缺度度量可以计算用于其它层级的分析。类似地,上下文异常的概念也适用于其它分析单元。例如,以IP地址作为分析单元,可以基于同一租户和EPG组合的成员来确定上下文异常。使用多个视角可以为异常检测提供更丰富的数据格式,并为多种实体类型(例如,流量、IP地址、应用、用户和角色)提供分析数据源。
在一个实施例中,使用灵活的比较类型。对于流以外的分析单元,可以提供两种比较类型。第一种是迄今为止描述的类型,将新的观察与同一单元的其它成员进行比较。例如,展示与同一EPG中的其它IP地址不同的特征组合的IP地址可能被标记为异常。第二种类型的比较涉及同一单位(自身)的历史参考数据。在这种情况下,展现与历史上由同一IP地址看到的特征组合不同的特征组合的IP地址可能被标识为异常。因此,IP地址(例如,源)当与类似功能的其它IP地址相比较、并且与其自身的过去行为相比时可能展现出可疑。这两种比较可以用来提供潜在的可疑活动的综合分析。扩大比较类型的范围可以减少漏报,从而增加对恶意网络行为的查全率(recall)。自身的附加比较类型使得用户可以为每个特征提供一组时间序列图。
在一个实施例中,可以基于一周中的哪天和一天中的时间对流量模式进行建模。例如,可以使用流的开始和结束时间来确定流是否跨越周日、周日晚或周末。例如,可以计算三个二进制的导出特征以标识每个时间类别期间存在或不存在的流。对于每个新的流,稀有度基于相应时间类别中的历史流。例如,这种方法可以基于一天中的时间以及一周中的哪天而减少在网络流量变化很大的环境中的误报。
从上文可以看出,本文描述的实施例提供了优于传统方法和系统的用于网络元数据的异常检测的应用的许多优点。一个或多个实施例提供用于标识具有许多特征的多维数据中的网络流量异常的非参数可伸缩方法。在一个或多个实施例中,多变量方法允许基于特征的稀有组合来标识更多的异常值,而不对变量之间的关系做出任何假设。这允许对仅在它们的特征组合中异常的观察进行检测。例如,可能存在许多前向字节数较少的流、以及许多后向字节数较多的流,但前向字节数小且后向字节数多的流可能是少见的。由于特征在数据中可能不是独立的(不常见的双变量关系),所以多元方法是有利的。分箱密度估计提供了非参数方法,支持任何形状的分布。分箱允许可计算的效率,因此可以基于大量的数据进行估计。实施例允许不仅在特征的极端处标识异常值,而且还在中间不平常的口袋状处标识异常值。实施例可以处理许多特征和不同类型(例如,分类、序数、数字)。而且,在不同规模和可变类型中,没有指定距离的概念。一个或多个实施例支持定义性的数据、特性,而不会施加不必要或不适当的假设。所收集的网络元数据呈现出了在多个方面(例如,缺乏特征独立性、不是数字和标称类型的混合的特征、以及展现出不规则和经常性尖锐分布的特征)的独特分布。这些独特和定义性的数据特性限制了常规方法和系统的适用性,特别是那些基于距离、参数或单变量的方法和系统。
尽管已经根据所示实施例描述了方法和设备,但是本领域普通技术人员将容易认识到可以在不脱离实施例的范围的情况下做出变化。因此,包含在上述说明书中和附图中所示的所有内容,应当理解为说明性的而不是限制性的。

Claims (20)

1.一种方法,包括:
在分析设备处接收网络数据;
在所述分析设备处将所述网络数据的特征分组为多变量箱;
在所述分析设备处生成针对所述多变量箱中的每一个的密度;
在所述分析设备处基于下述项来计算针对所述多变量箱中的每一个的稀有度度量:箱中获得特征的概率、以及具有相等或更小密度的所有其他所述多变量箱中的所述概率;以及
基于所计算的稀有度度量来标识异常。
2.如权利要求1所述的方法,其中,所述多变量箱包括不同宽度的箱。
3.如权利要求2所述的方法,其中,箱边界基于单变量转换点。
4.如权利要求1所述的方法,其中,所述密度包括时间加权的分箱的特征密度。
5.如权利要求4所述的方法,其中,生成所述时间加权的分箱的特征密度包括:基于观察的时间对所述特征应用指数衰减。
6.如权利要求1所述的方法,其中,生成所述密度包括非参数过程。
7.如权利要求1所述的方法,其中,计算所述稀有度度量包括:针对对应于不同日期和一天中的时间的不同时间类别来计算稀有度。
8.如权利要求1所述的方法,还包括:将所述特征与对应于相同类型特征的历史特征进行比较。
9.如权利要求1所述的方法,其中,所述稀有度度量基于上下文来计算。
10.如权利要求9所述的方法,其中,所述上下文基于租户、提供者IP(互联网协议)地址、协议、以及提供者端口和类型。
11.如权利要求1所述的方法,其中,所述稀有度度量针对不同的分析单元来计算。
12.如权利要求11所述的方法,其中,所述分析单元从包括IP(互联网协议)地址、应用、用户和角色的组中被选择。
13.如权利要求11所述的方法,还包括将针对一个分析单元在不同时间段的所述稀有度度量进行比较。
14.如权利要求1所述的方法,其中,所述概率包括将历史数据考虑在内的累积概率。
15.如权利要求1所述的方法,其中,所述网络数据从分布在整个网络中的多个传感器收集,以从所述网络中的多个角度监视所述网络内的网络流。
16.一种装置,包括:
接口,用于接收网络数据;以及
处理器,用于将所述网络数据的特征分组为多变量箱,生成针对所述多变量箱中的每一个的密度,基于下述项来计算针对所述多变量箱中的每一个的稀有度度量:箱中获得特征的概率、以及具有相等或更小密度的所有其他所述多变量箱中的所述概率,并且基于所计算的稀有度度量来标识异常。
17.如权利要求16所述的装置,其中,所述多变量箱包括不同宽度的箱。
18.如权利要求16所述的装置,其中,所述密度包括时间加权的分箱的特征密度,并且所述概率包括累积概率,并且其中,生成所述密度包括非参数过程。
19.一种编码在一种或多种非暂态计算机可读介质中用于执行的逻辑,当该逻辑被执行时,可操作用来:
在分析设备处处理网络数据;
将所述网络数据的特征分组为多变量箱;
生成针对所述多变量箱中的每一个的密度;
基于下述项来计算针对所述多变量箱中的每一个的稀有度度量:箱中获得特征的概率、以及具有相等或更小密度的所有其他所述多变量箱中的所述概率;以及
基于所计算的稀有度度量来标识异常。
20.如权利要求19所述的逻辑,其中,所述多变量箱包括不同宽度的箱。
CN201680032329.3A 2015-06-04 2016-05-16 用于异常检测中的计算基于小区密度的稀有度的方法和装置 Active CN107683586B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562171044P 2015-06-04 2015-06-04
US62/171,044 2015-06-04
US15/091,061 2016-04-05
US15/091,061 US10505819B2 (en) 2015-06-04 2016-04-05 Method and apparatus for computing cell density based rareness for use in anomaly detection
PCT/US2016/032769 WO2016195989A1 (en) 2015-06-04 2016-05-16 Method and apparatus for computing cell density based rareness for use in anomaly detection

Publications (2)

Publication Number Publication Date
CN107683586A true CN107683586A (zh) 2018-02-09
CN107683586B CN107683586B (zh) 2021-07-20

Family

ID=56121166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680032329.3A Active CN107683586B (zh) 2015-06-04 2016-05-16 用于异常检测中的计算基于小区密度的稀有度的方法和装置

Country Status (4)

Country Link
US (1) US10505819B2 (zh)
EP (1) EP3304823B1 (zh)
CN (1) CN107683586B (zh)
WO (1) WO2016195989A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371900A (zh) * 2020-03-13 2020-07-03 北京奇艺世纪科技有限公司 一种监测同步链路健康状态的方法及系统
CN111444934A (zh) * 2019-01-16 2020-07-24 应用材料以色列公司 对半导体样本中的缺陷进行分类的方法及其系统
CN112148706A (zh) * 2019-06-28 2020-12-29 重庆小雨点小额贷款有限公司 一种变量分组方法及相关设备

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10015048B2 (en) 2014-12-27 2018-07-03 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
US9825862B2 (en) 2015-08-26 2017-11-21 Barefoot Networks, Inc. Packet header field extraction
US9826071B2 (en) 2015-08-26 2017-11-21 Barefoot Networks, Inc. Configuring a switch for extracting packet header fields
US9912774B2 (en) 2015-12-22 2018-03-06 Intel Corporation Accelerated network packet processing
US10063407B1 (en) 2016-02-08 2018-08-28 Barefoot Networks, Inc. Identifying and marking failed egress links in data plane
US10831827B2 (en) * 2016-04-01 2020-11-10 International Business Machines Corporation Automatic extraction of user mobility behaviors and interaction preferences using spatio-temporal data
US10432484B2 (en) * 2016-06-13 2019-10-01 Silver Peak Systems, Inc. Aggregating select network traffic statistics
US10419366B1 (en) 2017-01-31 2019-09-17 Barefoot Networks, Inc. Mechanism for communicating to remote control plane from forwarding element
US11277420B2 (en) * 2017-02-24 2022-03-15 Ciena Corporation Systems and methods to detect abnormal behavior in networks
US10686735B1 (en) 2017-04-23 2020-06-16 Barefoot Networks, Inc. Packet reconstruction at deparser
US10878102B2 (en) 2017-05-16 2020-12-29 Micro Focus Llc Risk scores for entities
US11503141B1 (en) 2017-07-23 2022-11-15 Barefoot Networks, Inc. Stateful processing unit with min/max capability
US10592666B2 (en) 2017-08-31 2020-03-17 Micro Focus Llc Detecting anomalous entities
US10771387B1 (en) 2017-09-28 2020-09-08 Barefoot Networks, Inc. Multiple packet data container types for a processing pipeline
US10735271B2 (en) * 2017-12-01 2020-08-04 Cisco Technology, Inc. Automated and adaptive generation of test stimuli for a network or system
US11321462B2 (en) 2018-04-10 2022-05-03 Raytheon Company Device behavior anomaly detection
US11436537B2 (en) 2018-03-09 2022-09-06 Raytheon Company Machine learning technique selection and improvement
US11507847B2 (en) 2019-07-25 2022-11-22 Raytheon Company Gene expression programming
US11340603B2 (en) 2019-04-11 2022-05-24 Raytheon Company Behavior monitoring using convolutional data modeling
WO2019199769A1 (en) 2018-04-10 2019-10-17 Raytheon Company Cyber chaff using spatial voting
US11132923B2 (en) 2018-04-10 2021-09-28 Raytheon Company Encryption using spatial voting
US11341235B2 (en) 2019-02-21 2022-05-24 Raytheon Company Anomaly detection with adaptive auto grouping
US10937465B2 (en) 2019-02-21 2021-03-02 Raytheon Company Anomaly detection with reduced memory overhead
EP3748562A1 (en) 2019-05-08 2020-12-09 EXFO Solutions SAS Timeline visualization & investigation systems and methods for time lasting events
US12088473B2 (en) 2019-10-23 2024-09-10 Aryaka Networks, Inc. Method, device and system for enhancing predictive classification of anomalous events in a cloud-based application acceleration as a service environment
US12445459B2 (en) * 2020-08-25 2025-10-14 Zscaler, Inc. Detecting malicious mobile applications using machine learning in a cloud-based system
US12079312B2 (en) 2020-09-30 2024-09-03 Microsoft Technology Licensing, Llc Machine learning outlier detection using weighted histogram-based outlier scoring (W-HBOS)
CN117880856B (zh) * 2024-03-11 2024-05-31 武汉众诚华鑫科技有限公司 一种基于人工智能的电信基站安全预警方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101534305A (zh) * 2009-04-24 2009-09-16 中国科学院计算技术研究所 网络流量异常检测方法和系统
CN102682303A (zh) * 2012-03-13 2012-09-19 上海交通大学 基于lbp加权社会力模型的人群异常事件检测方法
CN103065466A (zh) * 2012-11-19 2013-04-24 北京世纪高通科技有限公司 一种交通异常状况的检测方法和装置
CN103189760A (zh) * 2010-09-03 2013-07-03 Geosoft公司 用于在地球物理勘探中对异常密度区建模的方法和系统
CN103618651A (zh) * 2013-12-11 2014-03-05 上海电机学院 一种基于信息熵和滑动窗口的网络异常检测方法及系统
CN104504901A (zh) * 2014-12-29 2015-04-08 浙江银江研究院有限公司 一种基于多维数据的交通异常点检测方法
US20150127595A1 (en) * 2013-11-01 2015-05-07 Numenta, Inc. Modeling and detection of anomaly based on prediction

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769066B1 (en) 1999-10-25 2004-07-27 Visa International Service Association Method and apparatus for training a neural network model for use in computer network intrusion detection
US20030097439A1 (en) * 2000-10-23 2003-05-22 Strayer William Timothy Systems and methods for identifying anomalies in network data streams
US20040168100A1 (en) 2000-12-04 2004-08-26 Thottan Marina K. Fault detection and prediction for management of computer networks
US8504879B2 (en) * 2002-11-04 2013-08-06 Riverbed Technology, Inc. Connection based anomaly detection
US7478151B1 (en) 2003-01-23 2009-01-13 Gomez, Inc. System and method for monitoring global network performance
KR100582555B1 (ko) * 2004-11-10 2006-05-23 한국전자통신연구원 네트워크 트래픽 이상 상태 검출/표시 장치 및 그 방법
JP2008545343A (ja) 2005-06-29 2008-12-11 トラスティーズ オブ ボストン ユニバーシティ 全ネットワークアノマリー診断用の方法及び装置並びにトラフィック特徴分布を使用してネットワークアノマリーを検出及び分類する方法
US8001583B2 (en) 2005-11-08 2011-08-16 Tohoku University Network failure detection method and network failure detection system
US8601575B2 (en) * 2007-03-30 2013-12-03 Ca, Inc. Statistical method and system for network anomaly detection
US8707431B2 (en) * 2007-04-24 2014-04-22 The Mitre Corporation Insider threat detection
US9843596B1 (en) * 2007-11-02 2017-12-12 ThetaRay Ltd. Anomaly detection in dynamically evolving data and systems
US7962611B2 (en) 2008-03-27 2011-06-14 International Business Machines Corporation Methods, systems and computer program products for detecting flow-level network traffic anomalies via abstraction levels
US8938532B2 (en) 2009-04-08 2015-01-20 The University Of North Carolina At Chapel Hill Methods, systems, and computer program products for network server performance anomaly detection
US8306931B1 (en) 2009-08-06 2012-11-06 Data Fusion & Neural Networks, LLC Detecting, classifying, and tracking abnormal data in a data stream
US9042237B2 (en) 2009-12-14 2015-05-26 At&T Intellectual Property I, L.P. Identifying network performance alert conditions
US8578020B2 (en) 2009-12-24 2013-11-05 Empire Technology Development Llc Dynamic mobile application quality-of-service monitoring and reporting
US8495060B1 (en) 2010-12-07 2013-07-23 Trend Micro, Inc. Prioritization of reports using content data change from baseline
US9659085B2 (en) 2012-12-28 2017-05-23 Microsoft Technology Licensing, Llc Detecting anomalies in behavioral network with contextual side information
US9438493B2 (en) 2013-01-31 2016-09-06 Go Daddy Operating Company, LLC Monitoring network entities via a central monitoring system
US9692775B2 (en) * 2013-04-29 2017-06-27 Telefonaktiebolaget Lm Ericsson (Publ) Method and system to dynamically detect traffic anomalies in a network
US20150033336A1 (en) 2013-07-24 2015-01-29 Fortinet, Inc. Logging attack context data
US20150073894A1 (en) 2013-09-06 2015-03-12 Metamarkets Group Inc. Suspect Anomaly Detection and Presentation within Context
US9367809B2 (en) 2013-10-11 2016-06-14 Accenture Global Services Limited Contextual graph matching based anomaly detection
US10356111B2 (en) 2014-01-06 2019-07-16 Cisco Technology, Inc. Scheduling a network attack to train a machine learning model
US10560469B2 (en) * 2014-01-24 2020-02-11 Hewlett Packard Enterprise Development Lp Identifying deviations in data
US9667653B2 (en) * 2014-12-15 2017-05-30 International Business Machines Corporation Context-aware network service policy management

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101534305A (zh) * 2009-04-24 2009-09-16 中国科学院计算技术研究所 网络流量异常检测方法和系统
CN103189760A (zh) * 2010-09-03 2013-07-03 Geosoft公司 用于在地球物理勘探中对异常密度区建模的方法和系统
CN102682303A (zh) * 2012-03-13 2012-09-19 上海交通大学 基于lbp加权社会力模型的人群异常事件检测方法
CN103065466A (zh) * 2012-11-19 2013-04-24 北京世纪高通科技有限公司 一种交通异常状况的检测方法和装置
US20150127595A1 (en) * 2013-11-01 2015-05-07 Numenta, Inc. Modeling and detection of anomaly based on prediction
CN103618651A (zh) * 2013-12-11 2014-03-05 上海电机学院 一种基于信息熵和滑动窗口的网络异常检测方法及系统
CN104504901A (zh) * 2014-12-29 2015-04-08 浙江银江研究院有限公司 一种基于多维数据的交通异常点检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MARKUS GOLDSTEIN等: "Histogram-based Outlier Score (HBOS): A fast Unsupervised Anomaly Detection Algorithm", 《COMPUTER SCIENCE》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111444934A (zh) * 2019-01-16 2020-07-24 应用材料以色列公司 对半导体样本中的缺陷进行分类的方法及其系统
CN111444934B (zh) * 2019-01-16 2025-02-14 应用材料以色列公司 对半导体样本中的缺陷进行分类的方法及其系统
CN112148706A (zh) * 2019-06-28 2020-12-29 重庆小雨点小额贷款有限公司 一种变量分组方法及相关设备
CN111371900A (zh) * 2020-03-13 2020-07-03 北京奇艺世纪科技有限公司 一种监测同步链路健康状态的方法及系统
CN111371900B (zh) * 2020-03-13 2022-07-12 北京奇艺世纪科技有限公司 一种监测同步链路健康状态的方法及系统

Also Published As

Publication number Publication date
WO2016195989A1 (en) 2016-12-08
CN107683586B (zh) 2021-07-20
US20160359685A1 (en) 2016-12-08
EP3304823B1 (en) 2019-07-10
EP3304823A1 (en) 2018-04-11
US10505819B2 (en) 2019-12-10

Similar Documents

Publication Publication Date Title
CN107683586B (zh) 用于异常检测中的计算基于小区密度的稀有度的方法和装置
CN107690776B (zh) 用于异常检测中的将特征分组为具有选择的箱边界的箱的方法和装置
CN107683597B (zh) 用于异常检测的网络行为数据收集和分析
US11683618B2 (en) Application performance monitoring and management platform with anomalous flowlet resolution
US10079846B2 (en) Domain name system (DNS) based anomaly detection
CN107667505B (zh) 用于监控和管理数据中心的系统及方法
US10177998B2 (en) Augmenting flow data for improved network monitoring and management
US9860154B2 (en) Streaming method and system for processing network metadata
US11627166B2 (en) Scope discovery and policy generation in an enterprise network
US20220006842A1 (en) Systems and methods for determining effectiveness of network segmentation policies
EP4165532B1 (en) Application protectability schemes for enterprise applications
Xu Network Behavior Analysis
Pekar et al. Towards threshold‐agnostic heavy‐hitter classification
Rivera et al. Automation of network anomaly detection and mitigation with the use of IBN: A deployment case on KOREN
EIDefrawy et al. Automated inference of dependencies of network services and applications via transfer entropy
CN120979924A (zh) 一种面向自主可控操作系统的自动化部署管理方法、系统、设备及介质
Weaver Identifying Anomalous Port-Specific Network Behavior
Affinito et al. Spark-Based Anomaly Detection: the Case of Port and Net Scan
Saravanan et al. An Investigation on Neuro-Fuzzy Based Alert Clustering for Statistical Anomaly of Attack Detection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant