CN104283897A - 基于多数据流聚类分析的木马通信特征快速提取方法 - Google Patents

基于多数据流聚类分析的木马通信特征快速提取方法 Download PDF

Info

Publication number
CN104283897A
CN104283897A CN201410593969.4A CN201410593969A CN104283897A CN 104283897 A CN104283897 A CN 104283897A CN 201410593969 A CN201410593969 A CN 201410593969A CN 104283897 A CN104283897 A CN 104283897A
Authority
CN
China
Prior art keywords
data flow
bunch
data
wooden horse
address
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
CN201410593969.4A
Other languages
English (en)
Other versions
CN104283897B (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.)
Information Engineering University Strategic Support Force of PLA
Original Assignee
刘胜利
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 刘胜利 filed Critical 刘胜利
Priority to CN201410593969.4A priority Critical patent/CN104283897B/zh
Publication of CN104283897A publication Critical patent/CN104283897A/zh
Application granted granted Critical
Publication of CN104283897B publication Critical patent/CN104283897B/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification

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

本发明公开了一种基于网络数据流聚类的木马通信特征快速提取方法,首先,将捕获的网络数据包按照网络会话进行整理:将监控对象的IP地址和端口作为源IP地址和源端口,将数据包按照等价四元组进行会话划分;然后,按照基于时间戳的数据流聚类算法把数据流聚类成数据流簇;最后,进行木马通信特征的提取,木马通信特征的提取是指木马交互操作阶段木马通信特征的提取。本发明在对网络数据流进行聚类的基础上,以簇为单位处理网络数据流,分析木马通信行为与正常网络通信行为的差别,并结合传统的统计分析、相关分析等技术,深入挖掘二者之间的差别并提取网络通信特征,在保证检测率的同时降低误报率,利用本发明可以实现对网络中的窃密行为进行检测。

Description

