CN108111539B - 基于贝叶斯分类器的网络逃避行为检测方法 - Google Patents

基于贝叶斯分类器的网络逃避行为检测方法 Download PDF

Info

Publication number
CN108111539B
CN108111539B CN201810082613.2A CN201810082613A CN108111539B CN 108111539 B CN108111539 B CN 108111539B CN 201810082613 A CN201810082613 A CN 201810082613A CN 108111539 B CN108111539 B CN 108111539B
Authority
CN
China
Prior art keywords
symbol
network data
escape
frame
data stream
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.)
Expired - Fee Related
Application number
CN201810082613.2A
Other languages
English (en)
Other versions
CN108111539A (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.)
North China Electric Power University
Original Assignee
North China Electric Power University
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 North China Electric Power University filed Critical North China Electric Power University
Priority to CN201810082613.2A priority Critical patent/CN108111539B/zh
Publication of CN108111539A publication Critical patent/CN108111539A/zh
Application granted granted Critical
Publication of CN108111539B publication Critical patent/CN108111539B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1416Event detection, e.g. attack signature detection
    • 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
    • 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/1441Countermeasures against malicious traffic

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

本发明公开了属于人工智能与网络安全技术领域的一种基于贝叶斯分类器的网络逃避行为检测算法。该方法首先从正常网络数据流和逃避网络数据流中提取帧内特征和帧间特征并转换为符号串流,从符号串流中提取统计特征形成样本,再利用贝叶斯分类器对这些样本进行分类,从而实现了对各类原子逃避行为的在线识别。本发明不依赖于人工事先设定的检测标准或检测阈值,在面对新的逃避手段时,只要获得其足够次数的网络数据流,就能够通过对贝叶斯分类器的增量训练,实现对其的检测和识别,具有现有方法所不具备的自适应性和自学习优点,能够可靠地探测识别网络中针对NIDS/IPS的逃避行为。

Description

