SQL注入样本自动生成技术的研究与实现
发布时间:2021-07-05 23:47
互联网在人们生活中占据的地位越来越重要,Web应用愈加复杂和多样,这导致Web系统漏洞层出不穷,Web安全问题日益突出。在对Web应用程序攻击类型进行统计分类之后发现,SQL注入是目前黑客最常用的Web攻击之一。随着机器学习技术的不断成熟,利用机器学习来检测和防范SQL注入已成为IDS新的解决方案,其中SQL注入样本集的选取是机器学习的关键。本文研究了SQL注入样本集的生成问题,提出了生成样本集的相关算法,旨在解决SQL注入样本集收集困难的问题,论文的主要工作如下:(1)提出并设计了一种基于算法生成SQL注入样本集的解决方案。首先,根据SQL注入的不同类型,构造了四种相应的SQL注入语句,进而生成了SQL注入样本集(负样本集)。然后,设计算法生成没有攻击性的正常样本集(正样本集)。最后,将正、负两种样本集打乱顺序混合,形成SQL注入样本集。(2)搭建了一个实验平台,设计实验验证了SQL注入样本的有效性。首先,从正、负样本集中分别选取若干核心样本作为验证样本。然后,把验证样本注入实验平台,验证负样本能有效注入平台,而正样本不能注入。最后,根据验证样本的注入效果,改进了样本生成算法,提升了...
【文章来源】:西南交通大学四川省 211工程院校 教育部直属院校
【文章页数】:58 页
【学位级别】:硕士
【部分图文】:
样本组成图
图 4-3 SQLProductor 类图量,整型变量 orderbyNum 用来存储名,字符串变量 tablename 用来存储表的注入点,字符串数组变量 sqlFunc 用 database()函数用来查询当前数据库,group_concat(schema_name) from 据库的名字等。使用字符串数组变量用字符串变量 requestStr 来存取页面交变量、成员函数以及三大模块之间的本并存入字符串数组变量 SQLS 中本写入 txt 文本中,用来存储。页面交样本,获得页面反馈信息并加以解析关信息。解析后的信息有助于样本生
图 4-4 类中成员关系图parseString() 在 页 面 交 互 模 块 中 是 用 来 解 析 interHTML() 返 回 的 字stStr 的。针对 orderbyNum 解析过程,其主要思路是使用 order by n,只列数时,页面才会显示错误,所以只需要构造 order by 1,order by 2…o到页面显示错误,这样就找到了列数为 n-1。orderbyNum 解析的核心代or (int j = 1; j < orderByNum; j++){//样本字符串 strstring str = errPoints.at(i) + " order by " + to_string(j) + "--+";int len = str.size();char * pc = new char[len+1];strcpy_s(pc, len+1,str.c_str());//样本注入页面得到页面反馈字符串requestStr = interHTML (_T(pc));
【参考文献】:
期刊论文
[1]机器学习及其算法和发展分析[J]. 姜娜,杨海燕,顾庆传,黄吉亚. 信息与电脑(理论版). 2019(01)
[2]机器学习算法在网络入侵检测中的应用综述[J]. 刘阚蓉,李丹,裴梦迪,张家熹. 赤峰学院学报(自然科学版). 2018(12)
[3]基于Web渗透测试的SQL注入研究[J]. 曾佩璇,汤艳君,钱丽纳. 网络安全技术与应用. 2018(12)
[4]基于TF-IDF文本向量化的SQL注入攻击检测[J]. 徐冬冬,谢统义,万卓昊,黄保华. 广西大学学报(自然科学版). 2018(05)
[5]基于关键词的文本向量化与分类算法研究[J]. 苏玉龙,张著洪. 贵州大学学报(自然科学版). 2018(03)
[6]Web应用中SQL注入攻击与对策[J]. 谢统义,徐冬冬. 广西教育学院学报. 2018(03)
[7]二阶SQL注入防御技术研究[J]. 王杰,汪洋. 电子设计工程. 2018(10)
[8]BP神经网络算法改进综述[J]. 尤晓东,苏崇宇,汪毓铎. 民营科技. 2018(04)
[9]基于Word2vector的文本特征化表示方法[J]. 周顺先,蒋励,林霜巧,龚德良,王鲁达. 重庆邮电大学学报(自然科学版). 2018(02)
[10]Web服务的SQL注入攻击及防御研究[J]. 符天,汪志,王贞. 软件. 2018(04)
硕士论文
[1]SQL注入攻击检测方法研究[D]. 肖泽力.东北师范大学 2018
[2]基于朴素贝叶斯和LSTM循环神经网络的SQL注入检测技术研究[D]. 李苍.湖南大学 2018
[3]基于机器学习的SQL注入检测技术研究[D]. 蒋磊.南京邮电大学 2017
[4]基于机器学习识别SQL注入攻击设计与实现[D]. 王誉东.华南理工大学 2017
[5]基于机器学习的SQL注入检测[D]. 张登峰.重庆邮电大学 2017
本文编号:3267074
【文章来源】:西南交通大学四川省 211工程院校 教育部直属院校
【文章页数】:58 页
【学位级别】:硕士
【部分图文】:
样本组成图
图 4-3 SQLProductor 类图量,整型变量 orderbyNum 用来存储名,字符串变量 tablename 用来存储表的注入点,字符串数组变量 sqlFunc 用 database()函数用来查询当前数据库,group_concat(schema_name) from 据库的名字等。使用字符串数组变量用字符串变量 requestStr 来存取页面交变量、成员函数以及三大模块之间的本并存入字符串数组变量 SQLS 中本写入 txt 文本中,用来存储。页面交样本,获得页面反馈信息并加以解析关信息。解析后的信息有助于样本生
图 4-4 类中成员关系图parseString() 在 页 面 交 互 模 块 中 是 用 来 解 析 interHTML() 返 回 的 字stStr 的。针对 orderbyNum 解析过程,其主要思路是使用 order by n,只列数时,页面才会显示错误,所以只需要构造 order by 1,order by 2…o到页面显示错误,这样就找到了列数为 n-1。orderbyNum 解析的核心代or (int j = 1; j < orderByNum; j++){//样本字符串 strstring str = errPoints.at(i) + " order by " + to_string(j) + "--+";int len = str.size();char * pc = new char[len+1];strcpy_s(pc, len+1,str.c_str());//样本注入页面得到页面反馈字符串requestStr = interHTML (_T(pc));
【参考文献】:
期刊论文
[1]机器学习及其算法和发展分析[J]. 姜娜,杨海燕,顾庆传,黄吉亚. 信息与电脑(理论版). 2019(01)
[2]机器学习算法在网络入侵检测中的应用综述[J]. 刘阚蓉,李丹,裴梦迪,张家熹. 赤峰学院学报(自然科学版). 2018(12)
[3]基于Web渗透测试的SQL注入研究[J]. 曾佩璇,汤艳君,钱丽纳. 网络安全技术与应用. 2018(12)
[4]基于TF-IDF文本向量化的SQL注入攻击检测[J]. 徐冬冬,谢统义,万卓昊,黄保华. 广西大学学报(自然科学版). 2018(05)
[5]基于关键词的文本向量化与分类算法研究[J]. 苏玉龙,张著洪. 贵州大学学报(自然科学版). 2018(03)
[6]Web应用中SQL注入攻击与对策[J]. 谢统义,徐冬冬. 广西教育学院学报. 2018(03)
[7]二阶SQL注入防御技术研究[J]. 王杰,汪洋. 电子设计工程. 2018(10)
[8]BP神经网络算法改进综述[J]. 尤晓东,苏崇宇,汪毓铎. 民营科技. 2018(04)
[9]基于Word2vector的文本特征化表示方法[J]. 周顺先,蒋励,林霜巧,龚德良,王鲁达. 重庆邮电大学学报(自然科学版). 2018(02)
[10]Web服务的SQL注入攻击及防御研究[J]. 符天,汪志,王贞. 软件. 2018(04)
硕士论文
[1]SQL注入攻击检测方法研究[D]. 肖泽力.东北师范大学 2018
[2]基于朴素贝叶斯和LSTM循环神经网络的SQL注入检测技术研究[D]. 李苍.湖南大学 2018
[3]基于机器学习的SQL注入检测技术研究[D]. 蒋磊.南京邮电大学 2017
[4]基于机器学习识别SQL注入攻击设计与实现[D]. 王誉东.华南理工大学 2017
[5]基于机器学习的SQL注入检测[D]. 张登峰.重庆邮电大学 2017
本文编号:3267074
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3267074.html