CN113965393B - 一种基于复杂网络和图神经网络的僵尸网络检测方法 - Google Patents
一种基于复杂网络和图神经网络的僵尸网络检测方法 Download PDFInfo
- Publication number
- CN113965393B CN113965393B CN202111254593.0A CN202111254593A CN113965393B CN 113965393 B CN113965393 B CN 113965393B CN 202111254593 A CN202111254593 A CN 202111254593A CN 113965393 B CN113965393 B CN 113965393B
- Authority
- CN
- China
- Prior art keywords
- data
- neural network
- botnet
- graph
- network
- 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
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/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Virology (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于复杂网络和图神经网络的僵尸网络检测方法,解决了目前的方法通常需要具备较好的恶意脚本、恶意软件静态分析和动态分析能力,同时目前对于未知僵尸网络及相关僵尸网络变种检测能力不足的技术问题,本发明将流量解析数据转为图数据,通过复杂网络技术提取节点相关特征值,再以图神经网络构建模型学习数据中的属性信息和结构信息。该方法摆脱了以往基于机器学习的僵尸网络检测方法无法发现结构信息的弊端,以及单纯基于图神经网络而未对流量解析数据进行深入的特征工程而丢失结构信息的缺陷。本发明的方法可作为僵尸网络综合检测系统的重要组成部分,以提高未知僵尸网络及其变种的检测精确率。
Description
技术领域
本发明涉及信息安全技术领域,具体涉及一种基于复杂网络和图神经网络的僵尸网络检测方法。
背景技术
僵尸网络以远程控制木马为基础,可被黑客用来发动DDoS、窃密、挖坑、垃圾邮件等网络攻击,对国家、组织和个人的安全危害极大,随着攻防对抗的不断演化,该方向的研究一直是重点也是难点。
目前检测僵尸网络的技术主要包括入侵检测系统(IDS,Instruction DetectionSystem)、蜜罐技术和DNS流量分析。其中入侵检测系统大多基于开源Snort系统,再额外配置各自研发的安全策略,对网络和系统的运行进行监测,尽量及时的发现各类网络攻击,并锁定感染主机,生成相关告警信息。IDS检测规则主要根据HTTP协议的User-Agent请求头,其基本原理是僵尸网络感染主机后寻找其它目标进行扫描的时候会带上该请求头,每一种僵尸网络的请求头特征都不同,所以这种检测方式不通用,并且由于IDS规则语法比较简单,当僵尸网络流量涉及到比较复杂的检测逻辑或未曾见的僵尸网络特征就很难检测出来。蜜罐技术通过精心布置被攻击的目标引诱攻击,一旦攻击者入侵后,就可以对攻击进行一定程度的溯源,但要使该技术效果较好,需要大量的部署,并且容易被高级黑客作为攻击跳板。
这些技术都是从传统网络安全的角度去定点深入分析单个僵尸网络,以提取相关特征形成规则,再将规则应用到入侵检测、蜜罐和DNS分析等系统中进行检测,但此类方法通常需要具备较好的恶意脚本、恶意软件静态分析和动态分析能力,同时目前对于未知僵尸网络及相关僵尸网络变种检测能力不足。
另一方面,基于机器学习的僵尸网络检测研究虽然从一定程度上提高了检出率,和对未知僵尸网络和相关僵尸网络变种的检测能力,但大多还是基于诸如支持向量机、随机森林等传统的机器学习算法,限制了模型的学习能力,特别是对于特征纬度较多的流量数据,基于浅学习、属性学习算法的模型检测已遇到技术上的瓶颈。
同时,目前较为前沿的基于图神经网络的僵尸网络检测模型,未对流量解析数据进行深入的特征工程,丢失了原始数据中部分结构信息,从一定程度上限制了检测模型精确率的提升,另外该模型使用基础图卷积和图注意力机制模型,当面对海量的实际流量数据时,由于计算复杂度而使得其缺乏实用性和落地价值。
僵尸网络(Botnet):是指采用一种或多种传播手段,使大量主机干扰僵尸程序,从而在控制者和被感染主机(僵尸主机或肉鸡)之间所形成的一对多控制的网络。僵尸网络以远程控制木马为基础,可以被黑客用来发动诸如分布式拒绝服务攻击(DistributedDenial of Services)、海量垃圾邮件等大规模网络攻击、挖矿、盗取诸如机密信息、个人隐私等信息,对国家、组织和个人的安全造成极大的危害。
图神经网络:旨在通过人工神经网络的方式将图和图上的节点与边映射到一个低维空间,学习图和节点的低维向量表示,是图嵌入或图表示学习的一种。
复杂网络:是指具有自组织、自相似、吸引子、小世界、无标度中部分或全部性质的网络。其主要表现有结构复杂、网络进化、连接多样性、动力学复杂性和节点多样性。
发明内容
本发明的目的是提供一种基于复杂网络和图神经网络的僵尸网络检测方法,可作为僵尸网络综合检测系统的重要组成部分,大大提高了未知僵尸网络及其变种的检测精确率。
为了实现上述目的,本发明提供的一种基于复杂网络和图神经网络的僵尸网络检测方法,具体步骤如下;
S1、读取流量解析数据,对数据进行初步预处理;
S2、将原始流量解析数据转为图数据,基于源IP计算各有向边的出度、入度、中心度,以及通信时间、总字节数、总包数等特征的均值、标准差、中位数、最大值和最小值;
S3、基于S2得到的新特征进行数据的融合处理,将得到的标量值作为源IP各边的权重;
S4、提取源IP、目的IP,进行数据操作,计算邻接矩阵,编写正则化拉普拉斯矩阵函数;将数据集划分为训练集、验证集和测试集;
S5、编写图神经网络模型;
S6、利用图神经网络模型进行实例化,设定相关参数,训练模型,并基于验证集优化参数,基于测试集测试模型精确率;
S7、保存模型,对新流量解析数据进行检测。
图神经网络分为谱域图神经网络、空域图神经网络。其中谱域图神经网络依据图谱论,把图的拉普拉斯矩阵进行谱分解,利用得到的特征值和特征向量在谱空间定义卷积操作。对于网络复杂度较高的问题,可以采用切比雪夫网络(ChebyNet)。空域图神经网络采用门控循环单元(GRU)取代递归神经网络(RNN)的节点更新方式,之后还出现图注意力网络等各种图神经网络。
本技术方案关键点在于通过将复杂网络与图神经网络相结合的方式提取和学习僵尸网络解析流量中的信息,核心点包括:(1)将原始流量解析数据转为图数据,进而通过复杂网络提取相关量化特征,该特征即可以作为下步构建模型的补充数据集,也可以经过数据融合后作为图中边的权重;(2)基于复杂网络提取的特征数据计算邻接矩阵中的边权重,或合并至源数据集,进而再利用图神经网络构建模型;(3)利用图神经网络构建模型时,侧重使用邻居采样类算法来构建,如GraphSAGE,以达到提高模型实际落地价值的目的。
作为优选:
所述的步骤S1中,读取CTU-13流量解析数据,每个数据样本含有10个维度(列),其中一列为表明相应的数据样本是否为僵尸网络的标签,在数据预处理时,对其中协议列和连接状态列进行独热编码。
所述的步骤S2中,通过导入networkx,编写创建图函数,将解析流量数据转为图数据。
所述的步骤S4中,提取数据集中源IP和目的IP,进行Groupby操作,得到每个源IP对应的目的IP列表,进一步将其转为词典,计算邻接矩阵和正则化拉普拉斯矩阵,将数据集中所有IP转换为整数,并对除IP外的其他特征数据进行归一化处理,并将数据集划分为训练集、验证集和测试集。
所述的步骤S5中,导入PyTorch,编写一阶采样函数、k阶采样函数;编写用于聚合源IP邻居信息的图卷积类、SageGCN层和GraphSAGE类。
所述的步骤S6中,利用GraphSAGE类进行实例化。
GraphSAGE将图神经网络从直推式学习(Transductive Learning)的模式扩展到归纳式学习(Inductive Learning)的模式,并通过邻居采样的方式加速图神经网络在大规模数据上的学习。消息传递网络把几乎所有的空域图神经网络统一成了消息传递的模式。
本发明提出一种基于复杂网络和图神经网络的僵尸网络检测方法,将流量解析数据转为图数据,通过复杂网络技术提取节点相关特征值,再以图神经网络构建模型学习数据中的属性信息和结构信息,该方法摆脱了以往基于机器学习的僵尸网络检测方法无法发现结构信息的弊端,以及单纯基于图神经网络而未对流量解析数据进行深入的特征工程而丢失结构信息的缺陷,可作为僵尸网络综合检测系统的重要组成部分,大大提高未知僵尸网络及其变种的检测精确率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明的流程图。
具体实施方式
为了使本领域的技术人员更好地理解本发明的技术方案,下面将结合附图对本发明作进一步的详细介绍。
本发明提供了如图1所示的一种基于复杂网络和图神经网络的僵尸网络检测方法,具体步骤如下;
步骤S1:读取CTU-13流量解析数据,共含有19976700个数据样本,每个数据样本含有10个维度(列),其中一列为标签,该列表明相应的数据样本是否为僵尸网络。在数据预处理时,对其中协议列和连接状态列进行独热编码(One-Hot Encoding)。
步骤S2:导入networkx,编写创建图函数,将解析流量数据转为图数据,基于源IP计算各有向边的出度、入度、中心度,以及通信时间、总字节数、总包数等特征的均值、标准差、中位数、最大值和最小值。
步骤S3:基于步骤S2得到的新特征进行数据的融合处理,将得到的标量值作为源IP各边的权重。
步骤S4:提取数据集中源IP和目的IP,进行Groupby操作,得到每个源IP对应的目的IP列表,进一步将其转为词典,计算邻接矩阵和正则化拉普拉斯矩阵。将数据集中所有IP转换为整数,并对除IP外的其他特征数据进行归一化处理,并将数据集划分为训练集、验证集和测试集。
步骤S5:导入PyTorch,编写一阶采样函数、k阶采样函数;编写用于聚合源IP邻居信息的图卷积类、SageGCN层和GraphSAGE类。
步骤S6:利用GraphSAGE类进行实例化,设定输入维度为6,采样邻居节点数为10,batch大小为16,epochs为30,学习率为0.01,权重衰减参数为5e-4,利用训练集训练模型,利用验证集优化模型参数,利用测试集测试模型精确率,得到模型测试集精确率为99.37%。
步骤S7:保存训练的模型,对新流量解析数据进行检测。
以上只通过说明的方式描述了本发明的某些示范性实施例,毋庸置疑,对于本领域的普通技术人员,在不偏离本发明的精神和范围的情况下,可以用各种不同的方式对所描述的实施例进行修正。因此,上述附图和描述在本质上是说明性的,不应理解为对本发明权利要求保护范围的限制。
Claims (6)
1.一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:具体步骤如下;
S1、读取流量解析数据,对数据进行初步预处理;
S2、将原始流量解析数据转为图数据,基于源IP计算各有向边的出度、入度、中心度,以及通信时间、总字节数、总包数等特征的均值、标准差、中位数、最大值和最小值;
S3、基于S2得到的新特征进行数据的融合处理,将得到的标量值作为源IP各边的权重;
S4、提取源IP、目的IP,进行数据操作,计算邻接矩阵,编写正则化拉普拉斯矩阵函数;将数据集划分为训练集、验证集和测试集;
S5、编写图神经网络模型;
S6、利用图神经网络模型进行实例化,设定相关参数,训练模型,并基于验证集优化参数,基于测试集测试模型精确率;
S7、保存模型,对新流量解析数据进行检测。
2.根据权利要求1所述的一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:所述的步骤S1中,读取CTU-13流量解析数据,每个数据样本含有10个维度(列),其中一列为表明相应的数据样本是否为僵尸网络的标签,在数据预处理时,对其中协议列和连接状态列进行独热编码。
3.根据权利要求1所述的一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:所述的步骤S2中,通过导入networkx,编写创建图函数,将解析流量数据转为图数据。
4.根据权利要求1所述的一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:所述的步骤S4中,提取数据集中源IP和目的IP,进行Groupby操作,得到每个源IP对应的目的IP列表,进一步将其转为词典,计算邻接矩阵和正则化拉普拉斯矩阵,将数据集中所有IP转换为整数,并对除IP外的其他特征数据进行归一化处理,并将数据集划分为训练集、验证集和测试集。
5.根据权利要求1所述的一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:所述的步骤S5中,导入PyTorch,编写一阶采样函数、k阶采样函数;编写用于聚合源IP邻居信息的图卷积类、SageGCN层和GraphSAGE类。
6.根据权利要求1所述的一种基于复杂网络和图神经网络的僵尸网络检测方法,其特征在于:所述的步骤S6中,利用GraphSAGE类进行实例化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111254593.0A CN113965393B (zh) | 2021-10-27 | 2021-10-27 | 一种基于复杂网络和图神经网络的僵尸网络检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111254593.0A CN113965393B (zh) | 2021-10-27 | 2021-10-27 | 一种基于复杂网络和图神经网络的僵尸网络检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113965393A CN113965393A (zh) | 2022-01-21 |
CN113965393B true CN113965393B (zh) | 2023-08-01 |
Family
ID=79467545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111254593.0A Active CN113965393B (zh) | 2021-10-27 | 2021-10-27 | 一种基于复杂网络和图神经网络的僵尸网络检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113965393B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115118491B (zh) * | 2022-06-24 | 2024-02-09 | 北京天融信网络安全技术有限公司 | 僵尸网络检测的方法、装置、电子设备及可读存储介质 |
CN115442084A (zh) * | 2022-08-11 | 2022-12-06 | 西北工业大学 | 一种基于神经网络的僵尸网络态势预测方法和预测系统 |
CN115499212A (zh) * | 2022-09-15 | 2022-12-20 | 上海视岳计算机科技有限公司 | 一种基于ai技术的网络安全缺陷检测方法及系统 |
CN117272303B (zh) * | 2023-09-27 | 2024-06-25 | 四川大学 | 一种基于遗传对抗的恶意代码样本变体生成方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881192A (zh) * | 2018-06-04 | 2018-11-23 | 上海交通大学 | 一种基于深度学习的加密型僵尸网络检测系统及方法 |
CN110149331A (zh) * | 2019-05-22 | 2019-08-20 | 中国科学院长春光学精密机械与物理研究所 | 一种P2P botnet检测方法、装置和介质 |
WO2020159439A1 (en) * | 2019-01-29 | 2020-08-06 | Singapore Telecommunications Limited | System and method for network anomaly detection and analysis |
CN111628970A (zh) * | 2020-04-24 | 2020-09-04 | 中国科学院计算技术研究所 | 一种dga型僵尸网络的检测方法、介质和电子设备 |
CN112165496A (zh) * | 2020-10-13 | 2021-01-01 | 清华大学 | 基于聚类图神经网络的网络安全异常检测算法和检测系统 |
CN112995150A (zh) * | 2021-02-08 | 2021-06-18 | 南京邮电大学 | 一种基于cnn-lstm融合的僵尸网络检测方法 |
CN113364787A (zh) * | 2021-06-10 | 2021-09-07 | 东南大学 | 一种基于并联神经网络的僵尸网络流量检测方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060036372A1 (en) * | 2004-03-18 | 2006-02-16 | Bulent Yener | Method and apparatus for tissue modeling |
US11146578B2 (en) * | 2016-12-16 | 2021-10-12 | Patternex, Inc. | Method and system for employing graph analysis for detecting malicious activity in time evolving networks |
-
2021
- 2021-10-27 CN CN202111254593.0A patent/CN113965393B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881192A (zh) * | 2018-06-04 | 2018-11-23 | 上海交通大学 | 一种基于深度学习的加密型僵尸网络检测系统及方法 |
WO2020159439A1 (en) * | 2019-01-29 | 2020-08-06 | Singapore Telecommunications Limited | System and method for network anomaly detection and analysis |
CN110149331A (zh) * | 2019-05-22 | 2019-08-20 | 中国科学院长春光学精密机械与物理研究所 | 一种P2P botnet检测方法、装置和介质 |
CN111628970A (zh) * | 2020-04-24 | 2020-09-04 | 中国科学院计算技术研究所 | 一种dga型僵尸网络的检测方法、介质和电子设备 |
CN112165496A (zh) * | 2020-10-13 | 2021-01-01 | 清华大学 | 基于聚类图神经网络的网络安全异常检测算法和检测系统 |
CN112995150A (zh) * | 2021-02-08 | 2021-06-18 | 南京邮电大学 | 一种基于cnn-lstm融合的僵尸网络检测方法 |
CN113364787A (zh) * | 2021-06-10 | 2021-09-07 | 东南大学 | 一种基于并联神经网络的僵尸网络流量检测方法 |
Non-Patent Citations (5)
Title |
---|
Effective Botnet Detection Through Neural Networks on Convolutional Features;Shao-Chien Chen;《2018 17th IEEE International Conference On Trust, Security And Privacy In Computing And Communications/ 12th IEEE International Conference On Big Data Science And Engineering (TrustCom/BigDataSE)》;全文 * |
图卷积神经网络综述;徐冰冰;岑科廷;黄俊杰;沈华伟;程学旗;;计算机学报;43(05);全文 * |
基于机器学习的僵尸物联网检测方法性能评价研究;赵亭;《滁州学院学报》;第22卷(第02期);全文 * |
基于流量时空特征的fast-flux僵尸网络检测方法;牛伟纳;蒋天宇;张小松;谢娇;张俊哲;赵振扉;;电子与信息学报(08);全文 * |
基于混合词向量深度学习模型的DGA域名检测方法;杜鹏;丁世飞;;计算机研究与发展(02);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113965393A (zh) | 2022-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Karatas et al. | Deep learning in intrusion detection systems | |
CN113965393B (zh) | 一种基于复杂网络和图神经网络的僵尸网络检测方法 | |
Halbouni et al. | Machine learning and deep learning approaches for cybersecurity: A review | |
CN109450842B (zh) | 一种基于神经网络的网络恶意行为识别方法 | |
CN112738015B (zh) | 一种基于可解释卷积神经网络cnn与图检测的多步攻击检测方法 | |
Catak et al. | Distributed denial of service attack detection using autoencoder and deep neural networks | |
US20180063163A1 (en) | Learning indicators of compromise with hierarchical models | |
Patil et al. | S-DDoS: Apache spark based real-time DDoS detection system | |
CN110611640A (zh) | 一种基于随机森林的dns协议隐蔽通道检测方法 | |
Tan et al. | Adaptive malicious URL detection: Learning in the presence of concept drifts | |
Ding et al. | DeepAK-IoT: An effective deep learning model for cyberattack detection in IoT networks | |
CN113905016A (zh) | 一种dga域名检测方法、检测装置及计算机存储介质 | |
Zhang et al. | Detection of android malware based on deep forest and feature enhancement | |
Abbasi et al. | Deep learning-based feature extraction and optimizing pattern matching for intrusion detection using finite state machine | |
Brandao et al. | Log Files Analysis for Network Intrusion Detection | |
Abdelkhalek et al. | Ml-based anomaly detection system for der dnp3 communication in smart grid | |
CN117914555A (zh) | 一种智能网关的训练及流量检测方法和设备 | |
Ruiling et al. | A dns-based data exfiltration traffic detection method for unknown samples | |
Zhang et al. | Malicious Traffic Classification for IoT based on Graph Attention Network and Long Short-Term Memory Network | |
Yang et al. | Botnet detection based on machine learning | |
Selim et al. | DAE-BILSTM: A Fog-Based Intrusion Detection Model Using Deep Learning for IoT | |
Yang et al. | [Retracted] Computer User Behavior Anomaly Detection Based on K‐Means Algorithm | |
Su et al. | Understanding the influence of graph Kernels on deep learning architecture: a case study of flow-based network attack detection | |
Azeroual et al. | A framework for implementing an ml or dl model to improve intrusion detection systems (ids) in the ntma context, with an example on the dataset (cse-cic-ids2018) | |
Zolotukhin et al. | On application-layer DDoS attack detection in high-speed encrypted networks |
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 |