基于多数据流聚类分析的木马通信特征快速提取方法
技术领域
本发明涉及一种木马通信特征的提取方法,特别是涉及一种基于多数据流聚类分析的木马通信特征快速提取方法。
背景技术
近年来,木马程序被网络黑客利用,进行信息窃取和网络破坏的行为越来越多,对用户和网络的信息安全构成严重威胁。木马最大的特点即是其行为往往带有较强的隐蔽性。木马被成功植入到目标计算机后,木马控制端必须和被控端进行通信,以便给被控端下达控制指令或者控制被控端将所获取的信息回传给控制端。基于通信行为特征分析的检测技术利用网络数据包、数据流等流量特征构建数据流轮廓模型,根据通信数据在不同的网络环境下具有的时空稳定性,建立异常检测分类模型。该方法在时效性和扩展性方面具有明显优势,有利于发现潜在的、未知的网络窃密行为和威胁,具有更广的应用前景。然而现有的基于通信行为分析的木马检测算法往往在单条数据流会话上提取一些刻画木马通信行为的特征属性,不能完全区分木马程序和正常程序的通信数据,导致误报率较高。在实际网络环境中,绝大多数数据流持续时间较短,黑客为了提高木马通信的隐蔽性,常常会将一次网络活动产生的通信数据拆分成多条数据流进行传输。因此,如何捕获一次完整的网络活动产生的多条数据流并在多数据流中有效提取木马通信特征,设计具有高检测性能且计算复杂度较低的检测算法,进而有效地检测窃密型木马的网络通信行为就成为当前一个重要的理论和技术问题。
基于通信行为的木马检测方法很多,但大部分已有方法的检测通用性较差,而且误报率较高。
Borders等利用HTTP请求的时间间隔、请求包大小、包头格式、带宽占用、请求规则等特征构造各种过滤器检测木马通信。然而,木马可以通过在通信细节上的简单改变绕过文章中所构造的各种过滤器。例如:木马只需将请求包的大小限制在某一阈值内即可使请求包大小过滤器失去功效。此种方法只能针对HTTP协议进行检测,通用性较差。而且此种方法还需要对数据包内容进行详细解析,效率较低。
C.Rossow等人设计了一个名叫Sandnet的网络数据采集分析环境,他们指出,对恶意代码的行为进行长时间的跟踪分析对理解其行为更有帮助。此外他们着重对恶意代码常用的DNS和HTTP协议进行深入分析,根据协议中不同字段的异常取值来检测恶意代码。该方法的优点在于选取了更长的时间,综合协议的具体字段取值对恶意代码进行分析检测,缺点在于对遵守协议规范设计的恶意代码会失去效果。
R.Perdisci等人提出,基于恶意代码产生的HTTP通信数据流的结构相似性可以对恶意代码的网络通信行为进行聚类,并根据聚类结果自动的生成恶意代码的网络特征,以此来检测基于HTTP通信的恶意代码程序。这种方法改进了恶意代码特征的提取方法,但是对不具备HTTP通信数据相似性的通信数据流失去提取特征并检测的能力。
Shicong Li等人从TCP会话层面和IP流层面分析木马的通信行为,选取多维属性来描述木马的网络通信行为,并使用数据挖掘的分类算法建立了木马检测模型。对于实时检测来说,他们选取了更广泛的属性,描述会话之间的相关性,但是这种方法仍局限于单个数据流,没有对网络通信数据流的规律性进行分析,木马通过改变操作方式和通信方式可以躲避检测。
Zhang和Paxson利用数据包到达时间间隔和数据包大小描述了一种木马通信交互模型,用于检测木马和后门等恶意程序。该模型对木马通信行为进行如下描述:1、木马通信过程中相邻数据包到达时间间隔符合帕累托分布;2、由于木马通信过程中存在命令交互,所以小数据包应占一定比例。但实际木马通信过程中可以通过不同的算法使相邻数据包到达时间间隔满足各种分布要求,加之数据包到达时间间隔在很大程度上会受到网络拓扑的影响,所以数据包到达时间间隔用其作为行为描述存在一定弊端。且木马通信过程中的短命令可以隐藏在较大的HTML页面信息中,所以强调通信过程中的小数据包的比例并不能实现有效检测,导致误报率较高。
孙海涛分析了木马的概念、原理、通信技术及隐蔽性特点,给出了木马通信的隐蔽性模型。并在此基础上,分析不同阶段木马的通信行为。在连接保持无操作阶段检测木马的“心跳行为”,在交互操作阶段提取通信行为特征,使用C4.5决策树算法构造分类器,实现了木马通信行为检测系统。该研究提出的检测方法能够有效的对实时数据流进行检测,但也存在一定的缺点,检测方法仍旧是基于单数据流的分析,准确度较低。
发明内容
本发明要解决的技术问题是:克服现有技术的缺陷,提供一种基于多数据流聚类分析的木马通信特征快速提取方法,该方法通过网络数据流聚类,将木马程序一次完整的网络活动中产生的数据流聚类成数据流簇,然后在数据流簇上有效提取窃密型木马的通信特征,具有较高的检测性能和计算效率。
本发明的技术方案:一种基于多数据流聚类分析的木马通信特征快速提取方法。首先,将捕获的网络数据包按照网络会话进行整理:将监控对象的IP地址和端口作为源IP地址和源端口。将数据包按照等价四元组(源IP地址、源端口、目的IP地址、目的端口)进行会话划分,即每个会话通过等价四元组唯一标识(此时每个会话链表包含双向数据流),并选用会话链表作为存储会话的数据结构。选用会话链表作为记录会话的数据结构的原因是:由于网络通信是一个动态的过程,会话中的数据包随着通信的进行而不断增加,用于保存会话的数据结构也要随之发生动态变化。组建会话链表过程中,需根据链表结点的等价四元组查找数据包对应的位置,并将其插入至该位置中。因此,会话的记录方式和查找速度将直接影响会话重组效率。
会话可以使用多维数组或多级链表进行保存;多维数组具有存储效率高、查找方便、存取速度快等优点,但是多维数组要求预先为其分配存储空间,一旦建立无法改变多维数组大小,容易造成空间浪费,而且网络会话数量不固定,无法为其预先分配空间;链表的优点是可动态添加或删除、不需要预先分配空间,但缺点是查找速度慢。
本发明采用结合哈希表和多级链表的数组链表结构来重组会话。数组链表结构是指数组和链表相结合的数据结构;数组链表可通过牺牲较小的存储空间有效提高查找效率。可根据等价四元组中各元素的不同特性设定数组链表的链接顺序,通过把取值范围适中且对应会话数量分布最均匀的元素设为数组链表的第一级,依次设定链接顺序,以获得更高的会话重组效率。具体分析如下:
设会话数量为S,若将所有的会话以传统的单链表的形式进行组建,每次接收到数据包后都要对会话链表进行顺序查找,顺序查找的平均计算时间复杂度为O(S/2)。
以数组链表的形式整理会话,设数组具有n个下标,数组第i个下标串接的会话链表个数为αi,则接收数据包加入数组第i个下标的概率为
故对链表进行查询的平均时间复杂度为:
O ( α i S · α i 2 ) = O ( α i 2 ) 2 S
根据定理“均方根大于等于算术平均数”可得:
Σ i = 1 n α i 2 n ≥ Σ i = 1 n α i n = S n
将不等式两边同时平方可得:
Σ i = 1 n α i 2 ≥ S 2 n
当且仅当α1=α2=…=αn时,其中最小。
由此可知,当所有链表结点平均分配到数组的各个下标时,数据包查找的时间复杂度最低,小于单链表的计算复杂度。故在建立会话链表时,应根据等价四元组中元素的取值范围及相应的会话数量分布情况选取合适的元素排列顺序。
等价四元组中各元素的取值范围及相应的会话数量分布情况如下:
(1)源IP地址:通常指内网主机IP地址。源IP地址的取值范围为:10.0.0.0~10.255.255.25、172.16.0.0~172.31.255.255、192.168.0.0~192.168.255.255,相对互联网的IP空间而言,源IP地址空间小且其对应的会话分布均匀。
(2)源端口:根据RFC协议规范,源端口号一般为1024~65535之间的任意数值。源端口的取值空间较大,而且其对应的会话数量分布不均匀。
(3)目的IP地址:目的IP地址的取值范围为整个IPv4地址空间,取值空间巨大,而且其对应的会话数量分布不均匀。
(4)目的端口:目的端口一般为协议的制定端口,范围主要集中在1~1023之间,但当前的网络通信中以HTTP、HTTPS等协议为主,因此大部分网络通信的目的端口为80、443、8080等端口,其对应的会话数量非常不均匀性。
综上所述,源IP地址取值范围较小而且分布均匀,且对应的会话数量分布也比较均匀,适用于作为数组链表的第一级。以监控目标为C类局域网为例,数组链表的构建方法如下:由于源IP地址的最后1个字节分布情况最均匀,故可将其视为源IP地址的哈希值建立哈希表,将源IP地址设置为数组链表的第一级。依此类推,分别以源端口、目的IP地址和目的端口作为数组链表的第二、三和四级,基于数组链表的会话链表结构如图1所示。
其次,在上述基础上,将上述方法得到的网络数据流,按照基于时间戳的数据流聚类算法聚类成数据流簇,所述基于时间戳的数据流聚类算法是:
时间戳论域:设T={(t1,t1'),(t2,t2'),…(tn,tn')…}是待划分的数据流开始时间戳和结束时间戳集合,T中的每个对象ti是第i个数据流的开始时间戳,ti'是第i个数据流的结束时间戳;
簇半径阈值:设ε为簇半径阈值,数据流簇的结束时间和下一个数据流的开始时间间隔小于该阈值的将被聚类到一个数据流簇中;
簇集合:设Sj={c1,c2,…,cm}是数据流集合Sj经划分得到的一个个数据流簇的集合,P(ci)={ci1,ci2,…,cik}是Sj中的每个数据流簇ci(1≤i≤m)的特征矢量;
界标窗口:因为数据流是顺序出现的,因此选取界标窗口来存储时间戳论域T,界标窗口的长度ΔW为起始时间点到当前时间点为止记录的数据流个数;
基于时间戳的数据流聚类算法以数据流集合S和簇半径阈值ε为输入,簇半径阈值ε的单位为秒,以生成的簇集合S'={(ci,P(ci))|(1≤i≤m)}为输出;顺序遍历数据流中的每个数据流,通过计算当前数据流的开始时间与数据流簇的结束时间间隔判断加入当前簇还是新建簇;
簇集合S'的算法如下:
输入:数据流集合S,簇半径阈值ε;
输出:生成的簇集合S';
BEGIN
(1)j=0,ΔW=0;初始化簇数量j=0,窗口长度ΔW=0,记录簇和数据流的个数;
(2)while;数据流集合S未结束&S中新到达数据流f已经结束
(3)If(j=0)j++,ΔW++;以数据流f为起始建立新的簇cj,创建簇矢量P(cj);
(4)else If(ti-ti-1≤ε)ti∈cj,更新簇矢量P(cj),ΔW++;
(5)else j++,ΔW++;以数据流f为起始建立新的簇cj,创建簇矢量P(cj);
(6)End If;
(7)End If;
(8)End while;
END
然后,在数据流簇上进行木马通信行为特征的提取,木马通信行为特征的提取是指木马交互操作阶段行为特征的提取;操作阶段木马通信特征的提取分五个方面,分别为:
第一:针对木马被控端在通信中扮演资源服务器的角色,提取以下行为特征:被控主机的信息和文件资源异常上传通信量;木马程序根据控制命令将被控主机的信息和文件资源不断上传,导致数据流簇上传数据量偏大;
第二:针对木马通信过程中数据包分布特点,提取以下行为特征:数据流簇接收小包数量与小包总数量的比值、上传大包数量与大包总数量的比值;这两个特征值大于0.5时为异常特征;通信过程中接收到的绝大部分是控制命令,所以接收到的基本都是小包;而会话发送的信息以大包为主;
第三:针对木马通信时的数据流表现为由内向外的上传流的特点,提取以下特征:数据流簇上传数据量与下载数据量比值;该特征值大于0.8时为异常特征;数据流向表现为上传流实际是说明通信过程中上传数据量大于下载数据量;
第四,针对木马通信过程包含一个主要连接和多个次要连接的特点,提取以下行为特征:主连接持续时间与数据流簇持续时间的比值;木马程序在进行通信过程中,产生的数据流簇通常包含多个数据流会话,其中有一个主要连接和多个次要连接;主连接一般是持续时间最长的数据流,主连接的持续时间和数据流簇的持续时间相近,因此主连接持续时间与数据流簇持续时间的比值接近1,而正常应用程序中一般没有主连接和次连接之分,主连接特征不明显,最长数据流持续时间与数据流簇持续时间的比值较小;这个特征大于0.8时为异常特征;
第五,针对木马通信过程中人为控制的因素较大的特点,提取以下行为特征:数据流簇中数据流持续时间的方差。正常应用程序的数据流人工操作的影响较小,导致数据流簇中各个数据流持续时间的波动较小,木马程序人为控制的因素较大,数据流簇中各数据流持续时间波动较大,即方差较大。数据流簇中一般包含多个数据流。例如,数据流簇中有5个数据流,它们的持续时间分别是10s、20s、30s、40s、50s,那么数据流持续时间的方差就是计算10、20、30、40、50这一组数据的方差。
本发明在对网络数据流进行聚类的基础上,以簇为单位处理网络数据流,分析木马通信行为与正常网络通信行为的差别,并结合传统的统计分析、相关分析等技术,深入挖掘二者之间的差别并提取网络通信特征,在此基础上,可根据通信行为特征的自身特点设计快速的窃密型木马通信行为检测算法,在保证检测率的同时降低误报率,利用本发明可以实现对网络中的窃密行为进行检测。
附图说明
图1为基于数组链表的会话链表结构图;
图2为基于时间戳的数据流簇聚类效果图;
图3为数据流簇特征提取图。
具体实施方式
实施例1:基于多数据流聚类分析的木马通信特征快速提取方法为:
首先,将捕获的网络数据包按照网络会话进行整理:将监控对象的IP地址和端口作为源IP地址和源端口。将数据包按照等价四元组(源IP地址、源端口、目的IP地址、目的端口)进行会话划分,即每个会话通过等价四元组唯一标识(此时每个会话链表包含双向数据流),并选用会话链表作为存储会话的数据结构。选用会话链表作为记录会话的数据结构的原因是:由于网络通信是一个动态的过程,会话中的数据包随着通信的进行而不断增加,用于保存会话的数据结构也要随之发生动态变化。组建会话链表过程中,需根据链表结点的等价四元组查找数据包对应的位置,并将其插入至该位置中。因此,会话的记录方式和查找速度将直接影响会话重组效率。
会话可以使用多维数组或多级链表进行保存;多维数组具有存储效率高、查找方便、存取速度快等优点,但是多维数组要求预先为其分配存储空间,一旦建立无法改变多维数组大小,容易造成空间浪费,而且网络会话数量不固定,无法为其预先分配空间;链表的优点是可动态添加或删除、不需要预先分配空间,但缺点是查找速度慢。
本发明采用结合哈希表和多级链表的数组链表结构来重组会话。数组链表结构是指数组和链表相结合的数据结构;数组链表可通过牺牲较小的存储空间有效提高查找效率。可根据等价四元组中各元素的不同特性设定数组链表的链接顺序,通过把取值范围适中且对应会话数量分布最均匀的元素设为数组链表的第一级,依次设定链接顺序,以获得更高的会话重组效率。具体分析如下:
设会话数量为S,若将所有的会话以传统的单链表的形式进行组建,每次接收到数据包后都要对会话链表进行顺序查找,顺序查找的平均计算时间复杂度为O(S/2)。
以数组链表的形式整理会话,设数组具有n个下标,数组第i个下标串接的会话链表个数为αi,则接收数据包加入数组第i个下标的概率为
故对链表进行查询的平均时间复杂度为:
O ( α i S · α i 2 ) = O ( α i 2 ) 2 S
根据定理“均方根大于等于算术平均数”可得:
Σ i = 1 n α i 2 n ≥ Σ i = 1 n α i n = S n
将不等式两边同时平方可得:
Σ i = 1 n α i 2 ≥ S 2 n
当且仅当α1=α2=…=αn时,其中最小。
由此可知,当所有链表结点平均分配到数组的各个下标时,数据包查找的时间复杂度最低,小于单链表的计算复杂度。故在建立会话链表时,应根据等价四元组中元素的取值范围及相应的会话数量分布情况选取合适的元素排列顺序。
等价四元组中各元素的取值范围及相应的会话数量分布情况如下:
(1)源IP地址:通常指内网主机IP地址。源IP地址的取值范围为:10.0.0.0~10.255.255.25、172.16.0.0~172.31.255.255、192.168.0.0~192.168.255.255,相对互联网的IP空间而言,源IP地址空间小且其对应的会话分布均匀。
(2)源端口:根据RFC协议规范,源端口号一般为1024~65535之间的任意数值。源端口的取值空间较大,而且其对应的会话数量分布不均匀。
(3)目的IP地址:目的IP地址的取值范围为整个IPv4地址空间,取值空间巨大,而且其对应的会话数量分布不均匀。
(4)目的端口:目的端口一般为协议的制定端口,范围主要集中在1~1023之间,但当前的网络通信中以HTTP、HTTPS等协议为主,因此大部分网络通信的目的端口为80、443、8080等端口,其对应的会话数量非常不均匀性。
综上所述,源IP地址取值范围较小而且分布均匀,且对应的会话数量分布也比较均匀,适用于作为数组链表的第一级。以监控目标为C类局域网为例,数组链表的构建方法如下:由于源IP地址的最后1个字节分布情况最均匀,故可将其视为源IP地址的哈希值建立哈希表,将源IP地址设置为数组链表的第一级。依此类推,分别以源端口、目的IP地址和目的端口作为数组链表的第二、三和四级,基于数组链表的会话链表结构如图1所示。
2、基于时间戳的数据流聚类算法
相邻数据流到达时间间隔的差异性,因此给出了基于时间戳的数据流聚类算法,将数据流聚类为表示一次完整的网络活动的通信行为簇,以簇的特征表示此次操作行为的特征,下面给出具体的算法描述。
①基本定义
定义1设T={(t1,t1'),(t2,t2'),…(tn,tn')…}是待划分的数据流开始时间戳和结束时间戳集合,T中的每个对象ti是第i个数据流的开始时间戳,ti'是第i个数据流的结束时间戳。
定义2簇半径阈值:设ε为簇半径阈值,数据流簇的结束时间和下一个数据流的开始时间间隔小于该阈值的将被聚类到一个数据流簇中。
定义3簇集合:设Sj={c1,c2,…,cm}是数据流集合Sj经划分得到的一个个数据流簇的集合,P(ci)={ci1,ci2,…,cik}是Sj中的每个数据流簇ci(1≤i≤m)的特征矢量。
定义4界标窗口:因为数据流是顺序出现的,因此选取界标窗口来存储时间戳论域T,界标窗口的长度ΔW为起始时间点到当前时间点为止记录的数据流个数。
②算法描述
基于时间戳的数据流簇聚类算法以数据流集合S和簇半径阈值ε为输入,数据流集合S使用四元组标识,簇半径阈值ε的单位为秒,以生成的簇集合S'={(ci,P(ci))|(1≤i≤m)}为输出;顺序遍历数据流中的每个数据流,通过计算当前数据流的开始时间与数据流簇的结束时间间隔判断加入当前簇还是新建簇,具体算法如下:
输入:数据流集合S,簇半径阈值ε;
输出:生成的簇集合S';
BEGIN
(1)j=0,ΔW=0;初始化簇数量j=0,窗口长度ΔW=0,记录簇和数据流的个数;
(2)while;数据流集合S未结束&S中新到达数据流f已经结束
(3)If(j=0)j++,ΔW++;以数据流f为起始建立新的簇cj,创建簇矢量P(cj);
(4)else If(ti-ti-1≤ε)ti∈cj,更新簇矢量P(cj),ΔW++;
(5)else j++,ΔW++;以数据流f为起始建立新的簇cj,创建簇矢量P(cj);
(6)End If;
(7)End If;
(8)End while;
END
通过基于时间戳的数据流聚类,网络数据流按簇进行划分的效果如图2所示。每个簇内的网络会话数据流之间具有较强的时间相关性,簇与簇之间的时间间隔反映完整的网络活动的划分,保证了网络通信行为的过程以数据流簇为单位进行描述。
3、木马通信特征的提取
在数据流聚类的基础上,进行木马通信特征的提取,木马通信特征的提取是指交互操作阶段木马通信特征的提取。
木马通信过程可分为连接保持无操作阶段和交互操作阶段。相对于连接保持无操作阶段而言,交互操作阶段更为复杂,提取特征更多。通常情况下,一个数据流簇中包含多条数据流。现阶段,基于单数据流分析的木马检测方法通过在单数据流中提取一些特征属性来表征木马的通信行为。在数据流簇中,单条数据流的统计属性仍然存在,但是由于数据流簇是单条数据流的融合,会多出一些数据流簇的特征属性。通过大量的样本分析和实验发现正常的网络数据流簇和木马操作数据流簇在许多统计特征上都存在明显的差异。
然后,在数据流簇上进行木马通信行为特征的提取,木马通信行为特征的提取是指木马交互操作阶段行为特征的提取;操作阶段木马通信特征的提取分五个方面,分别为:
第一:针对木马被控端在通信中扮演资源服务器的角色,提取以下行为特征:被控主机的信息和文件资源异常上传通信量;木马程序根据控制命令将被控主机的信息和文件资源不断上传,导致数据流簇上传数据量偏大;
第二:针对木马通信过程中数据包分布特点,提取以下行为特征:数据流簇接收小包数量与小包总数量的比值、上传大包数量与大包总数量的比值;这两个特征值大于0.5时为异常特征;通信过程中接收到的绝大部分是控制命令,所以接收到的基本都是小包;而会话发送的信息以大包为主;
第三:针对木马通信时的数据流表现为由内向外的上传流的特点,提取以下特征:数据流簇上传数据量与下载数据量比值;该特征值大于0.8时为异常特征;数据流向表现为上传流实际是说明通信过程中上传数据量大于下载数据量;
第四,针对木马通信过程包含一个主要连接和多个次要连接的特点,提取以下行为特征:主连接持续时间与数据流簇持续时间的比值;木马程序在进行通信过程中,产生的数据流簇通常包含多个数据流会话,其中有一个主要连接和多个次要连接;主连接一般是持续时间最长的数据流,主连接的持续时间和数据流簇的持续时间相近,因此主连接持续时间与数据流簇持续时间的比值接近1,而正常应用程序中一般没有主连接和次连接之分,主连接特征不明显,最长数据流持续时间与数据流簇持续时间的比值较小;这个特征大于0.8时为异常特征;
第五,针对木马通信过程中人为控制的因素较大的特点,提取以下行为特征:数据流簇中数据流持续时间的方差。正常应用程序的数据流人工操作的影响较小,导致数据流簇中各个数据流持续时间的波动较小,木马程序人为控制的因素较大,数据流簇中各数据流持续时间波动较大,即方差较大。数据流簇中一般包含多个数据流。例如,数据流簇中有5个数据流,它们的持续时间分别是10s、20s、30s、40s、50s,那么数据流持续时间的方差就是计算10、20、30、40、50这一组数据的方差。
以上通信行为特征的定义均以被控主机为参照物;其中提到的接收和发送均是相对于被控主机而言的,数据流簇特征提取图如图3所示。

Claims (4)

1.一种基于多数据流聚类分析的木马通信特征快速提取方法,其特征在于,
首先,将捕获的网络数据包按照网络会话进行整理:将监控对象的IP地址和端口作为源IP地址和源端口,将数据包按照等价四元组进行会话划分,即每个会话通过等价四元组唯一标识,并选用会话链表作为存储会话的数据结构;
其次,在此基础上,将上述方法得到的网络数据流,按照基于时间戳的数据流聚类算法聚类成数据流簇,所述基于时间戳的数据流聚类算法是:
时间戳论域:设T={(t1,t1'),(t2,t2'),…(tn,tn')…}是待划分的数据流开始时间戳和结束时间戳集合,T中的每个对象ti是第i个数据流的开始时间戳,ti'是第i个数据流的结束时间戳;
簇半径阈值:设ε为簇半径阈值,数据流簇的结束时间和下一个数据流的开始时间间隔小于该阈值的将被聚类到一个数据流簇中;
簇集合:设Sj={c1,c2,…,cm}是数据流集合Sj经划分得到的一个个数据流簇的集合,P(ci)={ci1,ci2,…,cik}是Sj中的每个数据流簇ci(1≤i≤m)的特征矢量;
界标窗口:因为数据流是顺序出现的,因此选取界标窗口来存储时间戳论域T,界标窗口的长度ΔW为起始时间点到当前时间点为止记录的数据流个数;
基于时间戳的数据流聚类算法以数据流集合S和簇半径阈值ε为输入,簇半径阈值ε的单位为秒,以生成的簇集合S'={(ci,P(ci))|(1≤i≤m)}为输出;顺序遍历数据流中的每个数据流,通过计算当前数据流的开始时间与数据流簇的结束时间间隔判断加入当前簇还是新建簇;
然后,在数据流簇上进行木马通信行为特征的提取,木马通信行为特征的提取是指木马交互操作阶段行为特征的提取;
操作阶段木马通信特征的提取分五个方面,分别为:
第一:针对木马被控端在通信中扮演资源服务器的角色,提取以下行为特征:被控主机的信息和文件资源异常上传通信量;数据流簇上传数据量偏大时为异常特征;
第二:针对木马通信过程中数据包分布特点,提取以下行为特征:数据流簇接收小包数量与小包总数量的比值、数据流簇上传大包数量与大包总数量的比值;这两个比值任一项大于0.5时为异常特征;
第三:针对木马通信时的数据流表现为由内向外的上传流的特点,提取以下特征:数据流簇上传数据量与下载数据量比值;该特征值大于1时为异常特征;
第四,针对木马通信过程包含一个主要连接和多个次要连接的特点,提取以下行为特征:主连接持续时间与数据流簇持续时间的比值,这个比值大于0.8时为异常特征;
第五,针对木马通信过程中人为控制的因素较大的特点,提取以下行为特征:提取以下行为特征:数据流簇中数据流持续时间的方差,方差大于50时为异常特征。
2.根据权利要求1所述的方法,其特征在于,数组链表结构如下:
设会话数量为S,若将所有的会话以传统的单链表的形式进行组建,每次接收到数据包后都要对会话链表进行顺序查找,顺序查找的平均计算时间复杂度为O(S/2);
以数组链表的形式整理会话,设数组具有n个下标,数组第i个下标串接的会话链表个数为αi,则接收数据包加入数组第i个下标的概率为
故对链表进行查询的平均时间复杂度为:
O ( α i S · α i 2 ) = O ( α i 2 ) 2 S
根据定理“均方根大于等于算术平均数”可得:
Σ i = 1 n α i 2 n ≥ Σ i = 1 n α i n = S n
将不等式两边同时平方可得:
Σ i = 1 n α i 2 ≥ S 2 n
当且仅当α1=α2=…=αn时,其中最小。
3.根据权利要求1所述的方法,其特征在于,根据权利要求1所述的方法,其特征在于,所述四元组中的元素为源IP地址、源端口、目的IP地址和目的端口;数据包按照等价四元组进行会话划分是指对源IP地址、源端口、目的IP地址、目的端口进行划分;系统采用数组链表结构来记录四元组,数组链表结构是指数组和链表相结合的数据结构;系统利用数组建立哈希表,将哈希表作为链表的索引来提高查找效率;系统针对数据包四元组中各元素的不同概率分布,把分布均匀的元素分量设为数组链表,把分布不均匀的元素分量设为链表。
4.根据权利要求2所述的方法,其特征在于,系统利用哈希表+多级链表的结构记录源IP地址分量,源端口分量、目的IP地址分量、目的端口分量依次分别建立多级链表,系统选取源IP地址的最后1个字节进行哈希值的计算建立哈希表。
CN201410593969.4A 2014-10-29 2014-10-29 基于多数据流聚类分析的木马通信特征快速提取方法 Active CN104283897B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410593969.4A CN104283897B (zh) 2014-10-29 2014-10-29 基于多数据流聚类分析的木马通信特征快速提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410593969.4A CN104283897B (zh) 2014-10-29 2014-10-29 基于多数据流聚类分析的木马通信特征快速提取方法

Publications (2)

Publication Number Publication Date
CN104283897A true CN104283897A (zh) 2015-01-14
CN104283897B CN104283897B (zh) 2017-12-08

Family

ID=52258379

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410593969.4A Active CN104283897B (zh) 2014-10-29 2014-10-29 基于多数据流聚类分析的木马通信特征快速提取方法

Country Status (1)

Country Link
CN (1) CN104283897B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105262729A (zh) * 2015-09-11 2016-01-20 携程计算机技术(上海)有限公司 木马检测方法及系统
CN105656944A (zh) * 2016-03-19 2016-06-08 浙江大学 一种基于网络数据流的木马探测方法
CN105915516A (zh) * 2016-04-15 2016-08-31 杭州华三通信技术有限公司 基于安全检测的数据流获取方法及装置
CN107124410A (zh) * 2017-04-25 2017-09-01 厦门卓讯信息技术有限公司 基于机器深度学习的网络安全态势特征聚类方法
WO2017206499A1 (zh) * 2016-05-31 2017-12-07 华为技术有限公司 网络攻击检测方法以及攻击检测装置
CN107454052A (zh) * 2016-05-31 2017-12-08 华为技术有限公司 网络攻击检测方法以及攻击检测装置
CN107592312A (zh) * 2017-09-18 2018-01-16 济南互信软件有限公司 一种基于网络流量的恶意软件检测方法
CN108446366A (zh) * 2018-03-14 2018-08-24 北京思特奇信息技术股份有限公司 一种分类存储/快速匹配数据的方法及装置
CN108900538A (zh) * 2018-08-09 2018-11-27 深圳市永达电子信息股份有限公司 一种工控信号检测方法和装置
CN109861952A (zh) * 2017-11-30 2019-06-07 北京京穗蓝盾信息安全技术有限公司 一种基于统计学的网络木马行为识别系统
CN109886119A (zh) * 2019-01-22 2019-06-14 深圳市永达电子信息股份有限公司 一种基于工控信号的控制功能分类方法及系统
CN115776449A (zh) * 2022-11-08 2023-03-10 中车工业研究院有限公司 列车以太网通信状态监测方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102202064A (zh) * 2011-06-13 2011-09-28 刘胜利 基于网络数据流分析的木马通信行为特征提取方法
CN103491107A (zh) * 2013-10-14 2014-01-01 刘胜利 基于网络数据流簇聚类的木马通信特征快速提取方法
CN103532949A (zh) * 2013-10-14 2014-01-22 刘胜利 基于动态反馈的自适应木马通信行为检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102202064A (zh) * 2011-06-13 2011-09-28 刘胜利 基于网络数据流分析的木马通信行为特征提取方法
CN103491107A (zh) * 2013-10-14 2014-01-01 刘胜利 基于网络数据流簇聚类的木马通信特征快速提取方法
CN103532949A (zh) * 2013-10-14 2014-01-22 刘胜利 基于动态反馈的自适应木马通信行为检测方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105262729B (zh) * 2015-09-11 2018-07-31 携程计算机技术(上海)有限公司 木马检测方法及系统
CN105262729A (zh) * 2015-09-11 2016-01-20 携程计算机技术(上海)有限公司 木马检测方法及系统
CN105656944A (zh) * 2016-03-19 2016-06-08 浙江大学 一种基于网络数据流的木马探测方法
CN105915516A (zh) * 2016-04-15 2016-08-31 杭州华三通信技术有限公司 基于安全检测的数据流获取方法及装置
CN105915516B (zh) * 2016-04-15 2020-01-03 新华三技术有限公司 基于安全检测的数据流获取方法及装置
WO2017206499A1 (zh) * 2016-05-31 2017-12-07 华为技术有限公司 网络攻击检测方法以及攻击检测装置
CN107454052A (zh) * 2016-05-31 2017-12-08 华为技术有限公司 网络攻击检测方法以及攻击检测装置
CN107124410A (zh) * 2017-04-25 2017-09-01 厦门卓讯信息技术有限公司 基于机器深度学习的网络安全态势特征聚类方法
CN107592312B (zh) * 2017-09-18 2021-04-30 济南互信软件有限公司 一种基于网络流量的恶意软件检测方法
CN107592312A (zh) * 2017-09-18 2018-01-16 济南互信软件有限公司 一种基于网络流量的恶意软件检测方法
CN109861952A (zh) * 2017-11-30 2019-06-07 北京京穗蓝盾信息安全技术有限公司 一种基于统计学的网络木马行为识别系统
CN109861952B (zh) * 2017-11-30 2021-11-12 北京京穗蓝盾信息安全技术有限公司 一种基于统计学的网络木马行为识别系统
CN108446366A (zh) * 2018-03-14 2018-08-24 北京思特奇信息技术股份有限公司 一种分类存储/快速匹配数据的方法及装置
CN108900538A (zh) * 2018-08-09 2018-11-27 深圳市永达电子信息股份有限公司 一种工控信号检测方法和装置
CN108900538B (zh) * 2018-08-09 2021-03-23 深圳市永达电子信息股份有限公司 一种工控信号检测方法和装置
CN109886119B (zh) * 2019-01-22 2021-07-09 深圳市永达电子信息股份有限公司 一种基于工控信号的控制功能分类方法及系统
CN109886119A (zh) * 2019-01-22 2019-06-14 深圳市永达电子信息股份有限公司 一种基于工控信号的控制功能分类方法及系统
CN115776449A (zh) * 2022-11-08 2023-03-10 中车工业研究院有限公司 列车以太网通信状态监测方法及系统
CN115776449B (zh) * 2022-11-08 2023-10-03 中车工业研究院有限公司 列车以太网通信状态监测方法及系统

Also Published As

Publication number Publication date
CN104283897B (zh) 2017-12-08

Similar Documents

Publication Publication Date Title
CN104283897B (zh) 基于多数据流聚类分析的木马通信特征快速提取方法
CN102202064B (zh) 基于网络数据流分析的木马通信行为特征提取方法
CN102201937B (zh) 基于心跳行为分析的快速木马检测方法
CN102035698B (zh) 基于决策树分类算法的http隧道检测方法
CN102307123B (zh) 基于传输层流量特征的nat流量识别方法
CN103491107B (zh) 基于网络数据流簇聚类的木马通信特征快速提取方法
CN107370752B (zh) 一种高效的远控木马检测方法
CN105871832A (zh) 一种基于协议属性的网络应用加密流量识别方法及其装置
CA2613793A1 (en) Method and apparatus for whole-network anomaly diagnosis and methods to detect and classify network anomalies using traffic feature distributions
Brahmi et al. Towards a multiagent-based distributed intrusion detection system using data mining approaches
CN104348741A (zh) 基于多尺度分析和决策树的p2p流量检测方法和系统
Amoli et al. A real time unsupervised NIDS for detecting unknown and encrypted network attacks in high speed network
CN104468507A (zh) 基于无控制端流量分析的木马检测方法
CN106330611A (zh) 一种基于统计特征分类的匿名协议分类方法
CN107528852B (zh) 一种基于网络安全的大数据实施系统及方法
CN110266603A (zh) 基于http协议的身份认证业务网络流量分析系统及方法
KR101073402B1 (ko) 네트워크의 트래픽 모의 및 유사성 검증방법 및 네트워크 트래픽 분석시스템
Oudah et al. A novel features set for internet traffic classification using burstiness
Qin et al. MUCM: multilevel user cluster mining based on behavior profiles for network monitoring
Zhang et al. Design of a novel network intrusion detection system for drone communications
CN115514720B (zh) 一种面向可编程数据平面的用户活动分类方法及应用
Luo et al. Behavior-based method for real-time identification of encrypted proxy traffic
CN109257384A (zh) 基于访问节奏矩阵的应用层DDoS攻击识别方法
CN113298125B (zh) 基于特征选择的物联网设备流量异常检测方法、装置及存储介质
Hejun et al. Online and automatic identification and mining of encryption network behavior in big data environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Liu Shengli

Inventor after: Liu Long

Inventor after: Lin Wei

Inventor after: Xiao Da

Inventor after: Fei Jinlong

Inventor after: Wang Tianpeng

Inventor after: Lan Jinghong

Inventor after: Wu Yang

Inventor before: Liu Shengli

Inventor before: Wang Wenbing

Inventor before: Wu Dongying

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181220

Address after: 610000 Chengdu High-tech Zone, Sichuan Province, 2 buildings and 3 floors, No. 4, Xinhang Road

Patentee after: Sichuan Yuxin'an Electronic Technology Co., Ltd.

Address before: 450002 Unit 302, Building No. 7, 19, Jinxue Street, Jinshui District, Zhengzhou City, Henan Province

Patentee before: Liu Shengli

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200716

Address after: Room 302, unit 1, building 19, No.7, Jianxue street, Jinshui District, Zhengzhou City, Henan Province

Patentee after: Liu Shengli

Address before: 610000 Chengdu High-tech Zone, Sichuan Province, 2 buildings and 3 floors, No. 4, Xinhang Road

Patentee before: Sichuan Yuxin'an Electronic Technology Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210108

Address after: 450000 Science Avenue 62, Zhengzhou High-tech Zone, Henan Province

Patentee after: Information Engineering University of the Chinese People's Liberation Army Strategic Support Force

Address before: Unit 302, unit 1, building 19, No.7 Jianxue street, Jinshui District, Zhengzhou City, Henan Province, 450000

Patentee before: Liu Shengli