一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种比特币挖矿僵尸网络流量的快速识别方法与流程

2021-10-19 11:51:00 来源:中国专利 TAG:
一种比特币挖矿僵尸网络流量的快速识别方法与流程
本发明属于网络空间安全
技术领域
,涉及一种挖矿僵尸网络流量的快速识别方法。
背景技术
为了减轻挖矿所需电力和基础设施的成本,更多的不法分子为了谋求暴利,选择利用挖矿病毒和挖矿木马等一系列恶意软件操纵他人主机以实现挖取加密货币的目的。该恶意攻击占用大量的用户资源,严重影响了正常的工作生活,同时也对用户设备造成无法挽回的过度消耗。当前针对比特币僵尸网络流量的检测主要集中在两个方向,其一是通过提取数据包负载信息来进行相关的信息识别,其二是通过收集相互连接的僵尸网络节点的通信流量,以图算法为基础,从流量中获取僵尸网络节点的聚类系数和顶点度特征来进行行为模式的对比分析。由于前者可以对负载内容中的矿池协议进行识别,因此可以准确判断挖矿僵尸网络的存在,而后者对流量行为特征的比较可以适用于多种应用场合,两者与机器学习算法的结合都可以达到较高的检测准确率。然而这些方法存在如下主要问题:(1)从数据集中提取负载信息消耗大量的资源,同时降低了检测的速度,难以在实时检测上进行运用。(2)使用的特征需要用到挖矿僵尸网络的整个过程,搜集的数据的时间过长。(3)获取整个僵尸网络内的节点交互流量上存在难度,针对单一节点的通信无法有效进行识别。(4)单独对僵尸网络和加密货币挖掘进行检测,没有结合两个阶段的特征。(5)使用的数据集未公开,无法保证其在其他数据集上的检测能力。因此,本发明通过搜集真实比特币僵尸网络挖矿流量,比较正常和挖矿两种模式下通信流量的特征差异,选取合适的特征,运用随机森林算法完成在单个节点对挖矿僵尸网络流量的快速识别。技术实现要素:为了有效遏制挖矿僵尸网络的泛滥,对挖矿僵尸网络进行有效监管,实现对比特币挖矿僵尸网络流量的快速识别,本发明提出了一种比特币挖矿僵尸网络流量的快速识别方法。针对比特币挖矿僵尸网络,首先对主机端同行流量进行采集,根据正常和挖矿的两种模式对比分析,选择最合适的特征类型。确定特征类别后进行反复试验比较确定选定类型的特征数量,最后使用随机森林算法进行识别模型的生成。为了达到上述目的,本发明提供如下技术方案:一种比特币挖矿僵尸网络流量的快速识别方法,包括如下步骤:(1)搜集用于模型训练的比特币挖矿僵尸网络流量和正常网络通信流量;(2)根据分析的正常和挖矿的两种模式,从原始数据中选择合适的特征种类,接着通过对比分析选择出合适的特征数量。确定特征的种类和数量之后从原始数据中提取训练和测试数据;(3)进行机器学习的模型训练,使用测试集对获得的模型进行测试评估;进一步,所述步骤(1)具体包括如下子步骤:(1.1)在vmware软件中安Linux和Windows操作系统;(1.2)搜集比特币挖矿僵尸网络对应病毒信息;(1.3)获取病毒样本;(1.4)在虚拟机对应系统中设置病毒运行环境;(1.5)搜集正常的网络流量;(1.7)运行病毒样本搜集病毒流量;(1.8)将搜集到的病毒流量和正常流量存储下来。进一步,所述步骤(2)具体包括如下子步骤:(2.1)建立正常和挖矿两种模式,对两种模式进行比较分析,确定当前合适的特征种类;(2.2)使用随机森林算法进行分析比较确定选定特征的数目;(2.3)使用随机森林的feature_importance来进行特征重要性的评估,其中feature_importance原理为使用基尼指数对特征重要性进行评分。进一步的我们选取的特征如下表1所示:特征编码特征含义1流中第一个数据包和第二个数据包的到达的时间间隔2流中第二个数据包和第三个数据包的到达时间间隔3流中第一个数据包大小4流中第二个数据包大小5流中第三个数据包大小6流中前四个数据包的平均到达速率7源端口号8目的端口号9流中数据包含有SYN标志占前四个数据包比例10流中数据包含有FIN标志占前四个数据包比例11流中前四个数据包中包含ACK和PUSH标志数据包所占比例(2.4)将步骤(1)中采集的流量数据作为原始数据,经过之前的特征选取从中提取训练数据,生成机器学习训练文件。进一步,所述步骤(3)具体包括如下子步骤:(3.1)使用交叉验证和网格搜索方法确定随机森林参数,获取得到的模型;(3.2)使用测试集对模型进行评估。与现有技术相比,本发明具有如下优点和有益效果:(1)本发明能够快速精确地识别当前网络中存在的比特币僵尸网络流量,便于网络管理者能够及时有效遏制住比特币挖矿僵尸网络的泛滥。(2)本发明中搜集的流量源自桥接模式中网卡获取的流量,这一流量搜集模式和监管者搜集流量模式类似,具有较高的实用价值。(3)本发明以真实网络流量和真实挖矿僵尸网络流量作为研究背景流量,提出了正常网络交互模式和挖矿僵尸网络交互模式,对比分析获得了最适合的特征,适用范围广。(4)本发明在特征的选取上选择了一条流的前四个数据包的各种信息作为特征,不但减轻了存储空间的压力,同时由于具有快速的检测能力,保证了检测的实时性。附图说明图1正常网络交互模式;图2挖矿僵尸网络交互模式;图3识别框架示意图;图4不同算法准确率结果;图5不同算法召回率结果;图6随机森林混淆矩阵结果图。具体实施方式以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。实施例1:本发明提出了一种比特币挖矿僵尸网络流量的快速识别方法,识别框架如图3所示,分为三个部分,第一部分为模拟环境的构造,具体内容为搜集对应挖矿僵尸网络病毒样本,确定样本所需要的运行环境,在虚拟机上设置病毒样本所需环境,运行病毒样本,获取其产生的流量;第二部分为特征的提取,具体内容为经过模式比对、数据分析等操作获取合适的特征,使用挖矿病毒流量和正常流量来构建流量数据训练集;第三部分为识别模型的生成和验证,具体内容为划分测试集和训练集,在训练集上使用交叉验证和网格搜索方法对随机森林算法进行参数的选择,获取对应的训练模型后在测试集上对训练模型进行验证操作。具体地说,一种比特币挖矿僵尸网络流量的快速识别方法,包括如下步骤:(1)构造模型环境,获取分析所需要的数据流量。本步骤的具体过程如下:(1.1)根据安全厂商报告获取比特币挖矿僵尸网络病毒md5特征码;(1.2)登录virussahre网站,根据获取到的病毒md5码搜索获取病毒样本;(1.3)登录virustotal网站,根据获取到的病毒md5码搜索病毒样本运行所需环境;(1.4)在主机端安装vmware软件,安装Ubuntu和Windows10两种操作系统,根据之前获取的信息设置系统环境保证病毒样本顺利运行;(1.5)将vmware虚拟机网络连接方式设置为桥接模式,在虚拟机内使用命令查看当前系统对应ip地址;(1.6)启动Wireshark流量采集应用开始进行正常流量数据采集;(1.7)使用常见应用进行包括但不限于网页访问、文件下载,文件上传等操作;(1.8)设定采集时间,完成采集后以pcap文件的形式存储当前采集的正常流量数据文件;(1.9)在虚拟机中运行挖矿僵尸网络病毒样本;(1.10)设定采集时间,完成采集后以pcap文件形式存储当前采集的挖矿僵尸网络流量;(1.11)重复(1.9)~(1.10)两步,搜集多种系统下的多类别的比特币挖矿僵尸网络病毒流量。(2)从原始数据中提取能够用于完整流量数据识别分类的特征,并进行特征选择,保留能够用于记录识别分类的特征后,从原始数据中提取训练数据,进行机器学习的模型训练。本步骤中具体过程如下:(2.1)首先构建正常和挖矿两种流量的模式,分析对比得到所需特征种类。见图1、2;(2.2)然后使用步骤(1)中采集的数据通过对比随机森林、K近邻、朴素贝叶斯等算法模型的准确率等参数,选择使用准确率最高的随机森林算法。接着使用随机森林算法进行对比分析获取特征的数目。(2.3)使用随机森林的feature_importance来进行特征重要性的评估,其中feature_importance原理为使用基尼指数对特征重要性进行评分。(2.3)在综合考虑了特征的重要性分数与采用特征的实际效果,最终选择的特征如表2所示(2.4)将步骤(1)中采集的流量数据作为原始数据,经过之前的特征选取从中提取训练数据,生成机器学习训练文件。(3)进行机器学习的模型训练,使用测试集对获得的模型进行测试评估。本步骤具体包括以下过程:(3.1)将提取的数据按照8:2的比例划分为训练集和测试集;(3.2)使用交叉验证和网格搜素对随机森林的参数进行选择,使用训练集对模型进行训练;(3.3)使用测试集进行验证,得到最后的检测准确率等模型评估结果。分析结果见图4、5。本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