基于贝叶斯分类器的网络逃避行为检测方法
技术领域
本发明属于人工智能与网络安全技术领域,尤其涉及一种基于贝叶斯分类器的网络逃避行为检测方法。
背景技术
为了监控和检测恶意网络流,越来越多的企业引进了网络入侵检测/防御系统(NIDS/IPS),而逃避技术可通过伪装修改网络数据流以躲避入侵检测系统的检测和阻止,使得越来越多的恶意网络行为和攻击通过伪装变得难于检测,也使得NIDS/IPS的有效性受到了极大的挑战。现有的逃避技术从实现原理上可分为原子逃避和混合逃避。其中,原子逃避又可分为四种:IP分片和TCP分段的碎片化;被攻击目标和NIDS/IPS在协议解析上的差异;负载变换;以及应用层逃避。混合逃避则是原子逃避技术的组合。此外还有针对NIDS/IPS的拒绝服务攻击,能暂时使其瘫痪,让攻击规避其检测,也是一种逃避技术。目前业界对抗逃避技术是采用合规的方式来消除NIDS/IPS和被攻击主机在处理网络流上的歧义,例如,Handley实现了基于IP头字段和TCP状态的合规器—norm,但其对TCP分段碎片化的逃避无能为力。刘宝超等人提出了流量预处理引擎,将流向内网的流量处理后重新转发,以消除NIDS和终端主机对IP分片理解的歧义性。Vutukuru也提出了一种TCP流合规器,通过计算收到的每个TCP分段的Hash值,来确定每个分段在连接表中的TCP流队列归属,根据其序列号确定其在队列中的位置,并决定是否转发,重置或暂存,以消除NIDS和终端主机对TCP碎片的歧义性。基于这些技术的思想,大多数NIDS/IPS都已开发并加入了对IP分片和TCP碎片的处理,例如最为流行的开源NIDS——snort,分别使用Frag3和Stream5两个预处理器来处理IP层和TCP层的碎片。然而Cheng,Tsung Huan等人实际测试了FortiGate,Snort和ZyXEL三种有代表性的NIDS/IPS对原子逃避技术的防御能力,结果表明,使用TCP分段或重叠,仍然可以避开参与实验的所有NIDS/IPS;使用负载变换仍然可以避开Snort。Gorton在由TCP分段长度、TCP分段重合长度,以及段前杂质三个维度构成的空间中,对攻击流进行修改,对snort进行了测试,实验表明:由基本的TCP/IP碎片化原子逃避构成的某些组合,仍然能避开精心设计的NIDS。这些实际的测试表明,采用合规方法仍然难以防御原子逃避技术。McAfee公司认为,彻底解决逃避问题的关键在于在所有协议层中解码网络流,并实现合规,通过在下一代防火墙中内置全协议栈的合规功能,以杜绝逃避。不过,这种解决思路对防火墙软硬件的处理能力提出了非常高的要求,难以应对大型内网的海量流量,目前还没有有效技术能够可靠地探测识别网络中针对NIDS/IPS的逃避行为。
发明内容
针对上述问题,本发明提出了一种基于贝叶斯分类器的网络逃避行为检测算法,其特征在于,包括以下步骤:
步骤1、在正常网络数据流上应用逃避技术,生成不同类别的逃避网络数据流,或直接捕获由逃避技术在逃避攻击时发出的逃避网络数据流;
步骤2、分别从正常网络数据流和逃避网络数据流中提取帧内特征和帧间特征并转换成符号串,最终由网络数据流转换形成符号串流,从符号串流中提取统计特征,组成网络数据流训练样本集;
步骤3、构建贝叶斯分类器,在步骤2得到的网络数据流训练样本集上进行训练;
步骤4、利用步骤3得到的贝叶斯分类器,对待检测的网络数据流进行分类,识别该网络数据流是否为正常网络数据流,或应用了逃避技术的逃避网络数据流,若识别为逃避网络数据流,则识别出应用的逃避技术类别。
所述步骤1中,截取网络中包含TCP数据的正常网络数据流,在截取的正常数据流上应用逃避技术,并设置不同参数,生成不同参数对应的逃避网络数据流。
所述步骤2分别从正常网络数据流和逃避网络数据流的IP层和TCP层中提取帧内特征和帧间特征并转换成符号串,所述帧内特征是指由网络数据流内当前帧提取的不依赖于前后帧的特征;帧间特征是指由前后相邻帧或间隔若干帧提取的特征;
其中,从IP层提取的帧内特征包括:每个包含IP层的帧的IP层的生存时间值、分片长度值、服务类型值、IP选项值字段是否合法、是否设置了严格源路由选择、是否设置了松散源路由选择、IP标志值;
从IP层提取的帧间特征包括:本帧IP层的片偏移值与前一帧IP层的片偏移值之差;
从TCP层提取的帧内特征包括:每个包含TCP层的帧的TCP层的校验和;TCP层的分段长度;TCP层的标志字段值;TCP层的最大分段长度;TCP层的确认序号;TCP层的窗口扩大因子;
从TCP层提取的帧间特征包括:本帧TCP分段与前一帧中TCP分段的相对位置关系;TCP层的时间戳与前一帧时间戳的相对关系;TCP层的分段序号,及其相对于对方的接收窗口位置。
所述步骤2中,将从网络数据流每一帧中提取出的特征转换为符号串,从同一数据流不同帧中提取的所有符号串组成一个符号串流。
所述步骤2中,采用TF-IDF技术将符号串流转换为训练样本,转换步骤如下所述:
A1、遍历从各类网络数据流转换得到的符号串流,得到所有不同符号串构成的集合;
A2、计算每个符号串流中的各个符号串出现的归一化次数TF,用于表示该符号串对该识别符号串流所属类别的重要程度;对于符号串ti而言,在符号串流dj中的TF值计算公式如下:
Figure GDA0002616360600000041
其中,ni,j为ti在dj中出现的次数,
Figure GDA0002616360600000042
为dj中所有符号串出现的总次数;
A3、计算每个符号串的IDF值,用于表示该符号串对识别所有符号串流所属类别的重要程度;对于符号串ti而言,其IDF计算公式如下所示:
Figure GDA0002616360600000043
其中,|D|为所有符号串流的总个数,|{j:ti∈dj}|为包含ti的符号串流的个数;
A4、计算每个符号串流中的每个符号串的TF-IDF值,对于符号串流dj中的符号串ti,其TF-IDF值的计算公式为:
tfidfi,j=tfi,j×idfi
A5、将符号串流转换成行向量的数字形式,得到了一个训练样本X(j),其维数等于所有符号串流中出现过的所有不同符号串的个数|UA|,且
Figure GDA0002616360600000044
A6、将X(j)进行归一化处理,计算公式为:
Figure GDA0002616360600000045
所述步骤3构建贝叶斯分类器,优选构建朴素贝叶斯分类器,其构建方法为:
从一个网络数据流得到样本X(j),根据贝叶斯公式,利用各类别网络数据流的先验概率和似然概率进行后验概率的计算,计算的最大后验概率的所属类别即样本X(j)对应的逃避技术类yk,其中后验概率的计算方法如下所示:
1)计算各类别网络数据流的先验概率,所述各类别网络数据流的先验概率为各类符号串流数占总符号串流数的百分比,其计算公式为:
Figure GDA0002616360600000051
式中,|D|为符号串流的总个数,|yk|为第k类符号串流的个数;
2)计算各类别网络数据流的似然概率,其计算公式为:
Figure GDA0002616360600000052
式中,X(j)的类别为yk
Figure GDA0002616360600000053
表示yk类样本中符号串ti的TF-IDF值之和,
Figure GDA0002616360600000054
为yk类所有样本中不同符号串的TF-IDF值之和,其中UA为所有符号串的集合,|UA|为所有符号串的个数,α为平滑系数,且α≥0;
3)计算各类别网络数据流的后验概率,其计算公式为:
Figure GDA0002616360600000055
4)根据步骤3)计算的后验概率计算其所属类别为:
Figure GDA0002616360600000056
所述步骤4具体包括:从待检测的网络数据流中,分离出TCP会话,从会话中提取帧内和帧间特征生成符号串流,利用贝叶斯分类器从符号串流中提取的统计特征进行分类,即得到各TCP会话所属的类别。
本发明的有益效果在于:
本发明从机器学习的角度出发,通过将网络数据流转换为符号串流,并从符号串流中提取统计特征形成样本,利用贝叶斯分类器对这些样本进行分类,从而实现了对各类原子逃避行为的在线识别。与现有技术相比,本发明的方法不依赖于人工事先设定的检测标准或检测阈值,在面对新的逃避手段时,只要获得其足够次数的网络数据流,就能够通过对贝叶斯分类器的增量训练,实现对其的检测和识别,因此本发明具有现有方法所不具备的自适应性和自学习优点,能够可靠地探测识别网络中针对NIDS/IPS的逃避行为。
附图说明
附图1为基于贝叶斯分类器的网络逃避行为检测算法流程图;
附图2为ROC曲线;
具体实施方式
下面结合附图和实施例对本发明进行详细说明。
附图1为基于贝叶斯分类器的网络逃避行为检测算法流程图,如图1所示,所述算法包括以下步骤:
步骤1、在正常网络数据流上应用逃避技术,生成不同类别的逃避网络数据流,或直接捕获由逃避技术在逃避攻击时发出的逃避网络数据流;
步骤2、分别从正常网络数据流和逃避网络数据流中提取帧内特征和帧间特征并转换成符号串,最终由网络数据流转换形成符号串流,从符号串流中提取统计特征,组成网络数据流训练样本集;
步骤3、构建贝叶斯分类器,在步骤2得到的网络数据流训练样本集上进行训练;
步骤4、利用步骤3得到的贝叶斯分类器,对待检测的网络数据流进行分类,识别该网络数据流是否为正常网络数据流,或应用了逃避技术的逃避网络数据流,若识别为逃避网络数据流,则识别出应用的逃避技术类别。
具体的,在步骤1中,由于大多数逃避技术都是叠加在正常的TCP流之上,因此本发明主要针对包含TCP数据的网络数据流的逃避行为进行检测。在需要被保护的网络中,当确保无逃避行为发生时,截取网络中的正常通讯的网络数据流;通过在这些正常数据流上应用逃避软件,并为逃避软件设置不同的逃避技术参数,可以生成各类逃避技术的网络数据流。也可以直接捕获逃避软件针对目标机发出的各类实际逃避攻击时的网络数据流。例如,对于正常的网络数据流A,设置逃避软件采用TCP分段大小为8的逃避技术参数,应用于A上,生成的新的网络数据流A_tcpseg_8,即由A生成的采用TCP分段这类逃避技术的一个逃避网络数据流;当设置逃避软件采用IP分片大小为8的参数应用于A上时,生成的A_IPFrag_8,即为由A生成的采用IP分片这类逃避技术的一个逃避网络数据流。
具体的,在步骤2中,提取的帧内特征是指那些由网络流内当前帧即可提取的特征,其计算过程不依赖于前后帧;帧间特征与帧内特征相反,是从前后相邻帧,甚至是间隔了若干帧的几帧间计算得到的。IP分片TCP分段的碎片化是原子逃避的手段之一,是通过干扰数据包解码和协议分析器,使得NIDS/IPS无法恢复出参与匹配的流量来实现逃避的,主要技术有如下两种:
1)尽可能使用最小的IP分片或TCP分段发送数据,使得NIDS/IPS不能完全重组这些IP分片或TCP分段以恢复原始的内容,结果NIDS/IPS可能会忽视嵌入在该内容中的攻击。例如,NIDS会在数据包的负载中寻找一个特征ATTACK,但是攻击者故意将带有该特征的负载分割为2个段,一个含有ATT,另一个含有ACK。如果NIDS不重组这两个分段,在任意一个分段中,将不能够找到该特征,从而攻击者能够规避NIDS的检测。由此可见,从网络流每帧中获取该帧中IP层的长度,以及TCP层的长度作为描述“IP分片TCP分段的碎片化”逃避方式的特征,并以此作为帧内特征之一。
2)使不同大小的分片或分段乱序到达,并在位置(IP片偏移或TCP序列号)上是相互重叠的,这种IP分片或TCP分段的重叠,会导致新数据重叠旧数据。如果NIDS/IPS和终端主机处理重复/重叠的分片或分段的方式不一致,给定同一个分片或分段流,接收同样分片或分段的NIDS/IPS和终端主机可能会重组出完全不同的IP数据报或TCP流,NIDS/IPS重组出不含攻击的流量,而终端主机重组出包含攻击的,从而被攻击,但NIDS/IPS未探测出。如果采用某种方式对当前帧的TCP的分段,与上一个包含TCP层的帧的TCP分段的相对位置进行编码,那么采用TCP分段重叠或者乱序逃避的数据流,在这一编码上的取值将不同于正常数据流。将包含TCP层的相邻两帧获得的编码值作为帧间特征之一。类似的,将当前帧中IP层的分片偏移,相对于相邻帧中IP层的分片偏移进行编码,作为刻画IP分片间相对位置的帧间特征。
原子逃避的另一种手段,是利用被攻击目标和NIDS/IPS在协议解析上的差异,造成NIDS/IPS和被攻击目标对相同的帧采取不同的动作(保留或丢弃),实现NIDS/IPS最后保留的流量不包含攻击,而被攻击目标最后保留的流量包含攻击。例如使用IPv4选项进行此种逃避,除了最初建立连接的三次握手的数据帧外,每次攻击机向目标机发送数据帧时,都先发送一个重复的IPv4数据帧,每个重复数据帧包含依次增长的序号(四字节)作为IP头的选项字段值,如第一个重复帧选项内容为0x00000000,第二个重复帧选项内容为0x00000001,第n个重复帧选项内容为0x0000000(n-1)。根据重复帧的载荷的不同,此种逃避又有以下几种表象:重复包负载为0x00、重复包具有随机负载、重复包具有随机字母负载、重复包具有随机字母数字负载、重复包具有组合负载、重复包具有空负载、重复包具有除字母数字外相同的负载、重复包具有除字母外相同的负载。由此可见,当采用IPv4选项进行逃避时,尽管重复帧的负载存在很多可能性,但由于使用了正常通讯中较少使用的IPv4选项值,且其值逐渐递增,导致重复帧的IPv4选项字段出现非正常值,因此可将这一现象编码成为帧内特征。
具体的,在步骤2中,按约定的语法规则,将从网络数据流每一帧中提取出的特征转换为符号串,从同一数据流不同帧中提取的所有符号串组成一个符号串流,例如从第j个网络流中提取出第j个符号串流为dj。语法规则说明了符号串的构成要素,将数值型特征,布尔型特征,关系型特征转换为符号串的精确方式,以及同一帧的各符号串的排列方式,不同帧的符号串排列方式等。
假设从所有网络数据流转换得到的符号串组成符号串集合UA,按特定的顺序罗列该集合中所有的符号串,每个符号串均具有唯一的顺序下标。依据集合UA,计算每个符号串在网络数据流转换得到的符号串流中的数字统计特征。例如:对下标为i的符号串ti而言,可依据UA计算其在符号串流dj(从第i个网络数据流转换得到)中的数字统计特征τi,j。将这些数字统计特征按符号串ti顺序下标i递增的方式组合成向量
Figure GDA0002616360600000091
即为从符号串流dj所生成的样本。以相同的方式为所有网络数据流生成样本,这些样本和它们的所属类别一起构成了训练样本集,其中,所属类别是指正常数据流类,或某种逃避技术。
具体的,在步骤3中,构建贝叶斯分类器,根据对符号串间依赖关系的不同假设,可采用的贝叶斯分类器包括但不限于朴素贝叶斯分类器NB,树增强型朴素贝叶斯分类器TAN,BN增强型朴素贝叶斯分类器BAN以及多重贝叶斯网络BMN。所述朴素贝叶斯分类器NB的符号串间相互独立,树增强型朴素贝叶斯分类器TAN的符号串间的依赖由最大带权生成树来确定,BN增强型朴素贝叶斯分类器BAN的符号串间的依赖由有向图来确定,多重贝叶斯网络BMN在不同的逃避类中,符号串间的依赖也不同。本发明优选朴素贝叶斯分类器进行分类,其构建方法如下所述:
从一个网络数据流得到样本X(j),根据贝叶斯公式,利用各类别网络数据流的先验概率和似然概率进行后验概率的计算,计算的最大后验概率的所属类别即样本X(j)对应的逃避技术类yk,其中后验概率的计算方法如下所示:
1)计算各类别网络数据流的先验概率,所述各类别网络数据流的先验概率为各类符号串流数占总符号串流数的百分比,其计算公式为:
Figure GDA0002616360600000092
式中,|D|为符号串流的总个数,|yk|为第k类符号串流的个数;
2)计算各类别网络数据流的似然概率,其计算公式为:
Figure GDA0002616360600000101
式中,X(j)的类别为yk
Figure GDA0002616360600000102
表示yk类样本中符号串ti的TF-IDF值之和,
Figure GDA0002616360600000103
为yk类所有样本中不同符号串的TF-IDF值之和,其中UA为所有符号串的集合,|UA|为所有符号串的个数,α为平滑系数,且α≥0;
3)计算各类别网络数据流的后验概率,其计算公式为:
Figure GDA0002616360600000104
4)根据步骤3)计算的后验概率计算其所属类别为:
Figure GDA0002616360600000105
具体的,在步骤4中,利用步骤3得到的贝叶斯分类器,对需要检测的网络数据流进行分类,识别是否为正常的网络流,或是应用了某种逃避技术,若采用了逃避技术,则识别出逃避技术的类别。具体步骤如下所述:从需要检测的网络数据流中分离出TCP会话,按照步骤2中的方法提取帧内和帧间特征,转换成符号串,将TCP会话流转换成符号串流,用步骤3得到的贝叶斯分类器对从符号串流中提取的统计特征进行分类,即得到各TCP会话所属的类别,即未采用逃避技术或采用的逃避技术的类别。
实施例1
为验证本发明对网络逃避行为的检测效果,本实施例从需要被保护的网络中采集了29922个正常网络数据流,并应用了8种逃避技术,分别得到了tcp_chaff类逃避技术样本26012个,ip_frag类逃避技术样本44736个,tcp_seg类逃避技术样本44244个,ip_chaff类逃避技术样本20691个,ip_ttl类逃避技术样本29922个,ip_tos类逃避技术样本20702个,ip_opt类逃避技术样本22584个,tcp_opt类逃避技术样本41404个。总共8类,280217个样本。具体实施步骤如下所述:
步骤1:为了生成不同类别的逃避网络数据流,需要在正常网络数据流上应用各类逃避技术,本实施例在交换机端口镜像的镜像口上连接配备千兆网卡的高性能计算机,使用tcpdump类的录包软件保存网络数据流,保存成pcap格式的文件。在不同时间段里,连续的录制,生成多个pcap格式的文件,以确保获得的文件里保存了被保护网络中所有类型的正常网络数据流。从这些正常网络数据流中提取特征,即可得到训练样本集中正常数据流类(非逃避)的样本。本实施例使用在开源软件tcpflow的基础上定制开发的软件,从上述pcap格式的文件中分离出各个TCP会话,并将各会话所包含的帧分别另存为以各个TCP会话命名的pcap文件中,因此得到大量pcap格式的文件,每个文件只存储一个正常网络数据流的所有帧,接下来,本实施例使用在开源软件fragroute的基础上定制开发的basicevasionapply软件,对每个包含正常数据流的pcap文件,施加不同类型的带有不同逃避参数的逃避技术,并将生成的结果pcap文件分别保存到以相应类别逃避技术命名的目录下。依次遍历所有正常数据流的pcap文件,生成叠加了不同参数的各类逃避行为的逃避网络数据流。其中,basicevasionapply软件能够实现从pcap文件中读取各帧,根据所要施加的逃避技术,或对该帧进行修改,或删除该帧,或添加新帧,并将修改过的,以及新添加的所有帧保存成新的结果pcap文件的功能。此外,basicevasionapply还额外实现了判断某种逃避技术是否适用于该pcap文件所保存的网络数据流的功能,若该逃避技术不适用,则将不会生成相应的结果pcap文件。
步骤2:本实施例分别从正常网络数据流和各逃避类网络数据流中,提取帧内和帧间特征进行编码,形成符号串流,从符号串流中提取统计特征,构成训练样本集,组成训练样本集。将8个逃避技术类别和正常数据流类进行编码,编码方式如表1所示:
表1类编码方案
Tcp_chaff Ip_frag Tcp_seg normal Ip_chaff Ip_ttl Ip_tos Ip_opt Tcp_opt
0 1 2 3 4 5 6 7 8
每个样本X(m)根据生成它的网络数据流所属的类别,按表1获得其标签值y(j),即构成训练样本集{X,y}中的一项。从IP层提取的帧内特征包括:每个包含IP层的帧的IP层的生存时间值(ttl);分片长度值;服务类型值(tos);IP选项值(option)字段是否合法;是否设置了严格源路由选择;是否设置了松散源路由选择;IP标志值(flags);从IP层提取的帧间特征包括:本帧IP层的片偏移值与前一帧IP层的片偏移值之差;从TCP层提取的帧内及帧间特征包括:每个包含TCP层的帧的TCP层的校验和;TCP层的分段长度;本帧TCP分段与前一帧中TCP分段的相对位置关系;TCP层的标志字段值(flags);TCP层的时间戳字段值(timestamp);TCP层的分段序号(seq),及其相对于对方的接收窗口位置;TCP层的最大分段长度(mss);TCP层的确认序号(ack);TCP层的窗口扩大因子(wscale)。
将从帧中提取到的各特征按照表2-表4的符号串流生成语法规则转换成符号串,再从一个网络流各帧所得到的符号串组成一个符号串流。本实施例将一个包含了4帧的网络数据流映射为符号串流,其结果如表5所示。
表2符号串流生成语法规则1
Figure GDA0002616360600000121
表3符号串流生成语法规则2
Figure GDA0002616360600000131
表4符号串含义以及与帧内和帧间特征的对应关系
Figure GDA0002616360600000132
Figure GDA0002616360600000141
表5符号串流示例
Figure GDA0002616360600000142
接下来从符号串流中提取统计特征,转换为数字形式的训练样本。本实施例利用TF-IDF(term frequency–inverse document frequency)词频-逆向文件频率技术将符号串流转换为训练样本,转换步骤如下所述:
A1、首先遍历所有从各类网络数据流转换得到的符号串流,得到所有不同符号串所构成的集合。
A2、计算每个符号串流中的每个符号串出现的归一化次数TF,用于表示该符号串对该识别符号串流所属类别的重要程度。对于符号串ti而言,在符号串流dj中的TF值计算公式如下:
Figure GDA0002616360600000151
其中,ni,j为ti在dj中出现的次数,
Figure GDA0002616360600000152
为dj中所有符号串出现的总次数。
A3、计算每个符号串的IDF值,用于表示该符号串对识别所有符号串流所属类别的重要程度。对于符号串ti而言,其IDF计算公式如下所示:
Figure GDA0002616360600000153
其中,|D|为所有符号串流的总个数,|{j:ti∈dj}|为包含ti(即ni,j≠0)的符号串流的个数。
A4、计算每个符号串流中的每个符号串的TF-IDF值,对于符号串流dj中的符号串ti,其TF-IDF值的计算公式为:
tfidfi,j=tfi,j×idfi
将符号串流转换成行向量的数字形式,得到了一个训练样本X(j),其维数等于所有符号串流中出现过的所有不同符号串的个数|UA|,且
Figure GDA0002616360600000154
最后将X(j)进行归一化,即
Figure GDA0002616360600000155
表6为训练样本生成示例,是将表5的符号串流按照TF-IDF技术转换成的行向量数字形式。
表6训练样本生成示例
Figure GDA0002616360600000156
步骤3:构建贝叶斯分类器,并在步骤2获得的训练样本集上完成训练,本实施例采用多项式型朴素贝叶斯分类器来完成分类,训练过程包括计算各类别网络数据流的先验概率和各符号串的似然概率。对于新的待分类的样本,利用类先验概率和似然概率计算属于各类的后验概率及其所属类别。
所述各类别网络数据流的先验概率,为该类符号串流数(网络数据流数)占总符号串流数的百分比,即:
Figure GDA0002616360600000161
其中,|D|为所有符号串流的总个数,|yk|为第k类符号串流的个数。
所述各符号串的似然概率的计算公式为:
Figure GDA0002616360600000162
式中,X(j)的类别为yk
Figure GDA0002616360600000163
表示yk类样本中符号串ti的TF-IDF值之和,
Figure GDA0002616360600000164
为yk类所有样本中不同符号串的TF-IDF值之和,其中UA为所有符号串的集合,|UA|为所有符号串的个数,α≥0为平滑系数,本实施例中取α=0.01。
所述各类的后验概率的计算公式为:
Figure GDA0002616360600000165
其所属类别为:
Figure GDA0002616360600000166
本实施例在步骤2所获得的训练样本集上,使用k折交叉验证法训练多项式型朴素贝叶斯分类器,并评估其分类性能。通过表7、表8以及附图2显示了本实施例对各类逃避行为的分类识别能力。其中,表7为混淆矩阵、表8为逃避检测性能、附图2为ROC曲线。
表7混淆矩阵
Tcp_chaff Ip_frag Tcp_seg normal Ip_chaff Ip_ttl Ip_tos Ip_opt Tcp_opt
Tcp_chaff 4231 0 50 302 0 4 0 1 506
IP_frag 0 8977 0 0 0 0 0 0 57
Tcp_seg 0 0 8675 0 0 0 0 0 76
normal 230 0 40 3700 0 390 0 0 1512
Ip_chaff 3 0 1 7 4201 7 0 0 0
IP_ttl 157 1 25 116 0 5394 0 0 380
Ip_tos 0 0 0 0 0 0 4168 0 0
Ip_opt 0 2 0 0 0 0 0 4503 0
Tcp_opt 6 3 45 386 0 0 0 0 7888
表8逃避检测性能
精度 召回率 F1 支撑集
Tcp_chaff 0.91 0.83 0.87 5094
IP_frag 1.00 0.99 1.00 9034
Tcp_seg 0.98 0.99 0.99 8751
normal 0.82 0.63 0.71 5872
Ip_chaff 1.00 1.00 1.00 4219
IP_ttl 0.93 0.89 0.91 6073
Ip_tos 1.00 1.00 1.00 4168
Ip_opt 1.00 1.00 1.00 4505
Tcp_opt 0.76 0.95 0.84 8328
步骤4:将待检测的网络数据流或实时捕获的网络数据流划分为若干TCP会话,按步骤2中的方法从会话中提取特征生成符号串流,转换成数字式样本;将数字式样本作为步骤3训练得到的分类器的输入,根据分类器的输出,检索表1,识别该序列所对应的网络流是正常的网络流,还是施加了某种逃避的网络流,并识别出逃避的方式类别。
此实施例仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (7)

