基于深度学习的Web攻击检测系统探讨与实现

论文价格:150元/篇 论文用途:硕士毕业论文 Master Thesis 编辑:硕博论文网 点击次数:
论文字数:37855 论文编号:sb2024022914590751899 日期:2024-03-09 来源:硕博论文网

本文是一篇软件工程论文,本文以有效载荷为分析对象,通过引入改进的TF-IDF算法给词频加权,可以将这些数量级小的攻击载荷提取出来,结合基于特征融合的深度学习分类模型,可以有效提升攻击检测的准确率,降低误报率。
1. 绪论
1.1 研究背景及意义
2023年3月,我国发布了第51次《中国互联网络发展状况统计报告》[1],报告显示,截至2021年12月,我国互联网宽带接入端口数达到10.71亿个,在当今的数字化时代,互联网已经成为了我国社会中极为重要的一部分。作为连接人与人之间、人与信息之间的桥梁,互联网极大地便利了人们的日常生活,也让人们更加便捷地获取知识和信息,从而推动了社会的不断进步和发展。然而,随着互联网规模的不断扩大,各种网络安全威胁,尤其是信息泄露问题日益严峻。报告中表明,在我国公民遭遇的网络安全事件中,个人信息泄露的比例高达19.6%,排在首位。网络应用的爆炸式增长加快了社会经济发展的脚步,同时也给保障信息安全带来了巨大的挑战。传统基于规则的网络攻击检测系统已经无法满足现代企业的安全需求,因此,在攻击检测中应用具有强大学习和表示能力的深度学习(Deep Learning)模型成为了网络安全领域的研究热点。 
网络安全的产生可以追溯到20世纪60年代,在这个时期,计算机的普及和互联网的发展正处于起步阶段。当时,网络安全主要关注计算机系统的物理安全和数据的保护,以避免机房被盗或数据丢失。在随后的几十年里,随着网络技术的不断更新和完善,网络安全问题也变得越来越复杂和严峻。在80年代初,第一个计算机病毒“Creeper”[2]诞生了,它可以通过网络传播并感染其他计算机。这标志着网络安全的另一个里程碑,人们开始认识到计算机病毒的危害性。为了应对这些威胁,人们开发了反病毒软件,并开始建立起针对计算机病毒的安全策略。在90年代,随着互联网的发展,人们开始关注网络的安全性和隐私保护。随着电子商务和在线金融交易的兴起,网络安全的重要性更是得到了进一步的提高。同时,黑客攻击、网络钓鱼和网络犯罪等网络安全威胁也随之出现[3]。21世纪初,随着移动互联网和云计算技术的快速发展,网络安全问题变得更加复杂和多样化。

软件工程论文怎么写
软件工程论文怎么写

