基于机器学习的网络入侵检测方法的设计与实现

论文价格:150元/篇 论文用途:硕士毕业论文 Master Thesis 编辑:硕博论文网 点击次数:
论文字数:33263 论文编号:sb2021121909513341334 日期:2021-12-21 来源:硕博论文网
本文是一篇计算机网络技术毕业论文,本文的主要研究工作如下:1)通过利用集成的欠采样思想和过采样结合的方法处理数据类别不均衡问题,使得模型得到更加有效的训练。2)建立了基于 SDS、SSS 和 Smote-RF 的三个弱分类器模型,能够对高维的网络流量数据进行有效的分析,检测入侵。

第一章 引言

1.1 研究背景与意义
近几年,人们已经适应了当前快速发展的信息化时代。计算机网络在教育、医疗和商业等领域被广泛应用,但是广泛应用的同时网络安全事件也随之而来。僵尸网络、木马和大规模身份窃取等各种恶意代码是网络攻击的主要手段,网络安全事件仍连年在整体数量上保持着持续上升的态势,同时网络安全事件出现了技术复杂化和多样化的特点。网络安全问题如不及时解决会使得入侵攻击越来越猖獗,因此网络安全的重要性日益凸显,人们对于网络安全技术的稳健性和可发展性提出了越来越迫切的需求。目前,互联网快速发展带来的网络安全问题主要包含以下几个方面:(1)对浏览器插件的攻击。(2)频繁的 Dos 攻击。(3)网站攻击。(4)内部用户的攻击。(5)垃圾邮件事件。因此,网络安全技术在 21 世纪是计算机网络快速发展的关键,只有对网络安全技术不断加强才能保证计算机网络这一社会发展的重要资源健康发展。2020 年网络安全态势报告[1] 对网络信息安全态势进行了详细的介绍,报告从漏洞类型、网络攻击、互联网恶意程序和恶意网址等方面进行分析并给出了具体的统计信息来说明网络安全漏洞和网络攻击数量较前几年都有所增长。其中,Web 攻击事件从之前注入类攻击手段变成了以远程代码执行漏洞利用攻击为主,该攻击门槛更低,危害更大。特别是在木马攻击方面,较以往的规模变得更加庞大而令人感到担忧。工业互联网安全态势也不容乐观,一些工业云平台和工业管理平台存在着大量的高危漏洞。由于 2020 年新增攻击和高危漏洞已经呈现较大上升趋势,2021 年出现针对这些情况的新型方式是有很大可能性的,入侵攻击情况可能会变得更加严峻。随着 5G 的普及使用和技术的迭代更新,网络接入的方式会变得更分散,可能会出现大量针对物联网的新型攻击方式。
2020 年度北京瑞星网安技术股份有限公司发布报告《2020 年中国网络安全报告》[2] ,报告对瑞星安全研究院、瑞星威胁情报平台等部门及国家信息中心数据进行了统计分析。针对我国在 2020 年全年的网络安全现状进行研究、分析与统计。该报告从恶意软件、网址和企业安全等多个方面进行了详尽的描述,其中 2020 年瑞星“云安全”系统截获到的病毒数量较多,高达 1.48 亿个。
..........................