1.一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,包括以下步骤:
步骤1、在正常网络数据流上应用逃避技术,生成不同类别的逃避网络数据流,或直接捕获由逃避技术在逃避攻击时发出的逃避网络数据流;
步骤2、分别从正常网络数据流和逃避网络数据流中提取帧内特征和帧间特征并转换成符号串,最终由网络数据流转换形成符号串流,从符号串流中提取统计特征,组成网络数据流训练样本集;
步骤3、构建贝叶斯分类器,在步骤2得到的网络数据流训练样本集上进行训练;
步骤4、利用步骤3得到的贝叶斯分类器,对待检测的网络数据流进行分类,识别该网络数据流是否为正常网络数据流,或应用了逃避技术的逃避网络数据流,若识别为逃避网络数据流,则识别出应用的逃避技术类别。
2.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤1中,截取网络中包含TCP数据的正常网络数据流,在截取的正常数据流上应用逃避技术,并设置不同参数,生成不同参数对应的逃避网络数据流。
3.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤2分别从正常网络数据流和逃避网络数据流的IP层和TCP层中提取帧内特征和帧间特征并转换成符号串,所述帧内特征是指由网络数据流内当前帧提取的不依赖于前后帧的特征;帧间特征是指由前后相邻帧或间隔若干帧提取的特征;
其中,从IP层提取的帧内特征包括:每个包含IP层的帧的IP层的生存时间值、分片长度值、服务类型值、IP选项值字段是否合法、是否设置了严格源路由选择、是否设置了松散源路由选择、IP标志值;
从IP层提取的帧间特征包括:本帧IP层的片偏移值与前一帧IP层的片偏移值之差;
从TCP层提取的帧内特征包括:每个包含TCP层的帧的TCP层的校验和;TCP层的分段长度;TCP层的标志字段值;TCP层的最大分段长度;TCP层的确认序号;TCP层的窗口扩大因子;
从TCP层提取的帧间特征包括:本帧TCP分段与前一帧中TCP分段的相对位置关系;TCP层的时间戳与前一帧时间戳的相对关系;TCP层的分段序号,及其相对于对方的接收窗口位置。
4.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤2中,将从网络数据流每一帧中提取出的特征转换为符号串,从同一数据流不同帧中提取的所有符号串组成一个符号串流。
5.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤2中,采用TF-IDF技术将符号串流转换为训练样本,转换步骤如下所述:
A1、遍历从各类网络数据流转换得到的符号串流,得到所有不同符号串构成的集合;
A2、计算每个符号串流中的各个符号串出现的归一化次数TF,用于表示该符号串对该识别符号串流所属类别的重要程度;对于符号串ti而言,在符号串流dj中的TF值计算公式如下:
Figure FDA0002616360590000031
其中,ni,j为ti在dj中出现的次数,
Figure FDA0002616360590000032
为dj中所有符号串出现的总次数;
A3、计算每个符号串的IDF值,用于表示该符号串对识别所有符号串流所属类别的重要程度;对于符号串ti而言,其IDF计算公式如下所示:
Figure FDA0002616360590000033
其中,|D|为所有符号串流的总个数,|{j:ti∈dj}|为包含ti的符号串流的个数;
A4、计算每个符号串流中的每个符号串的TF-IDF值,对于符号串流dj中的符号串ti,其TF-IDF值的计算公式为:
tfidfi,j=tfi,j×idfi
A5、将符号串流转换成行向量的数字形式,得到了一个训练样本X(j),其维数等于所有符号串流中出现过的所有不同符号串的个数|UA|,且
Figure FDA0002616360590000034
A6、将X(j)进行归一化处理,计算公式为:
Figure FDA0002616360590000035
6.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤3构建贝叶斯分类器,其构建方法为:
从一个网络数据流得到样本X(j),根据贝叶斯公式,利用各类别网络数据流的先验概率和似然概率进行后验概率的计算,计算的最大后验概率的所属类别即样本X(j)对应的逃避技术类yk,其中后验概率的计算方法如下所示:
1)计算各类别网络数据流的先验概率,所述各类别网络数据流的先验概率为各类符号串流数占总符号串流数的百分比,其计算公式为:
Figure FDA0002616360590000041
式中,|D|为符号串流的总个数,|yk|为第k类符号串流的个数;
2)计算各类别网络数据流的似然概率,其计算公式为:
Figure FDA0002616360590000042
式中,X(j)的类别为yk
Figure FDA0002616360590000043
表示yk类样本中符号串ti的TF-IDF值之和,
Figure FDA0002616360590000044
为yk类所有样本中不同符号串的TF-IDF值之和,其中UA为所有符号串的集合,|UA|为所有符号串的个数,α为平滑系数,且α≥0;
3)计算各类别网络数据流的后验概率,其计算公式为:
Figure FDA0002616360590000045
4)根据步骤3)计算的后验概率计算其所属类别为:
Figure FDA0002616360590000046
7.根据权利要求1所述的一种基于贝叶斯分类器的网络逃避行为检测方法,其特征在于,所述步骤4具体包括:从待检测的网络数据流中,分离出TCP会话,从会话中提取帧内和帧间特征生成符号串流,利用贝叶斯分类器对符号串流中提取的统计特征进行分类,即得到各TCP会话所属的类别。
CN201810082613.2A 2018-01-29 2018-01-29 基于贝叶斯分类器的网络逃避行为检测方法 Expired - Fee Related CN108111539B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810082613.2A CN108111539B (zh) 2018-01-29 2018-01-29 基于贝叶斯分类器的网络逃避行为检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810082613.2A CN108111539B (zh) 2018-01-29 2018-01-29 基于贝叶斯分类器的网络逃避行为检测方法

