CN111224994A - 一种基于特征选择的僵尸网络检测方法 - Google Patents

一种基于特征选择的僵尸网络检测方法 Download PDF

Info

Publication number
CN111224994A
CN111224994A CN202010041369.2A CN202010041369A CN111224994A CN 111224994 A CN111224994 A CN 111224994A CN 202010041369 A CN202010041369 A CN 202010041369A CN 111224994 A CN111224994 A CN 111224994A
Authority
CN
China
Prior art keywords
flow
botnet
feature
learning
method based
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.)
Pending
Application number
CN202010041369.2A
Other languages
English (en)
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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202010041369.2A priority Critical patent/CN111224994A/zh
Publication of CN111224994A publication Critical patent/CN111224994A/zh
Pending legal-status Critical Current

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出了一种基于特征选择的僵尸网络检测方法,步骤如下:S1使用公开的僵尸网络数据集,解析网络流量提取流量特征;S2采用随机森林算法计算流量特征的重要性并进行排序,从而选择出合适的特征进行学习;S3采用改进的卷积神经网络对流量特征进行学习,生成僵尸网络检测模型;S4对网络流量进行捕获,使用训练好的僵尸网络检测模型检测是否被感染,本发明通过特征选择剔除无关和不重要的特征,充分保留有效特征,从而提高了僵尸网络的检测准确率和训练速度。

Description