1.2 国内外研究现状
早在 80 年代,人们就开始研究入侵检测技术。1980 年,James P Anderson[3]发表题为《计算机安全威胁检测技术报告》的技术报告,该报告首次提出关于入侵检测的概念,为日后入侵检测技术的快速发展奠定了基础。1986 年,为了检测用户对数据库的异常访问,W. T.Tener[4]在 IBM 主机上用 COBOL 开发的 Discovery 系统成为最早的基于主机的 IDS 原型之一。1987年,DE Denning[5] 提出了一个实时的入侵检测系统(Intrusion Detection System,IDS)抽象模型(Intrusion Detection Expert System,IDES),并且首次提出了在计算机系统的安全防御中引入入侵检测。1994 年,Mark Crosbie 和 Gene Spafford 等人提出将自治代理(AutonomousAgents)结合到入侵检测系统当中,其在效率和容错性等方面都有不错的效果,该理念与计算机科学其他领域,例如软件代理等相一致,同时该代理方法提高了 IDS 的扩展性和可维护性。随着入侵检测理论和方法的不断发展和改进,入侵检测得到了的快速的进步,但其仍然面临巨大的挑战,入侵检测系统的精确率、误报率等仍然差强人意,不能高效的检测出攻击流量数据,对于新型的攻击类型难以准确的实时检测,泛化性差。随着机器学习的异军突起,网络入侵检测开始引入机器学习模型来弥补自身检测的不足。
随着机器学习、人工智能和神经网络等的发展越来越成熟,更多算法模型被提出解决入侵检测问题,并且研究者们取得了一些较好的成果。Nancy Awadallah Awad[6] 在 kdd99 入侵数据集上进行了实验,其研究重点是几种机器学习算法。包括决策树和支持向量机等算法。最终通过基于混淆矩阵的评价函数发现决策树的效果较好。Xiaowei Wang[7]等人提出了一种改进的 CNN 算法,一种基于网络入侵检测的深度多尺卷积神经网络,通过不同尺度卷积提取大量高维未标记原始数据中的不同层次的特征,实验结果也达到了预期,在检测率相比于 CNN得到了提升。MAJJED AL-QATF[8]提出利用深度学习进行特征学习和降维,基于稀疏自编码器进行特征选择,然后将特征选择后的较优特征作为支持向量机的输入,该方法能够减少大量训练时间并且有效的提高了支持向量机(SVM)分类器的预测准确性。文献[9] 提出一种基于灰狼算法(GWO)的深度信念网络(DBN)入侵检测方法。文章利用 GWO 对隐藏层的节点数进行全局寻优操作,得到较好的 DBN 网络结构。通过对 DBN 网络的优化使得 DBN深度学习的效率更高。最后的实验结果表明,经过灰狼算法对 DBN 深度网络优化后的深度学习模型较其他入侵检测方法在检测率和准确率等方面表现更好。
.......................

第二章 相关研究

2.1 入侵检测
网络技术不断发展使得人们在各方面更加便利,网络信息系统已经成为了人们日常生活当中不可分割一个重要组成部分,入侵检测技术是随着时代不断发展出现的一种全新网络防护措施[18] 。入侵检测技术可以达到主动防御的目的,能够对网络进行监视并能够对其实时保护,因此入侵检测技术是现阶段网络安全的关键。本节将对入侵检测进行概述,同时介绍本文算法用到的机器学习基础知识。
2.1.1 入侵检测概述
入侵检测(Intrusion Detection),是一种网络安全服务,它是能够用来监控并分析系统事件并主动保护自己抵挡攻击的防御技术。通过研究分析计算机系统或网络中的一些关键点采集的信息,以此来发现网络中可能会发生攻击和入侵事件的迹象。
入侵检测系统(Intrusion Detection System,IDS),能够通过网络入侵检测技术监视和分析网络通信,通过主动响应来识别异常行为[19] 。通常情况下,入侵检测系统能够及时发现入侵或攻击,有效的阻止攻击进一步的对网络进行破坏。
Chen 等人[20] 提出了一种通用入侵检测框架(Common Intrusion Detection Framework ,CIDF),该框架能够对入侵检测系统内的信息提供共享和通信功能。系统框架由四部分构成,其中包括事件产生器、事件分析器、响应单元和事件数据库,如图 2.1 所示。
计算机网络技术毕业论文怎么写
计算机网络技术毕业论文怎么写
.........................