Publications (2)

Publication Number Publication Date
CN108111539A CN108111539A (zh) 2018-06-01
CN108111539B true CN108111539B (zh) 2021-03-30

Family

ID=62221106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810082613.2A Expired - Fee Related CN108111539B (zh) 2018-01-29 2018-01-29 基于贝叶斯分类器的网络逃避行为检测方法

Country Status (1)

Country Link
CN (1) CN108111539B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110213262B (zh) * 2019-05-30 2022-01-28 华北电力大学 一种基于深度q网络的全自动高级逃逸技术检测方法
CN110458209B (zh) * 2019-07-24 2021-12-28 东莞理工学院 一种针对集成树分类器的逃避攻击方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101394316B (zh) * 2008-11-11 2011-08-31 南京大学 基于完全无向图的贝叶斯的网络入侵分类方法
US20110202284A1 (en) * 2010-02-10 2011-08-18 Mcreynolds Cristopher Novel groups of biomarkers for diagnosing alzheimer's disease
CN105740712B (zh) * 2016-03-09 2018-07-24 哈尔滨工程大学 基于贝叶斯网络的Android恶意行为检测方法

Also Published As

Publication number Publication date
CN108111539A (zh) 2018-06-01

Similar Documents

Publication Publication Date Title
CN108418792B (zh) 基于深度循环神经网络的网络逃避行为检测方法
Idhammad et al. Detection system of HTTP DDoS attacks in a cloud environment based on information theoretic entropy and random forest
Singh et al. Automated Worm Fingerprinting.
Strayer et al. Detecting botnets with tight command and control
Moustaf et al. Creating novel features to anomaly network detection using DARPA-2009 data set
Liang et al. A payload-dependent packet rearranging covert channel for mobile VoIP traffic
CN113259313A (zh) 一种基于在线训练算法的恶意https流量智能分析方法
CN110417729A (zh) 一种加密流量的服务与应用分类方法及系统
KR100877911B1 (ko) 네트워크 트래픽 전이 모델을 이용한 피투피 기반 봇넷탐지방법
US20220174083A1 (en) Method and device for detecting malicious activity over encrypted secure channel
Khakpour et al. An information-theoretical approach to high-speed flow nature identification
Liu et al. Maldetect: A structure of encrypted malware traffic detection
CN108111539B (zh) 基于贝叶斯分类器的网络逃避行为检测方法
Yang et al. Deep learning approach for detecting malicious activities over encrypted secure channels
Wang et al. Clustering analysis for malicious network traffic
CN114866310A (zh) 一种恶意加密流量检测方法、终端设备及存储介质
CN113242233B (zh) 一种多分类的僵尸网络检测装置
Han et al. An effective encrypted traffic classification method based on pruning convolutional neural networks for cloud platform
Li et al. TCMal: A Hybrid Deep Learning Model for Encrypted Malicious Traffic Classification
Qin et al. Frequent episode rules for intrusive anomaly detection with internet datamining
CN109510805B (zh) 一种基于安全基线模型的网络数据安全检测方法及系统
CN115913721A (zh) 基于分层时空特征的http恶意通联流量检测方法及系统
Zhao et al. A novel malware encrypted traffic detection framework based on ensemble learning
Chen et al. A novel ensemble anomaly based approach for command and control channel detection
JP4391455B2 (ja) DDoS攻撃に対する不正アクセス検知システム及びプログラム

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210330

Termination date: 20220129