..........................
1.2 国内外研究现状
目前,已经有很多学者对基于有效载荷的攻击检测技术进行了研究。Cai等人[12]利用了协议中特定字段的模式来生成特征,然后使用深度学习模型进行分类。Jan等人[13]利用有效载荷中的信息进行身份验证和认证,并防止中间人攻击。Chen等人[14]使用有标签的有效载荷数据训练分类器,然后使用迁移学习将分类器应用于没有标签的数据。Wu等人[15]提出了一种将有效载荷数据表示为基于树结构的形式,并基于该树结构进行特征提取。基于有效载荷的检测方法与传统检测方法的区别在于研究对象的不同,但是对于Web攻击检测系统而言,研究对象只是系统的一部分,若要提升攻击检测的效率和精度,则需要综合考虑整个系统的特点。
根据研究角度的不同,对于Web攻击检测系统的研究大体上可以分为两个部分,分别是预处理阶段和分类阶段。预处理阶段旨在将输入的HTTP请求数据转化为适合分类阶段处理的表示类型,而分类阶段旨在通过应用机器学习或深度学习模型等技术手段对输入的特征进行提取、学习,这两个阶段紧密结合,构成了完整的Web攻击检测系统。接下来本文将分别对这两个阶段涉及到的研究内容进行介绍。
..........................
2. 相关知识
2.1 Web攻击内容
Web攻击是指攻击者利用Web应用程序中的漏洞或弱点,通过发送特定的请求或注入特定的代码来获取未经授权的访问、窃取敏感信息、篡改数据等。根据OWASP 2023的前十名安全漏洞榜单[42]显示,注入攻击仍然是排在前列的Web攻击手段,容易被攻击者所利用,常见的注入攻击包括SQL(Structured Query Language)注入、跨站点脚本(Cross-Site Scripting,XSS)注入攻击和文件包含攻击(File Inclusion Vulnerability)等。这些攻击可以造成数据泄露、系统崩溃、用户信息被盗、网络服务被瘫痪等危害,对企业和用户的安全造成极大威胁。
下面是几种常见的Web攻击的具体内容:
(1)SQL注入攻击:
SQL是一种用于管理关系型数据库的编程语言,它是一种标准化语言,被广泛应用于各种关系型数据库管理系统。SQL注入攻击是一种利用Web应用程序中未经有效过滤的用户输入来注入恶意SQL语句的攻击手段,从而实现获取敏感数据、修改数据、甚至完全控制数据库的目的。在现代互联网的软件生态中,SQL语言作为后端数据库的查询语言被广泛应用于Web应用程序的构建上,因此SQL注入攻击是Web应用程序中最常见、也最危险的漏洞之一,可导致Web应用程序受到严重的损害和信息泄露。攻击者可以在Web应用程序的输入框、搜索框、表单等用户交互界面输入恶意代码,而Web应用程序则将这些代码与SQL查询语句一起发送到后端数据库服务器。攻击者利用这个漏洞,可以通过输入特定的字符串或符号,成功地修改SQL查询语句,从而绕过Web应用程序的安全机制,获取敏感信息或者控制数据库。
(2)XSS注入攻击
XSS注入攻击是一种常见的Web安全漏洞,攻击者可以通过在Web应用程序中植入恶意脚本代码来窃取用户的敏感信息或者执行其他攻击。这种攻击方式的出现主要是因为Web应用程序开发者没有对用户输入的数据进行严格的过滤和检验。攻击者还可以通过各种形式的用户交互界面,例如表单、搜索框、评论区等,将恶意脚本代码插入到网页中,当其他用户在浏览器端浏览该网页时,恶意脚本代码就会被执行,从而导致XSS攻击。
................................
2.2 有效载荷的预处理技术
2.2.1 词频统计算法
词频统计算法是一种常用的文本分析技术,用于计算文本中单词的出现频率,以此作为文本特征的一部分。它通过扫描文本中的单词并记录它们的出现次数来实现。在现代自然语言处理领域中,词频统计算法被广泛应用于文本挖掘、信息检索、自然语言处理、语言建模和文本分类等任务中,它们通常作为预处理步骤,用来提取关键特征并构建模型。
在词频统计算法中,简单计数法是一种最基本的算法。它通过对文本中出现的每个单词进行计数来确定其出现频率。然而,简单计数法的缺点是它不能考虑单词的语义和上下文信息,因此可能会导致一些单词被过度计数或低估计数。因此,简单计数法常常需要结合其他技术来提高准确性。另外,N-Gram算法是一种基于N元语法的词频统计算法。N-Gram算法通过将文本分割成N个单元来统计单词的频率,这些单元可以是单个单词或多个单词的组合。N-Gram算法通常用于自然语言处理领域的文本生成和语言建模等任务,但其对于文本的语义信息关注不足,同时该算法会生成大量的N元组,其中许多N元组只出现过一次或几次,导致数据非常稀疏,这会影响统计结果的准确性。
TF-IDF(Term Frequency-Inverse Document Frequency)算法是一种常用的词频统计算法,它不仅考虑了单词的频率,还考虑了单词在文本中的重要性。TF-IDF算法通过计算单词在文档中的词频和单词在语料库中的逆文档频率来计算单词的权重,其基本思想是将一篇文档中出现频率较高的词语,且在文集中出现频率较低的词语作为特征,用于表示该文档。这样可以有效地减少一些常用词语对文本特征的影响,同时保留一些关键词,提高特征表示的效果。
综上所述,词频统计算法在自然语言处理领域扮演着至关重要的角色。在实际应用中,不同的算法和技术可以结合使用,以提高准确性和性能。
.............................
3. 基于改进的TF-IDF的有效载荷预处理方法 ...................... 20
3.1 预处理方法概述 .......................... 20
3.2 有效载荷的分词 .............................. 21
4. 基于特征融合的有效载荷分类模型 ................................ 32
4.1 特征融合模型 ...................................... 32
4.1.1 模型架构 ................................... 32
4.1.2 模型构建思路 ............................... 33
5. 基于深度学习的Web攻击检测系统设计与实现 ............................ 42
5.1 需求分析 ................................... 42
5.2 系统架构及功能设计 .......................... 44
5. 基于深度学习的Web攻击检测系统设计与实现
5.1 需求分析
在当前的互联网环境下,绝大多数企业都采用Web应用作为自己的门户网站,然而由于缺乏安全意识,开发者在编写代码时往往会存在许多的漏洞,让攻击者可以通过注入恶意载荷或者攻击脚本窃取用户的敏感信息。因此,结合深度学习的优秀性能,开发合适的Web攻击检测系统,可以为这些站点拦截和分析HTTP请求,对网络中无处不在的攻击进行防御和检测。
本章通过应用前文提出的有效载荷分类方法,设计并实现了一个Web攻击检测系统,其功能需求主要包括数据拦截、数据处理、攻击检测和攻击展示四个模块,具体如下:
(1)数据存储模块:数据存储模块的功能主要是收集来自Web站点的请求数据,并将这些数据存储下来,用于离线的模型训练或者更新。
(2)数据处理模块:基于第二章中提出的有效载荷预处理方法,对输入的HTTP请求数据进行预处理操作,抽取出有效载荷并转为词向量矩阵。
(3)攻击检测模块:调用训练好的检测模型对处理好的有效载荷数据进行实时检测,对于正常的HTTP请求,对其放行,对其放行,并将正常响应返回给Web站点,对于可能是攻击的异常请求,则将其留存,记录下相关的请求信息,以供管理者查看或者更新检测模型。