一种基于特征选择的僵尸网络检测方法
技术领域
本发明涉及一种网络检测方法,具体的说是一种基于特征选择的僵尸网络检测方法,属于网络安全呢技术领域。
背景技术
僵尸网络(botnet)是由大量被攻击者控制的联网设备构成的,其中受控的联网设备被称作僵尸主机(bot),攻击者(botmaster)通过预先设置好的命令与控制信道(commandand control,C&C)操控僵尸主机进行DDOS攻击、挖矿、恶意软件分发等恶意行为。其中最具有代表性的是2016年10月21日攻击者利用Mirai,感染和控制了数以万计的物联网设备,组成了僵尸网络,对美国域名解析服务提供商Dyn公司发动了DDOS攻击,致使美国东部大面积网络瘫痪,包括Twitter、Facebook在内的多家美国网站无法通过域名访问。根据绿盟发布的《2018 BOTNET趋势报告》,2018年总共监控到攻击命令111472条,其中有效攻击目标数量为451187次,相较2017年增长了66.4%,而botnet攻击的受害者中,中国占据了39.78%。
僵尸网络的检测主要有3类方法:基于蜜罐的检测方法、基于主机行为的检测方法以及基于网络流量的检测方法。蜜罐是被精心构造用作陷阱的工具,可以通过蜜罐收集僵尸程序的信息和活动并对这些数据进行分析,从而进行僵尸网络的检测。基于主机行为的检测是通过在联网设备上部署检测程序,收集设备的行为信息并加以分析,从而实现僵尸网络的检测。基于网络流量的检测方法主要分为2类:误用检测和异常检测。误用检测基于通信特征码,使用事先配置的特征匹配规则对网络流量进行筛选;异常检测通过流量分析来对僵尸网络产生的异常流量进行检测,多采用机器学习和深度学习技术。
机器学习的核心理念是利用数学和统计学相关知识,通过公式计算和过往经验逐步优化模型性能的学科,随机森林是其中一种典型的算法。随机森林是由一组决策树组成的集合分类器。随机森林中每棵树都有划分的节点和叶节点,划分的节点评估每个输入数据,并根据数据的特性将其传递到左侧或右侧的次要叶子,每个叶节点都存储输入数据的统计信息。随机森林构造过程分为四步:随机样本的选取、随机选择特征、构建决策树、随机森林投票分类。随机森林具有如下特点:(1)在大数据集上有良好表现;(2)可以处理高维度数据;(3)可以评估特征在分类问题上的重要性;(4)训练速度快,具有较高准确性。
深度学习是机器学习的一个子领域,是近年来机器学习的重大突破和研究热点之一,它是一种以人工神经网络(ANN)为架构的对数据进行表征学习的一种算法。通过引入卷积神经网络(Convolutional Neural Network,CNN)和循环神经网络(Recurrent NeuralNetworks, RNN),深度学习的实用性和适用性得到了巨大的提升。
卷积神经网络是一种多层人工神经网络。网络中的每一层由多个特征面组成,每个特征面由多个独立的神经元组成,相邻的两层神经元相互连接,并且在同一层神经元之间没有连接。CNN使用权值共享的网络结构,通过改变网络的深度和广度来调整模型的容量。因此,卷积神经网络可以有效的降低网络模型的复杂度。
发明内容
本发明的目的是提供一种基于特征选择的僵尸网络检测方法,通过特征选择剔除无关和不重要的特征,充分保留有效特征,提高神经网络的训练速度和检测准确率,提高神经网络的泛化性能。
本发明的目的是这样实现的:一种基于特征选择的僵尸网络检测方法,步骤如下:
S1使用公开的僵尸网络数据集,解析网络流量提取流量特征;
S2采用随机森林算法计算流量特征的重要性并进行排序,从而选择出合适的特征进行学习;
S3采用改进的卷积神经网络对流量特征进行学习,生成僵尸网络检测模型;
S4对网络流量进行捕获,使用训练好的僵尸网络检测模型检测是否被感染。
作为本发明的进一步限定,步骤S1的具体步骤为:
S101.下载僵尸网络数据集,包括僵尸网络流量和正常流量,文件格式为pcap;
S102.对pcap文件进行分割,采用基于流的分割方法,将具有相同五元组(源IP、源端口、目的IP、目的端口、传输协议)的数据包聚合成数据流,以此为粒度将大容量的pcap文件分割成小容量的pcap文件;
S103.使用CICFlowmeter提取流量特征。
作为本发明的进一步限定,步骤S2的具体步骤为:
S201.对提取到的特征使用随机森林算法计算特征重要性,采用基尼系数作为评价指标;
S202.计算结果进行排序,选择前20的特征进行学习。
作为本发明的进一步限定,步骤S3的具体步骤为:
S301.将选择后的特征数据转换成二维灰度图像;
S302.构建卷积神经网络进行特征学习,以二维灰度图像作为输入,特征学习结束后使用softmax进行分类,输出检测结果。
作为本发明的进一步限定,步骤S4的具体步骤为:
S401.使用wireshark工具捕获网络流量;
S402.对捕获的流量进行分割,提取出20种特征并转换为二维灰度图像;
S403.使用步骤S3中训练好的模型进行僵尸网络检测。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
(1)本发明中使用采用机器学习方法进行特征选择,相比于直接将网络流量转化为二维灰度图像,充分保留了重要特征,剔除无效特征,同时尽可能避免流量裁剪损失重要特征,提高了神经网络的训练速度和检测准确率;
(2)本发明中对传统的卷积神经网络进行改进,使用批量归一化技术提高神经网络的训练速度,同时可以提高神经网络的泛化性能。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
本发明提出了一个用于检测僵尸网络的模型。图1所示为整个模型的流程图。
整个僵尸网络检测模型的重要过程包括:数据集特征提取、特征选取、卷积神经网络特征学习。
一、数据集特征提取。
对于下载到的公开僵尸网络数据集,首先根据网络流进行pcap文件分割,将具有相同五元组(源IP、源端口、目的IP、目的端口、传输协议)的数据包聚合成数据流,将一个单独的大容量文件分割成众多小容量pcap文件,便于后续操作。
然后使用CICFlowmeter提取网络流量特征,该软件可以提取85个流量统计特征,包括通信协议、通信端口、流持续时间、数据分组总数等。
二、特征选择。
从数据集中提取的特征众多,高维数据容易导致模型的过拟合,同时大量的数据会提高模型的复杂度,加大计算量,增加模型的训练时间。因此,有必要进行特征选择。
使用随机森林进行特征选择,就是对每一个特征在随机森林的每一颗决策树上的表现进行评估,然后进行比较,从中选择出表现较好的特征进行后续的特征学习。目前常用的评价标准主要有2种:基尼指数和袋外数据错误率。本发明采用基尼指数作为评价标准。每一个特征在随机森林每一个节点的重要性为节点分支前后基尼指数的变化量,然后对特征在随机森林中出现的所有节点的重要性求和,得到该特征的重要性评分。为便于比较,对重要性评分做归一化处理。
三、卷积神经网络特征学习。
通过此前的特征选择,得到特征重要性的排序,选择重要性前20的特征进行学习。
LeNet-5是一种典型的卷积神经网络模型,在手写数字识别等领域被广泛应用。本发明采用的卷积神经网络的架构基于LeNet-5,并做了针对性的改进。
神经网络的输入为20个特征数据转化得到的32*32的灰度图像,输出为流量分类结果,即正常流量和僵尸网络流量,因此输出层的神经元为2个,使用softmax分类器。
卷积层1:使用32个5*5的卷积核进行卷积操作,滑动步长为1,输出32个28*28的特征面。特征面大小的计算公式:
Figure DEST_PATH_IMAGE002
式中,oMapN为输入特征面大小,CWindow为卷积核大小,CInterval为滑动步长;采用ReLU作为激励函数,在使用激励函数前增加批量归一化层。
池化层1:采用2*2的池化窗口,滑动步长为2,使用随机池化的方法进行池化操作,该方法在一定程度上可以同时保留图像的背景信息和纹理信息,减少误差,同时随机操作又能较好的避免过拟合的出现。输出为32个14*14的特征面。
卷积层2:使用64个3*3的卷积核进行卷积操作,滑动步长为1,输出64个12*12的特征面。采用ReLU作为激励函数,在使用激励函数前增加批量归一化层。
池化层2:与上一层池化层使用相同的参数,输出64个6*6的特征面。
全连接层1:由1024个神经元组成,与上一池化层全连接,输出为1024维向量。
全连接层2(输出层):由2个神经元组成,与上一层全连接,输出2维向量。
此外,使用dropout方法缓解过拟合,鉴于神经网络增加了批量归一化层,可以使用较小的dropout,参数设置为0.2。
当前,基于网络流的僵尸网络检测算法主要有朴素贝叶斯、C4.5、随机森林、神经网络等;其中,单纯使用卷积神经网络进行检测,可以达到94.5%的准确率。因为本发明增加了特征选择,减少有效特征额损失,同时改进了卷积神经网络的结构,因此,使用该方法对僵尸网络的检测准确率可达到96.8%,并且训练速度快于原先方法。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (5)

