[发明专利]基于动态克隆选择算法的SQL注入攻击检测方法有效
| 申请号: | 201810217008.1 | 申请日: | 2018-03-16 |
| 公开(公告)号: | CN108337268B | 公开(公告)日: | 2019-08-30 |
| 发明(设计)人: | 兰方鹏;张泽华 | 申请(专利权)人: | 太原理工大学 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/24 |
| 代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
| 地址: | 030000 *** | 国省代码: | 山西;14 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 克隆选择算法 检测器 动态检测模块 检测 快速模式匹配 规则库检测 客户浏览器 适应度函数 更新系统 检测结果 检测模块 模式匹配 性能下降 异常数据 运行动态 正常数据 语句 调用 变形 攻击 引入 失败 优化 学习 | ||
1.基于动态克隆选择算法的SQL注入攻击检测方法,其特征在于,按照以下步骤进行:
步骤S1:提取客户浏览器端提交的SQL语句,把该SQL语句提交给规则库检测模块进行“SQLIAs”快速模式匹配,如果匹配成功,表明该语句包含注入攻击代码,系统终止用户提交的请求;
步骤S2:将模式匹配失败的语句提交给动态检测模块进行更深层次的检测,在动态检测模块运行之前引入局部离群因子作为适应度函数来优化检测器之间的距离,从而构造高效的检测器来识别正常数据和异常数据;
步骤S3:运行动态检测模块进行检测;
步骤S4:调用克隆选择算法进行学习识别;
步骤S5:根据检测结果更新系统模块。
2.根据权利要求1所述的基于动态克隆选择算法的SQL注入攻击检测方法,其特征在于,所述步骤S1中,规则库检测模块的快速模式匹配方法具体步骤如下:
步骤S11:将空格分割后的SQL查询语句以滑动窗口的形式和规则库中异常SQL查询语句逐条进行比对,当查询语句中第1个单词的内容和规则库中的某个位置的单词内容相等时,计算该位置之后子串的长度,若该字串的长度和查询语句的长度不等,模式匹配失败,表明该SQL语句可能是正常数据,也可能是未知的异常数据,需要动态检测模块进行更深入的检测;
步骤S12:若该字串的长度和查询语句的长度相等,且相似度高,表明该查询语句和规则库检测模块中的这条数据属于同一异常数据样本,模式匹配成功,系统拒绝SQL查询,其中相似度的计算公式如下:
其中:U是待检测的SQL查询语句,S[i]表示规则库模块列表中第i个异常数据模式,Matchnum(U,S)是U和S中对应位置单词相等的个数,待检测的SQL查询语句的长度用length(Q)来表示,当Similarity的值大于0.88时,认为相似度高。
3.根据权利要求1所述的基于动态克隆选择算法的SQL注入攻击检测方法,其特征在于,所述步骤S2中构造高效的检测器的步骤如下:
步骤S21:随机生成一批SQL查询语句作为候选检测器,在该候选检测器中选取一条查询语句作为候选抗体x;
步骤S22:计算该候选抗体x与候选检测器中第i个抗体bi的欧氏距离disi,如果disi小于所有抗体的检测半径,表明成熟抗体落入“自我空间范围内”,因此删除x,继续取出下一个候选抗体;
步骤S23:如果disi大于任意一个抗体的检测半径,则计算候选抗体x与自我集合S中所有样本的欧式距离,并得出最小距离dismin;
步骤S24:如果最小距离dismin大于抗体bi的自我半径Rbj,j=1,2,…,k,则将抗体加入到成熟检测器中,并将抗体的自我半径Rbj调整为新的自我半径R′bj,新自我半径R′bj的计算公式如下:
R′bj=dismin-Rbj j=1,2,…,k (2)
步骤S25:如果最小距离dismin小于抗体bi的自我半径Rbj,j=1,2,…,k,则删除候选抗体x;
步骤S26:从该候选检测器中继续选取下一个抗体作为候选抗体x,重复步骤S21-S25操作;
步骤S27:在生成的成熟检测器中选定任一检测器di,为di选取k个邻居组成临域集合定义di与其临近点之间的距离为令dis-max(di)为其中最大的距离,令检测器di与其任一临近点之间的可达距离为令局部可达密度为:
其中:|Nk(di)|表示临近集合中元素的个数;
步骤S28:计算得到局部离群因子:
其中:表示di的临近点的局部可达密度,lrd(di)为其自身局部可达密度;如果di的局部离群因子的值不小于1,表明其与其他临近检测器间的距离相当,重叠面积少,该检测器被保留;如果该值小于1,则表明该区域为密集度较大区域,检测器间重叠区域较大,删除该检测器;
步骤S29:重复上述步骤S27到S28,一直到成熟检测器的数目达到预期数值,则检测器训练成熟。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于太原理工大学,未经太原理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810217008.1/1.html,转载请声明来源钻瓜专利网。