2.2 机器学习概述
机器学习(Machine Learning)是指能够让计算机具备人的学习能力,从大量杂乱的数据中学习到有用的知识。它的核心是设计一个程序,以便它可以在运行时提高其对特定任务处理的能力,但其并不是固定行为的程序。
2.2.1 机器学习基础概述
从大量数据中学习出知识是一种智能且繁杂的活动,学习知识的过程中推理过程也很重要。学习和推理之间相互关联,一般学习过程中用到的推理越多学习能力越强,根据学习中推理的多少,机器学习采用的策略可以分为四种,其中包括机械学习、示教学习、类比学习和示例学习[22] 。
当针对某问题进行建模时,数据类型不同则建模的方式也会有所不同。利用机器学习建模通常需要先考虑算法的学习形式。因此将算法按照学习方式进行分类,这样使得在建模时能够基于数据形式来选择合适的算法。按照学习方式可以分为以下几类。
1)有监督学习(Supervised Learning),训练数据是带有标签的,标签指的是数据类别或特征点位置等。通过预测结果和标签进行对比,不断的优化模型参数以达到较好的结果。具体过程是:将大量带有标签的数据输入到模型中,预测标签结果和实际标签结果进行比较,然后根据比较的结果优化模型,重复多次直至收敛[23] 。常用的有监督学习算法包括决策树(Decision Tree)和支持向量机(Support Vector Mathine,SVM)等。
2)无监督学习(unsupervised learning),基于无标签的数据进行建模,目的是能够学习数据的内部结构。其经常应用于聚类和关联规则的学习等方面。常见算法有关联规则算法(Apriori)算法以及 K 均值聚类算法(K-Means)等。
3)强化学习(Reinforcement Learning),也叫做奖励学习,是近年来是研究的热点。它从自身的以往经验中重复不断的学习获取知识,不需要大量的已经标记好的标签,只需要通过一个评价行为好坏的奖惩函数来获得反馈。其能够通过和外界环境交互,实现智能体的学习与进化,从而具有更强的适应性[24] 。
..................................

第三章 入侵检测模型的分析与设计....................................14
3.1 入侵检测模型的问题分析............................................14
3.2 入侵检测模型具体设计...........................................15
第四章 入侵检测模型的实现.........................22
4.1 数据预处理...........................................22
4.1.1 数据的选取.....................................22
4.1.2 数据的序列化和热编码........................................24
第五章 实验与分析.....................................34
5.1 实验环境...........................34
5.2 实验内容...................................34

第五章 实验与分析

5.1 实验环境
本文网络入侵检测实验的实验环境是在本人电脑上搭建具体环境独立完成,其配置环境如表 5.1 所示。其中利用机器学习方法进行入侵实验是通过搭建 Tensorflow 框架,利用 python语言编写程序。入侵检测系统利用 java 语言编写,同时利用 java 语言调用 python 程序完成系统入侵检测。
计算机网络技术毕业论文参考
计算机网络技术毕业论文参考
........................

第六章 总结及展望

6.1 论文工作总结
互联网的迅猛发展给人们带来了便利,但其本身的网络安全问题要引起人们足够的重视。尤其在 5G 网络逐渐成熟的今天,网络更加的发达。在互联网飞速的发展下,网络安全必定成为互联网用户应该注意的问题,因此入侵检测已经成为当今网络安全相当重要的一步,选择合适的建模方法对网络流量数据进行关联分析以发现攻击。
本文的主要研究工作如下:
1)通过利用集成的欠采样思想和过采样结合的方法处理数据类别不均衡问题,使得模型得到更加有效的训练。
2)建立了基于 SDS、SSS 和 Smote-RF 的三个弱分类器模型,能够对高维的网络流量数据进行有效的分析,检测入侵。
3)在多个弱分类器集成过程中,提出了一种多数投票法与 F1 分数权重矩阵加权结合的投票方法,整体提升了模型的准确率。
4)对模型进行持久化操作,完成入侵检测系统并将模型集成到系统中,利用抓包工具抓取流量数据包并且将其解析,最后将解析好的数据进行处理后输入到集成在系统中的入侵检测模型。系统能够检测出攻击并且可以根据检测到的攻击数量进行数据统计,验证了本文模型的有效性和实用性。
参考文献(略)

相关计算机论文论文