1.一种基于特征选择的僵尸网络检测方法,其特征在于,步骤如下:
S1使用公开的僵尸网络数据集,解析网络流量提取流量特征;
S2采用随机森林算法计算流量特征的重要性并进行排序,从而选择出合适的特征进行学习;
S3采用改进的卷积神经网络对流量特征进行学习,生成僵尸网络检测模型;
S4对网络流量进行捕获,使用训练好的僵尸网络检测模型检测是否被感染。
2.根据权利要求1所述的一种基于特征选择的僵尸网络检测方法,其特征在于,步骤S1的具体步骤为:
S101.下载僵尸网络数据集,包括僵尸网络流量和正常流量,文件格式为pcap;
S102.对pcap文件进行分割,采用基于流的分割方法,将具有相同五元组(源IP、源端口、目的IP、目的端口、传输协议)的数据包聚合成数据流,以此为粒度将大容量的pcap文件分割成小容量的pcap文件;
S103.使用CICFlowmeter提取流量特征。
3.根据权利要求1所述的一种基于特征选择的僵尸网络检测方法,其特征在于,步骤S2的具体步骤为:
S201.对提取到的特征使用随机森林算法计算特征重要性,采用基尼系数作为评价指标;
S202.计算结果进行排序,选择前20的特征进行学习。
4.根据权利要求1所述的一种基于特征选择的僵尸网络检测方法,其特征在于,步骤S3的具体步骤为:
S301.将选择后的特征数据转换成二维灰度图像;
S302.构建卷积神经网络进行特征学习,以二维灰度图像作为输入,特征学习结束后使用softmax进行分类,输出检测结果。
5.根据权利要求1所述的一种基于特征选择的僵尸网络检测方法,其特征在于,步骤S4的具体步骤为:
S401.使用wireshark工具捕获网络流量;
S402.对捕获的流量进行分割,提取出20种特征并转换为二维灰度图像;
S403.使用步骤S3中训练好的模型进行僵尸网络检测。
CN202010041369.2A 2020-01-15 2020-01-15 一种基于特征选择的僵尸网络检测方法 Pending CN111224994A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010041369.2A CN111224994A (zh) 2020-01-15 2020-01-15 一种基于特征选择的僵尸网络检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010041369.2A CN111224994A (zh) 2020-01-15 2020-01-15 一种基于特征选择的僵尸网络检测方法

