CN115037528B - 一种异常流量检测方法及装置 - Google Patents
一种异常流量检测方法及装置 Download PDFInfo
- Publication number
- CN115037528B CN115037528B CN202210571723.1A CN202210571723A CN115037528B CN 115037528 B CN115037528 B CN 115037528B CN 202210571723 A CN202210571723 A CN 202210571723A CN 115037528 B CN115037528 B CN 115037528B
- Authority
- CN
- China
- Prior art keywords
- session
- characteristic
- determining
- fluctuation
- abnormal
- 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.)
- Active
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 90
- 238000001514 detection method Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000000630 rising effect Effects 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 description 9
- 230000005856 abnormality Effects 0.000 description 8
- 238000012512 characterization method Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及网络安全技术领域,尤其涉及一种异常流量检测方法及装置。其中方法包括:确定流量段内的N个会话;流量段是通过采集设定时长的流量数据得到的;N为正整数;确定N个会话中每个会话对应的会话特征;基于N个会话的同一会话特征,构建会话特征的特征波;若特征波中存在波动区域,对波动区域进行特征提取,得到会话特征对应的区域特征;基于会话特征对应的区域特征,确定流量段是否异常;在上述方式中,基于N个会话的同一会话特征构建会话特征的特征波,着眼于特征波的波动区域,根据波动区域的区域特征,确定流量段是否异常。由于波动区域的区域特征较少,而且一次分析就针对多个会话,减少了计算量,从而提高了异常流量检测的效率。
Description
技术领域
本申请涉及网络安全技术领域,尤其涉及一种异常流量检测方法及装置。
背景技术
随着互联网技术的发展,互联网应用的领域越来越多,对于互联网的安全保证也越来越重要。因此需要对访问互联网的流量进行有效的管控与分析,及时发现互联网中的异常流量。
现有技术中,是通过对互联网中的流量进行特征提取,对每一个特征进行分析,根据流量的特征确定流量是否异常。但是在这种方式中,首先需要对流量进行分类,基于每一个类别进行特征提取。流量的类别是较多的,针对每一个类别提取的特征也比较多。例如针对浏览视频网站的流量,需要提取源IP地址、目的IP地址,在一次通信中发送的数据包数目、产生的报文数量、日志数量等等。这样就会导致,即使分析一小段时间内的流量,产生的计算量也比较大。因此使用这种方式来检测异常流量,导致异常流量的检测效率较低。
基于此,目前亟需一种异常流量检测方法,用于提高异常流量的检测效率。
发明内容
本申请提供一种异常流量检测方法及装置,用于提高异常流量的检测效率。
第一方面,本申请提供一种异常流量检测方法,所述方法包括:确定流量段内的N个会话;所述流量段是通过采集设定时长的流量数据得到的;N为正整数;确定所述N个会话中每个会话对应的会话特征;基于所述N个会话的同一会话特征,构建所述会话特征的特征波;若所述特征波中存在波动区域,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征;基于所述会话特征对应的区域特征,确定所述流量段是否异常;其中,所述特征波包括与所述N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在所述会话特征的特征值。
在上述方式中,基于N个会话的同一会话特征构建会话特征的特征波,着眼于特征波的波动区域,根据波动区域的区域特征,确定流量段是否异常。一方面通过同一会话特征构建特征波,特征波中的特征点的横坐标用于在时序上表征对应的会话,特征点的纵坐标用于表征对应会话在会话特征的特征值,该方式从时序角度对多个会话进行分析,因而从多会话角度提供了异常流量检测的方法,而非对单会话进行会话特征提取并分析;另一方面,由于是针对特征波的波动区域进行异常判断,加上波动区域的区域特征较少,因而进一步减少了计算量,从而提高了异常流量检测的效率。
一种可能的实现方式中,基于所述会话特征对应的区域特征,确定所述流量段是否异常,包括:针对任一会话特征,将所述会话特征对应的区域特征输入所述会话特征对应的异常检测模型,得到所述会话特征对应的流量段检测结果;基于多个会话特征的流量段检测结果,确定所述流量段是否异常。
通过上述方式,针对每个会话特征,仅需要将提取的区域特征输入已训练好的异常检测模型中,就可以得到该会话特征的流量段检测结果;同时,会话特征有多个,可以综合多个会话特征的流量段检测结果得到流量段是否异常。结合不同角度的会话特征,加上对应的不同的异常检测模型,可以更快速更准确地进行异常流量检测。
一种可能的实现方式中,通过如下方式确定所述特征波中存在波动区域,包括:确定所述特征波中波形上升幅度超过幅度阈值且所述波形上升幅度对应的时间跨度大于时间阈值的凸波;所述凸波是由连续的波形上升区间和波形下降区间组成的;将所述凸波作为所述波动区域。
波动区域一般是指特征波中出现明显变化的区域,该区域类似于凸起的“山脉”,也可以理解为类似于波峰对应的区域。通过上述方式,可以通过较少的约束条件(即波形上升幅度和波形上升幅度对应的时间跨度)检测出特征波形中是否存在波动区域,既体现了波动性又可以有效的节省计算资源。
一种可能的实现方式中,基于所述N个会话的同一会话特征,构建所述会话特征的特征波,包括:确定每个会话的会话开始时间,将会话开始时间作为会话对应特征点的横坐标;将每个会话的所述会话特征的特征值作为会话对应特征点的纵坐标;通过每个会话对应的特征点,构建所述会话特征的特征波。
在上述方式中,将每个会话开始的时间作为会话对应特征点的横坐标,可以有效的避免会话重叠的情况,导致特征点选确定不准确,从而影响特征波反映特征的精准度,有效的提高了异常流量检测的准确性。
一种可能的实现方式中,所述多个会话特征包括以下至少两项:数据包数量、上行报文数量、下行报文数量、会话开始间隔时间。
上述几个会话特征,获得特征值较容易,有助于提高特征波构建效率,并且使用至少两项会话特征,有效地提高了异常流量检测的准确性。
一种可能的实现方式中,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征,包括:确定所述波动区域的持续时间;和/或确定所述波动区域的波形上升区间的上升斜率;和/或确定所述波动区域的波形下降区间的下降斜率;和/或确定所述波动区域的面积;和/或,确定所述波动区域的峰值;从而得到所述会话特征对应的区域特征。
在上述方式中,波动区域是由于特征值明显大于其他区域的才产生的,针对波动区域进行区域特征提取,更容易发现会话特征的异常。并且对波动区域进行二次特征提取,计算较为简单,且最多只获取了波动区域的5个特征,计算量较少,可以有效提高异常流量检测效率。
一种可能的实现方式中,所述方法还包括:若任一会话特征的特征波中均不存在波动区域,则确定所述流量段无异常流量。
在上述方式中,如果一个流量段的所有会话特征的特征波均不存在波动区域,说明这段流量数据较为稳定,存在恶意攻击的几率较小。因此,就不把这个流量段作为异常流量段。
第二方面,本申请提供一种异常流量检测装置,所述装置包括:确定模块、特征波构建模块、提取模块、流量检测模块;所述确定模块,用于确定流量段内的N个会话;所述流量段是通过采集设定时长的流量数据得到的;N为正整数;所述确定模块,还用于确定所述N个会话中每个会话对应的会话特征;所述特征波构建模块,用于基于所述N个会话的同一会话特征,构建所述会话特征的特征波;所述提取模块,用于若所述特征波中存在波动区域,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征;所述流量检测模块,用于基于所述会话特征对应的区域特征,确定所述流量段是否异常;其中,所述特征波包括与所述N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在所述会话特征的特征值。
第三方面,本申请提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,当计算机程序被运行时,执行上述第一方面中任一项方法。
第四方面,本申请提供一种计算设备,包括:存储器,用于存储程序指令;处理器,用于调用存储器中存储的程序指令,按照获得的程序执行上述第一方面中任一项设计中的方法。
第五方面,本申请提供一种计算机程序产品,当计算机程序产品在处理器上运行时,实现如上述第一方面中任一项设计中的方法。
上述第二方面至第五方面的有益效果,具体可参照上述第一方面任一项设计可达到的有益效果,此处不再一一赘述。
附图说明
图1示例性示出本申请实施例提供的一种场景架构示意图;
图2示例性示出本申请实施例提供的一种异常流量检测方法的流程示意图;
图3示例性地示出本申请实施例提供的一种流量段划分方法示意图;
图4示例性示出本申请实施例提供的一种会话特征波示意图;
图5示例性示出本申请实施例提供的另一种会话特征波示意图;
图6示例性示出本申请实施例提供的又一种会话特征波示意图;
图7示例性地示出本申请时实施例提供的一种异常流量检测装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1示例性示出本申请实施例提供的一种场景架构示意图。如图1所示,本申请实施例的方法,可以用在内部网络101和外部网络102之间。内部网络101连接多个终端,如服务器111、手机113、个人电脑112等。内部网络101可以为企业的内部网络101、学校的内部网络101或者任何其他单位或者群体的内部网络101。外部网络102可以包括因特网、电信网络以及其他任何有线或者无线的网络。内部网络101可以通过网关和外部网络102进行连接。同时,外部网络102可以通过网关访问内部网络101。在当今的互联网环境中,一些非法机构的攻击终端121会通过外部网络102访问内部网络101的方式,对内部网络101发起恶意攻击,摧毁内部网络的防火墙等设施,导致内部网络101所维护的系统或者服务对象暴露在不安全的互联网环境中,使得内部网络101的财产或技术受到威胁。因此需要对访问内部网络101的流量进行检测,及时发现异常的流量,排除恶意攻击。上述仅是流量异常检测的一种应用场景,仅作为示例,本领域技术人员会自然适用于多种应用场景。
现有技术中,主要通过对访问一个网络的流量进行会话分析,提取每个会话的特征,来判断网络流量是不是异常的。可以参照如下步骤进行:
步骤一:获取一段时间内的流量。这段时间内的流量是历史数据库中的流量。
步骤二:对一段时间内的流量进行分类,形成多个会话。例如,在对淘宝访问的场景中,可以将流量分为:浏览店铺流量、观看直播流量、访问外部支付系统流量等,每一种流量对应一个会话。
步骤三:针对每一个会话,进行特征提取。例如可以提取观看直播流量的持续时长、原IP地址、产生的数据数量、应用层协议数据。
步骤四:对每一个会话的每一个特征进行分析,判断每一个会话是不是异常的。
步骤五:根据多个会话的分析结果,确定一段时间内的流量是否异常。
上述步骤一至五中,通过对历史数据库中的流量进行分析,可以确定这段时间中是不是有异常流量产生。但是这种方式需要对每一个会话的每一个特征进行分析,而一段时间内产生会话以及每一个会话的特征都是众多的。例如,假设在上述步骤一至五的举例中,一段时间内的流量共划分了3个会话,每个会话有4个特征,最终共需要对12个特征进行分析计算,才能确定这一段时间内流量异常。由此可见,上述方式的计算量较大,因此导致异常流量检测的效率较低,无法应用在实时的流量检测中。而且这种方式忽略了流量类别之间的联系,导致异常流量检测的准确率较低。
由此本申请实施例就提供了一种异常流量检测方法,用于提高异常流量检测的效率,同时避免异常流量检测准确率较低的问题。
图2示例性示出本申请实施例提供的一种异常流量检测方法的流程示意图。如图2所示,该方法包括:
步骤201,确定流量段内的N个会话;流量段是通过采集设定时长的流量数据得到的;N为正整数。
以图1所示架构,内部网络101的各终端可通过网关对外部网络102进行访问,因而网关可以获取到从内部网络101到外部网络102的流量数据;也可以是外部网络102的攻击终端121对内部网络101的访问,因而网关可以获取到从外部网络102到内部网络101的流量数据。为了便于对流量数据进行检测,本申请提供了一种将流量数据划分为流量段的方法,从而对每个流量段进行异常检测。划分方式可以有多种。
如图3所示,数据包1至数据包n是采集通过一个网络节点中的流量数据。可选的,将设定时长设置为10秒,即T1、T2……Tn均等于10秒,后续将对每一个10秒的流量段进行检测,确定这10秒的流量段是不是异常的。需要说明的是,设定时长可以是每个流量段都相同,也可以不同,如对于访问低峰的时段,设定时长可以长一些等。
对于每一个流量段,确定流量段中的N个会话。其中,会话可以理解为两个或多个通信设备之间,或计算机与用户之间临时的、交互式的信息交换。会话在某个时间点建立,然后在稍后的某个时间点被结束。已建立的会话可能涉及每个方向的多个消息。因此“会话”可以理解为一个信息交互的过程,如客户端与服务器建立链接后数据传输的过程。这个过程从建立连接开始,到断开连接结束,期间可能涉及某一方多次信息的传递。
针对流量段中会话的确定方式可以是:将流量段按照业务类型划分成不同的会话。对于一个用户的终端来说,可以将终端产生的流量划分为:浏览百度的流量、使用微信的流量、使用淘宝的流量、在QQ音乐听音乐的流量。
针对流量段中会话的确定方式也可以是:将流量段按照三元组划分成不同的会话。三元组信息包括源地址、目标地址以及传输层协议。例如,在包含服务端和客户端的场景中,将流量段中客户端的源地址、服务端的目标地址以及客户端和服务端之间的传输层协议的流量划分成一个会话。
针对流量段中会话的确定方式还可以是:将流量段按照五元组划分成不同的会话。其中五元组的内容包括:源端口、源IP地址、目的端口、目的IP地址、传输协议类型。将五元组内容完全相同的流量划分为同一个会话。例如,用户使用同一个终端访问同一个网络的一次交互流量满足源端口、源IP地址、目的端口、目的IP地址、传输协议类型相同,就将这个流量划分为一个会话。
步骤202,确定N个会话中每个会话对应的会话特征。
每个会话中一般都包括多个数据包,不同会话之间的数据包格式、传输协议等也可能不同。通过从数据包提取的信息,可以得到会话的会话特征。如,会话特征可以包括数据包数量、上行报文数量、下行报文数量、会话开始间隔时间、会话协议类型、传输控制协议(transmission control protocol,TCP)窗口大小等中的一项或多项。
其中,数据包数量为在一个会话中传输的数据包数量。以会话1为例,假设,在会话1的持续时间中,共传输了10个数据包,那么,对于会话1来说,数据包数量这个特征表征的特征值就是10。
上行报文数量,可以是从客户端发送到服务端的报文数量,比如,客户端向服务端发送的请求登录报文的数量、请求获取数据的报文的数量等。以图1中的场景为例,攻击终端121向服务器111发送请求登录的报文,如果在一个会话中,攻击终端121向服务器111发送的请求登录的报文过多,那么就有可能是一种非法登录。因此,通过检测上行报文数量,可以有效地发现异常流量。上行报文数量可以是单一类型的如请求登录报文的数量,也可以是各种类型的上行报文的数量之和,如请求登录报文的数量和请求获取数据的报文的数量之和。
下行报文数量,是从服务端返回到客户端的报文数量,比如,服务端向客户端返回的登录失败的报文的数量。仍然以图1中的场景为例,攻击终端121向服务器111发送请求登录的报文,服务器111向攻击终端121返回登录成功的报文、登录失败的报文。如果在一个会话中返回的登录失败的报文的数量过多,那么攻击终端121就有可能是不合法的终端,可以对其进行封禁。同样,下行报文数量可以是单一类型的如登录成功的报文的数量,也可以是各种类型的下行报文的数量之和。
会话开始时间间隔指的开始时间相邻的两个会话,第一个会话的开始时刻和第二个回话开始时刻之间的间隔。以图3中会话1和会话2为例,会话1的开始时刻为t1,会话2的开始时刻为t2,那么会话1和会话2的时间间隔即为t2-t1。在确定会话特征时,既可以将这个时间间隔可以作为会话1的特征,也可以将这个时间间隔可以作为会话2的特征。使用会话开始时间间隔判断异常流量是由于,假设会话1是录入用户名的会话,会话2是录入与用户名相对应的密码的会话,如果会话1和会话2之间的间隔过长,那么,就有可能是由于用户名和密码由不同的用户录入导致的,这并不是一种合法的登录方式。因此,在这种情况下,就可以通过监测两个会话之间的时间间隔来判断是不是有异常流量产生。
会话协议类型,常用的网络协议为传输控制协议(transmission controlprotocol,TCP)/IP协议,其中包括TCP(协议类型6)、用户数据报协议(user datagramprotocol,UDP)(协议类型17)、互联网控制协议(Internet Control Message Protocol,ICMP)(协议类型1)等。比如在主机与路由器之间进行控制信息传递的时候,如果出现差错,数据包会利用主机进行即时发送,并自动返回描述错误的信息。若发生ICMP欺骗行为,目标主机会大量发送ICMP报文,在长期发送大量ICMP数据包的情况下,会造成目标主机占用大量CPU资源,最终造成系统瘫痪。在这种情况下,就可以通过监测ICMP协议类型来判断是不是有异常流量产生。
TCP窗口大小,只要处于发送窗口范围中的数据包都可以被发送,不需要等待前面数据包的ack包,解决了数据包发送效率低下的问题。比如窗口大小初始为5,发送方可以接连发送5个数据包而不需要等待ack包。通常情况下,窗口大小较为稳定,若出现未收到接收方的回包,出现异常的情况,则会重新进行发送,导致待发送数据包增加,为避免丢包,窗口会自动增加(滑动窗口机制)。在这种情况下,就可以通过监测窗口大小来判断是不是有异常流量产生。
应理解,凡是可以用于分析流量是否异常的特征,都可以作为会话特征,在此不再一一赘述。
步骤203,基于N个会话的同一会话特征,构建会话特征的特征波。
其中,特征波包括与N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在会话特征的特征值。
具体来说,基于同一会话特征,确定N个会话在该会话特征下的特征值;通过N个会话的时序关系,在坐标系下确定N个会话在横轴方向的位置关系,并基于坐标系下纵轴表征的特征值,确定N个会话在纵轴方向的位置关系,从而得到了N个特征点。特征波可以是基于N个特征点来构建的,可以是将N个特征点连接在一起构成的,也可以是基于N个特征点进行拟合得到的。
N个会话的时序关系可以是通过会话的开始时间为准,将每个会话开始的时间作为会话对应特征点的横坐标,可以有效的避免会话重叠的情况,避免特征点选确定不准确,从而影响特征波,有效的提高了异常流量检测的准确性。
步骤204,若特征波中存在波动区域,对波动区域进行特征提取,得到会话特征对应的区域特征。
波动区域可以认为是在特征波中出现波动比较大的区域,通常是指变化明显的区域,大多体现在特征值的变化较大的区域。
如图4所示,特征波中有很多类似于“山峰”的凸波,有的凸波变化大,有的凸波变化小。以图中一个明显的凸波(从低点B至高点C再至低点D)为例,可以看出凸波由连续的波形上升区间BC和波形下降区间CD组成的。
确定特征波中存在波动区域之后,就对波动区域进行特征提取得到区域特征。波动区域为一图形区域,进行区域特征提取,特征量相对会比较小,如区域特征可以包括以下一项或多项:波动区域的持续时间、波动区域的波形上升区间的上升斜率、波动区域的波形下降区间的下降斜率、波动区域的面积、波动区域的峰值。
步骤205,基于会话特征对应的区域特征,确定流量段是否异常。
一种可能的实现方式中,如果全部区域特征均超过了各自对应的阈值,则确定流量段检测结果异常。
另一种可能的实现方式中,如果超过设定数量的区域特征超过了各自对应的阈值,则确定流量段检测结果异常。
优选地,对每个区域特征超过对应阈值的百分比相加,若超过预先设定的百分比阈值,则确定流量段检测结果异常。例如,设定的百分比阈值为200%,其中波动区域的持续时间t0超过持续时间阈值T20%,波动上升区间的上升斜率k1超过上升斜率域值K180%,波动下降区间的下降斜率k2超过下降斜率阈值K230%,波动区域的面积s超过面积阈值S100%,波动区域的峰值h0超过峰值阈值H010%,那么每个区域特征超过对应阈值的百分比相加为240%,超过了预先设定的百分比阈值200%,则确定流量段检测结果异常。
波动区域是由于特征值明显大于其他区域的才产生的,针对波动区域进行区域特征提取,更容易发现会话特征的异常,并且对波动区域进行二次特征提取,计算较为简单。
一种可实现的方式为:在获取到上述区域特征之后,将会话特征对应的区域特征输入会话特征对应的异常检测模型中,得到会话特征对应的流量段检测结果;基于多个会话特征的流量段检测结果,确定流量段是否异常。
一种可能的实现方式中,所有会话特征的流量段检测结果异常,才确定流量段异常。如图3所示,如果特征1、特征2、特征3……特征n的流量段检测结果均异常,则确定T1时间内的流量段异常。
另一种可能的实现方式中,超过X个会话特征的流量段检测结果异常,就确定流量段异常,X的数值可以根据具体的提取会话特征的个数设置,X数值越大,则说明异常流量检测的条件越宽松;X数值越小,则说明异常流量检测的条件越严格。继续如图3所示,如果特征1、特征2、特征3……特征n的流量段检测结果中,有X+1个特征的流量段检测结果异常,则确定T1时间内的流量段异常。
例如,针对于T1时间内的流量段,共提取了会话1、会话2、会话3、会话4……会话n的数据包数量、上行报文数量、下行报文数量、会话开始间隔时间这4个会话特征。将X设置为2,即数据包数量、上行报文数量、下行报文数量、会话开始间隔时间这4个会话特征中,有3个或4个会话特征对应的流量段检测结果异常,就确定T1时间内的流量段异常。
通过上述方式,仅需要将提取的区域特征输入已训练好的异常检测模型中,就可以得到多个会话特征的流量段检测结果,进而得到流量段是否异常。因此在异常流量检测过程中,无需对每一个规划进行特征分析,节省了大量的时间成本。
图3示例性地示出本申请实施例提供的一种流量段划分方法示意图。以图3为例进行上述流程的具体介绍。
如图3中①所示,对于T1时间内的流量段,可以按照五元组的划分方式划分成会话1、会话2、会话3、会话4……会话n,每一个会话开始的时间和持续的时间不相同,并将会话在时间轴上进行排序。
可选的,将会话按照会话开始的时间排序。如图3所示,会话1开始的时间为t1时刻,对应时间轴上的t1处;会话2开始的时间为t2时刻,对应时间轴上的t2处;会话3开始的时间为t3时刻,对应时间轴上的t3处;会话4开始的时间为t4时刻,对应时间轴上的t4处……会话n开始的时间为tn时刻,对应时间轴上的tn处。对于在T1时间内开始,并且持续到T2时间内的会话m,在统计时,可以按照如下三种方式进行划分:
方式一:将会话m划分至T1时间内的流量段中;
方式二:将会话m划分至T2时间内的流量段中;
上述方式一和方式二中,会话m的各个特征均属于一个流量段。
方式三:将会话m分割为两个会话,会话m1、会话m2。会话m1开始时刻是tm时刻,结束时刻是T1时间段的末尾时刻;会话m2的开始时刻是T2时间段的零时刻,结束时刻是会话m的结束时刻。
上述将会话按照会话开始的时间排序只是对会话进行时间上的排序的一种方式,此外还可以按照会话结束的时间对会话进行排序,凡是能够将会话在时间轴上进行排序的方式,均在本申请的保护范围之内,在此不再一一赘述。
如图3中②所示,以会话n为例,提取会话n的n个特征,分别为特征1、特征2、特征3……特征n。
如图3中③所示,针对会话特征:特征1、特征2、特征3……特征n分别获取每个会话的特征值。以特征1为例,分别获取会话1的特征值1.1、会话2的特征值1.2、会话3的特征值1.3……会话n的特征值1.n。每个特征点的横坐标是对应会话在时序上的表征值,例如,这个表征值可以是每个会话的开始时间,也可以是每个会话的结束时间。如图3所示,会话1的表征值是t1、会话2的表征值是t2、会话3的表征值是t3、会话4的表征值是t4……会话n的表征值是tn。
如图3中的④所示,继续以特征1为例,根据每个会话在时序上的表征值以及每个会话的特征值构建会话特征的特征波。时序即为步骤201中所述的会话在时间轴上的排序。那么,每个特征点的横坐标是会话在时序上的表征值,每个特征点的纵坐标是每个会话的特征值。
以下介绍特征波的构建。图4示例性示出本申请实施例提供的一种会话特征波示意图。如图4所示,以会话的数据包数量这个特征为例:在一个20秒的流量段中,共有17个会话,对应17个特征点。每个特征点的横坐标是每个会话的开始时间,每个特征点的纵坐标是该段会话中产生的数据包的数量。以图4中的特征点A为例,特征点A对应的会话a开始时间是在第6秒,在会话a持续的时间段内共产生了9个数据包。需要说明的是,位于图4中位于流量段末尾的特征点E对应的会话e可以持续到下一个流量段中,这种情况下,只统计位于这个流量段内的时间中产生的数据包数量,也可以统计整个会话产生的数据包数量。
确定好各个特征点之后,使用Spline插值方法,对特征点进行曲线拟合得到如图4所示的特征波。
从图4中可以看出特征波中包含多个凸波,针对特征波中的各凸波,可以将满足如下条件的凸波作为波动区域:特征波中波形上升幅度超过幅度阈值且波形上升幅度对应的时间跨度大于时间阈值。此种方式融合了幅度阈值和时间阈值的考量,在波动效果上更加。
继续如图4所示,假设设置的时间阈值为2秒,设置的幅度阈值为10。从特征点B到特征点C的数据包数量的特征值的上升幅度为14,超过了幅度阈值10,并且从特征点B到特征点C的时间间隔为3.05秒,超过了设定的时间阈值2秒。因此就可以确定,图4所示的特征波中存在波动区域,即特征点B至特征点D之间的区域。
图5示例性示出本申请实施例提供的另一种会话特征波示意图。纵轴表示一个特征的特征值,波动区域为特征点B到特征点D之间的区域,那么需要获取的区域特征就包括波动区域的持续时间t0、波动区域的波形上升区间BC的上升斜率k1、波动区域的波形下降区间CD的下降斜率k2、波动区域的面积s、波动区域的峰值h0。
其中,波动区域的持续时间t0=t2-t1;波形上升区间的上升斜率k1=(f1(t0)-f1(t1))/(t0-t1);波形下降区间的下降斜率k2=(f1(t2)-f1(t0))/(t2-t0);波动区域的面积
其中,异常检测模型是通过历史数据进行模型训练得到的。可选的,在异常检测模型中设置了针对于不同会话特征的波动区域的持续时间阈值T、波动上升区间的上升斜率阈值K1、波动下降区间的下降斜率阈值K2、波动区域的面积阈值S、波动区域的峰值阈值H0这5个阈值。
图6示例性示出本申请实施例提供的又一种会话特征波示意图。如图6所述的特征波,通过计算所得,图6中的每一个凸波均不满足波形上升幅度超过幅度阈值且波形上升幅度对应的时间跨度大于时间阈值的条件,就确定如图6所示的特征波中不存在波动区域。
进一步地,如果一个流量段中任一会话特征的特征波均不存在波动区域,则确定流量段无异常流量。例如,如图3所示,在T1时间内的流量段中,特征1对应的特征波1、特征2对应的特征波2、特征3对应的特征波3……特征n对应的特征波n均不存在波动区域,就确定T1时间内的流量段中无异常流量。
在上述方式中,基于N个会话的同一会话特征构建会话特征的特征波,着眼于特征波的波动区域,根据波动区域的区域特征,确定流量段是否异常。一方面通过同一会话特征构建特征波,特征波中的特征点的横坐标用于在时序上表征对应的会话,特征点的纵坐标用于表征对应会话在会话特征的特征值,该方式从时序角度对多个会话进行分析,因而从多会话角度提供了异常流量检测的方法,而非对单会话进行会话特征提取并分析;另一方面,由于是针对特征波的波动区域进行异常判断,加上波动区域的区域特征较少,因而进一步减少了计算量,从而提高了异常流量检测的效率。
基于相同的技术构思,本申请实施例还提供了一种异常流量检测装置。图7示例性地示出本申请实施例提供的一种异常流量检测装置示意图,该装置可以执行前述异常流量检测方法,如图7所示,该装置包括:确定模块701、特征波构建模块702、提取模块703、流量检测模块704;
所述确定模块701,用于确定流量段内的N个会话;所述流量段是通过采集设定时长的流量数据得到的;N为正整数;
所述确定模块701,还用于确定所述N个会话中每个会话对应的会话特征;
所述特征波构建模块,用于基于所述N个会话的同一会话特征,构建所述会话特征的特征波;
所述提取模块703,用于若所述特征波中存在波动区域,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征;
所述流量检测模块704,用于基于所述会话特征对应的区域特征,确定所述流量段是否异常;其中,所述特征波包括与所述N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在所述会话特征的特征值。
基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如图2所示意的方法。
基于相同的技术构思,本发明实施例还提供了一种计算机可读存储介质,当所述计算机程序产品在处理器上运行时,实现如图2所示意的方法。
基于相同的技术构思,本发明实施例还提供了一种计算机程序产品,当所述计算机程序产品在处理器上运行时,实现如图2所示意的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (9)
1.一种异常流量检测方法,其特征在于,所述方法包括:
确定流量段内的N个会话;所述流量段是通过采集设定时长的流量数据得到的;N为正整数;
确定所述N个会话中每个会话对应的会话特征;
基于所述N个会话的同一会话特征,构建所述会话特征的特征波;若所述特征波中存在波动区域,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征;基于所述会话特征对应的区域特征,确定所述流量段是否异常;其中,
所述特征波包括与所述N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在所述会话特征的特征值;
对所述波动区域进行特征提取,得到所述会话特征对应的区域特征,包括:
确定所述波动区域的持续时间;和/或
确定所述波动区域的波形上升区间的上升斜率;和/或
确定所述波动区域的波形下降区间的下降斜率;和/或
确定所述波动区域的面积;和/或,确定所述波动区域的峰值;
从而得到所述会话特征对应的区域特征。
2.如权利要求1所述的方法,其特征在于,基于所述会话特征对应的区域特征,确定所述流量段是否异常,包括:
针对任一会话特征,将所述会话特征对应的区域特征输入所述会话特征对应的异常检测模型,得到所述会话特征对应的流量段检测结果;
基于多个会话特征的流量段检测结果,确定所述流量段是否异常。
3.如权利要求1所述的方法,其特征在于,通过如下方式确定所述特征波中存在波动区域,包括:
确定所述特征波中波形上升幅度超过幅度阈值且所述波形上升幅度对应的时间跨度大于时间阈值的凸波;所述凸波是由连续的波形上升区间和波形下降区间组成的;
将所述凸波作为所述波动区域。
4.如权利要求1所述的方法,其特征在于,基于所述N个会话的同一会话特征,构建所述会话特征的特征波,包括:
确定每个会话的会话开始时间,将会话开始时间作为会话对应特征点的横坐标;
将每个会话的所述会话特征的特征值作为会话对应特征点的纵坐标;
通过每个会话对应的特征点,构建所述会话特征的特征波。
5.如权利要求2所述的方法,其特征在于,所述多个会话特征包括以下至少两项:
数据包数量、上行报文数量、下行报文数量、会话开始间隔时间。
6.如权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
若任一会话特征的特征波中均不存在波动区域,则确定所述流量段无异常流量。
7.一种异常流量检测装置,其特征在于,所述装置包括:确定模块、特征波构建模块、提取模块、流量检测模块;
所述确定模块,用于确定流量段内的N个会话;所述流量段是通过采集设定时长的流量数据得到的;N为正整数;
所述确定模块,还用于确定所述N个会话中每个会话对应的会话特征;
所述特征波构建模块,用于基于所述N个会话的同一会话特征,构建所述会话特征的特征波;
所述提取模块,用于若所述特征波中存在波动区域,对所述波动区域进行特征提取,得到所述会话特征对应的区域特征;
所述流量检测模块,用于基于所述会话特征对应的区域特征,确定所述流量段是否异常;其中,所述特征波包括与所述N个会话一一对应的N个特征点,每个特征点的横坐标用于在时序上表征对应的会话,每个特征点的纵坐标用于表征对应会话在所述会话特征的特征值;
所述提取模块,具体用于确定所述波动区域的持续时间;和/或
确定所述波动区域的波形上升区间的上升斜率;和/或
确定所述波动区域的波形下降区间的下降斜率;和/或
确定所述波动区域的面积;和/或,确定所述波动区域的峰值;
从而得到所述会话特征对应的区域特征。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被运行时,执行如权利要求1至6中任一项所述的方法。
9.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1至6任一权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571723.1A CN115037528B (zh) | 2022-05-24 | 2022-05-24 | 一种异常流量检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571723.1A CN115037528B (zh) | 2022-05-24 | 2022-05-24 | 一种异常流量检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115037528A CN115037528A (zh) | 2022-09-09 |
CN115037528B true CN115037528B (zh) | 2023-11-03 |
Family
ID=83120926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210571723.1A Active CN115037528B (zh) | 2022-05-24 | 2022-05-24 | 一种异常流量检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115037528B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027546A (zh) * | 2016-06-28 | 2016-10-12 | 华为技术有限公司 | 网络攻击的检测方法、装置及系统 |
WO2017193271A1 (zh) * | 2016-05-10 | 2017-11-16 | 华为技术有限公司 | 检测网络攻击的方法及设备 |
US10003607B1 (en) * | 2016-03-24 | 2018-06-19 | EMC IP Holding Company LLC | Automated detection of session-based access anomalies in a computer network through processing of session data |
CN109873832A (zh) * | 2019-03-15 | 2019-06-11 | 北京三快在线科技有限公司 | 流量识别方法、装置、电子设备和存储介质 |
CN111181923A (zh) * | 2019-12-10 | 2020-05-19 | 中移(杭州)信息技术有限公司 | 流量检测方法、装置、电子设备及存储介质 |
CN111614634A (zh) * | 2020-04-30 | 2020-09-01 | 腾讯科技(深圳)有限公司 | 流量检测方法、装置、设备及存储介质 |
CN113055335A (zh) * | 2019-12-26 | 2021-06-29 | 中国电信股份有限公司 | 用于检测通信异常的方法、装置、网络系统和存储介质 |
CN113612656A (zh) * | 2021-07-26 | 2021-11-05 | 招商银行股份有限公司 | 网络流量检测方法、装置、终端设备及存储介质 |
CN113746758A (zh) * | 2021-11-05 | 2021-12-03 | 南京敏宇数行信息技术有限公司 | 一种动态识别流量协议的方法和终端 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8214440B2 (en) * | 2007-04-10 | 2012-07-03 | International Business Machines Corporation | Controlling the display of sensitive information and managing visual clutter in a live session display area system |
US10572593B2 (en) * | 2017-02-09 | 2020-02-25 | International Business Machines Corporation | Contextual fit determination for proposed messages |
-
2022
- 2022-05-24 CN CN202210571723.1A patent/CN115037528B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10003607B1 (en) * | 2016-03-24 | 2018-06-19 | EMC IP Holding Company LLC | Automated detection of session-based access anomalies in a computer network through processing of session data |
WO2017193271A1 (zh) * | 2016-05-10 | 2017-11-16 | 华为技术有限公司 | 检测网络攻击的方法及设备 |
CN108028832A (zh) * | 2016-05-10 | 2018-05-11 | 华为技术有限公司 | 检测网络攻击的方法及设备 |
CN106027546A (zh) * | 2016-06-28 | 2016-10-12 | 华为技术有限公司 | 网络攻击的检测方法、装置及系统 |
CN109873832A (zh) * | 2019-03-15 | 2019-06-11 | 北京三快在线科技有限公司 | 流量识别方法、装置、电子设备和存储介质 |
CN111181923A (zh) * | 2019-12-10 | 2020-05-19 | 中移(杭州)信息技术有限公司 | 流量检测方法、装置、电子设备及存储介质 |
CN113055335A (zh) * | 2019-12-26 | 2021-06-29 | 中国电信股份有限公司 | 用于检测通信异常的方法、装置、网络系统和存储介质 |
CN111614634A (zh) * | 2020-04-30 | 2020-09-01 | 腾讯科技(深圳)有限公司 | 流量检测方法、装置、设备及存储介质 |
CN113612656A (zh) * | 2021-07-26 | 2021-11-05 | 招商银行股份有限公司 | 网络流量检测方法、装置、终端设备及存储介质 |
CN113746758A (zh) * | 2021-11-05 | 2021-12-03 | 南京敏宇数行信息技术有限公司 | 一种动态识别流量协议的方法和终端 |
Non-Patent Citations (2)
Title |
---|
Shohei Araki ; Yukiko Yamaguchi ; Hajime Shimada ; Hiroki Takakura ; .Unknown Attack Detection by Multistage One-Class SVM Focusing on Communication Interval.《Nerual Information Processing: 21st International Conference》.2014,全文. * |
基于传输层会话行为统计特征的恶意流量识别;张伟;刘清;;《小型微型计算机系统》(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115037528A (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11122067B2 (en) | Methods for detecting and mitigating malicious network behavior and devices thereof | |
CN109194680B (zh) | 一种网络攻击识别方法、装置及设备 | |
Strayer et al. | Botnet detection based on network behavior | |
US11757909B2 (en) | Remote configuration of security gateways | |
WO2021151300A1 (zh) | 网络攻击的安全处理方法、装置、计算机设备及介质 | |
CN103428224B (zh) | 一种智能防御DDoS攻击的方法和装置 | |
CN110417717B (zh) | 登录行为的识别方法及装置 | |
CN110166480B (zh) | 一种数据包的分析方法及装置 | |
US9860181B2 (en) | System and method for inferring traffic legitimacy through selective impairment | |
EP3334117B1 (en) | Method, apparatus and system for quantizing defence result | |
CN107204965B (zh) | 一种密码破解行为的拦截方法及系统 | |
CN110266650B (zh) | Conpot工控蜜罐的识别方法 | |
US10264004B2 (en) | System and method for connection fingerprint generation and stepping-stone traceback based on netflow | |
CN111565203B (zh) | 业务请求的防护方法、装置、系统和计算机设备 | |
WO2020037781A1 (zh) | 一种实现服务器防攻击方法及装置 | |
Thakur et al. | Detection and prevention of botnets and malware in an enterprise network | |
CN105577670A (zh) | 一种撞库攻击的告警系统 | |
CN111092900A (zh) | 服务器异常连接和扫描行为的监控方法和装置 | |
CN112217777A (zh) | 攻击回溯方法及设备 | |
CN112491883A (zh) | 一种检测web攻击的方法、装置、电子装置和存储介质 | |
CN115499230A (zh) | 网络攻击检测方法和装置、设备及存储介质 | |
CN107070851B (zh) | 基于网络流的连接指纹生成和垫脚石追溯的系统和方法 | |
CN113242260B (zh) | 攻击检测方法、装置、电子设备及存储介质 | |
CN111988421B (zh) | 基于区块链的DDoS攻击日志摘要记录方法和系统 | |
CN115037528B (zh) | 一种异常流量检测方法及装置 |
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 |