软件工程论文参考
软件工程论文参考

.............................
6. 总结与展望
6.1 总结
随着互联网技术的飞速发展,越来越多的企业选择接入Web应用作为自己的门户网站,并通过Web应用进行数据交换和信息获取。而随着接入网络的用户量不断提升,网络环境也变得更加的错综复杂,而且流量的类型也越来越多样化,使得Web攻击的检测变得越来越困难。因此,对Web攻击检测系统进行研究,提升攻击检测的效果对于保障企业和用户的信息财产安全具有重要意义。目前,大部分研究者通过词频技术或统计模型对Web应用中的请求数据进行预处理,但在实际应用中,攻击内容占整个请求内容的比例很小,使用上述的预处理方法提取出的词典(或词汇表)的表示能力差,会忽略隐藏的攻击内容,本文以有效载荷为分析对象,通过引入改进的TF-IDF算法给词频加权,可以将这些数量级小的攻击载荷提取出来,结合基于特征融合的深度学习分类模型,可以有效提升攻击检测的准确率,降低误报率。本文的主要工作如下:
(1)针对Web应用的来源数据种类复杂,数据量大的问题,提出了一种处理方法,首先对HTTP请求数据进行分析,对于GET类型请求,对URL进行分析,对于POST类型请求,对其请求消息体进行分析,通过正则表达式抽取出其中的有效载荷内容,去除冗余的符号和无用的控制协议数据。然后,引入改进的TF-IDF算法,通过加权词频算法对数据集进行处理,构建出有效载荷词典,最后,通过Word2Vec模型训练出具有区分度的有效载荷词向量,为分类模型提供输入。
(2)针对单一的模型对有效载荷特征提取不足的问题,为了进一步提升有效载荷的分类效果,提出了一种基于特征融合的深度学习分类模型。将Text-CNN提取的局部词语特征和BiLSTM-Attention提取的长文本的上下文信息特征进行拼接融合,输入到全连接层中进行分类。实验结果表明,与本文提出的预处理方法结合后,该模型的训练速度得到了有效提升。同时,与单一的模型以及其他分类方法进行对比,本文提出的特征融合模型分类的效果更好。
参考文献(略)


如果您有论文相关需求,可以通过下面的方式联系我们
点击联系客服
QQ 1429724474 电话 18964107217