Publications (1)

Publication Number Publication Date
CN111224994A true CN111224994A (zh) 2020-06-02

Family

ID=70832354

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010041369.2A Pending CN111224994A (zh) 2020-01-15 2020-01-15 一种基于特征选择的僵尸网络检测方法

Country Status (1)

Country Link
CN (1) CN111224994A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291277A (zh) * 2020-12-29 2021-01-29 腾讯科技(深圳)有限公司 一种恶意软件检测方法、装置、设备及存储介质
CN112468439A (zh) * 2020-10-28 2021-03-09 中国人民武装警察部队后勤学院 基于深度学习方法的物联网DDoS攻击流量检测***
CN112800424A (zh) * 2021-02-02 2021-05-14 西南交通大学 一种基于随机森林的僵尸网络恶意流量监测方法
CN113242233A (zh) * 2021-05-08 2021-08-10 北京交通大学 一种多分类的僵尸网络检测装置
CN113518073A (zh) * 2021-05-05 2021-10-19 东南大学 一种比特币挖矿僵尸网络流量的快速识别方法
CN113645182A (zh) * 2021-06-21 2021-11-12 上海电力大学 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法
CN114362972A (zh) * 2020-09-27 2022-04-15 中国科学院计算机网络信息中心 一种基于流量摘要和图采样的僵尸网络混合检测方法及***
CN114615045A (zh) * 2022-03-09 2022-06-10 湘潭大学 一种基于深度森林的物联网僵尸网络流量检测与分类方法
CN114726653A (zh) * 2022-05-24 2022-07-08 深圳市永达电子信息股份有限公司 基于分布式随机森林的异常流量检测方法和***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107993139A (zh) * 2017-11-15 2018-05-04 华融融通(北京)科技有限公司 一种基于动态规则库的消费金融反欺诈***与方法
US20180351972A1 (en) * 2017-05-31 2018-12-06 Infoblox Inc. Inline dga detection with deep networks
CN109391602A (zh) * 2017-08-11 2019-02-26 北京金睛云华科技有限公司 一种僵尸主机检测方法
CN110533683A (zh) * 2019-08-30 2019-12-03 东南大学 一种融合传统特征与深度特征的影像组学分析方法
CN110691073A (zh) * 2019-09-19 2020-01-14 中国电子科技网络信息安全有限公司 一种基于随机森林的工控网络暴力破解流量检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180351972A1 (en) * 2017-05-31 2018-12-06 Infoblox Inc. Inline dga detection with deep networks
CN109391602A (zh) * 2017-08-11 2019-02-26 北京金睛云华科技有限公司 一种僵尸主机检测方法
CN107993139A (zh) * 2017-11-15 2018-05-04 华融融通(北京)科技有限公司 一种基于动态规则库的消费金融反欺诈***与方法
CN110533683A (zh) * 2019-08-30 2019-12-03 东南大学 一种融合传统特征与深度特征的影像组学分析方法
CN110691073A (zh) * 2019-09-19 2020-01-14 中国电子科技网络信息安全有限公司 一种基于随机森林的工控网络暴力破解流量检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
吴迪等: "BotCatcher:基于深度学习的僵尸网络检测***", 《通信学报》 *
寇广等: "深度学习在僵尸云检测中的应用研究", 《通信学报》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114362972A (zh) * 2020-09-27 2022-04-15 中国科学院计算机网络信息中心 一种基于流量摘要和图采样的僵尸网络混合检测方法及***
CN114362972B (zh) * 2020-09-27 2023-07-21 中国科学院计算机网络信息中心 一种基于流量摘要和图采样的僵尸网络混合检测方法及***
CN112468439A (zh) * 2020-10-28 2021-03-09 中国人民武装警察部队后勤学院 基于深度学习方法的物联网DDoS攻击流量检测***
CN112468439B (zh) * 2020-10-28 2023-10-24 中国人民武装警察部队后勤学院 基于深度学习方法的物联网DDoS攻击流量检测***
CN112291277A (zh) * 2020-12-29 2021-01-29 腾讯科技(深圳)有限公司 一种恶意软件检测方法、装置、设备及存储介质
CN112800424A (zh) * 2021-02-02 2021-05-14 西南交通大学 一种基于随机森林的僵尸网络恶意流量监测方法
CN113518073A (zh) * 2021-05-05 2021-10-19 东南大学 一种比特币挖矿僵尸网络流量的快速识别方法
CN113242233A (zh) * 2021-05-08 2021-08-10 北京交通大学 一种多分类的僵尸网络检测装置
CN113645182A (zh) * 2021-06-21 2021-11-12 上海电力大学 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法
CN114615045A (zh) * 2022-03-09 2022-06-10 湘潭大学 一种基于深度森林的物联网僵尸网络流量检测与分类方法
CN114726653A (zh) * 2022-05-24 2022-07-08 深圳市永达电子信息股份有限公司 基于分布式随机森林的异常流量检测方法和***

Similar Documents

Publication Publication Date Title
CN111224994A (zh) 一种基于特征选择的僵尸网络检测方法
Sriram et al. Network flow based IoT botnet attack detection using deep learning
Salo et al. Dimensionality reduction with IG-PCA and ensemble classifier for network intrusion detection
CN112398779B (zh) 一种网络流量数据分析方法及***
CN114257386B (zh) 检测模型的训练方法、***、设备及存储介质
Farid et al. Combining naive bayes and decision tree for adaptive intrusion detection
CN105208037B (zh) 一种基于轻量级入侵检测的DoS/DDoS攻击检测和过滤方法
CN107370752B (zh) 一种高效的远控木马检测方法
Catak et al. Distributed denial of service attack detection using autoencoder and deep neural networks
Tufan et al. Anomaly-based intrusion detection by machine learning: A case study on probing attacks to an institutional network
Staudemeyer et al. Extracting salient features for network intrusion detection using machine learning methods
CN110417729B (zh) 一种加密流量的服务与应用分类方法及***
CN112367334A (zh) 网络流量识别方法、装置、电子设备和存储介质
Ahmed et al. Intrusion Detection System in Software-Defined Networks Using Machine Learning and Deep Learning Techniques--A Comprehensive Survey
CN112800424A (zh) 一种基于随机森林的僵尸网络恶意流量监测方法
Ghalehgolabi et al. Intrusion detection system using genetic algorithm and data mining techniques based on the reduction
CN114239737A (zh) 一种基于时空特征与双层注意力的加密恶意流量检测方法
CN110519228B (zh) 一种黑产场景下恶意云机器人的识别方法及***
Al-Fawa'reh et al. Detecting stealth-based attacks in large campus networks
Elshrkawey et al. An enhanced intrusion detection system based on multi-layer feature reduction for probe and dos attacks
JP2004312083A (ja) 学習データ作成装置、侵入検知システムおよびプログラム
Kozlowski et al. A New Method of Testing Machine Learning Models of Detection for Targeted DDoS Attacks.
Yang et al. Botnet detection based on machine learning
Wanode et al. Optimal feature set selection for IoT device fingerprinting on edge infrastructure using machine intelligence
Smadia et al. VPN Encrypted Traffic classification using XGBoost

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200602

RJ01 Rejection of invention patent application after publication