[发明专利]一种SQL命令注入的检测方法及系统有效
申请号: | 201710454512.9 | 申请日: | 2017-06-15 |
公开(公告)号: | CN107203718B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 陆明友 | 申请(专利权)人: | 深信服科技股份有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518055 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sql 命令 注入 检测 方法 系统 | ||
1.一种SQL命令注入的检测方法,其特征在于,包括:
采集提交给业务端的请求数据;
采集所述业务端到数据库端的数据库协议流量,并从所述数据库协议流量中提取注入SQL命令段;
判断是否能在所述请求数据中检测到所述注入SQL命令段,若检测到所述注入SQL命令段,则存在SQL命令注入;
其中,从所述数据库协议流量中提取注入SQL命令段,包括:
从所述数据库协议流量中提取SQL命令;
对所述SQL命令进行模板化处理,得到SQL模板,并对每两个所述SQL模板进行对比,得到比较结果;
根据所述比较结果从所述SQL模板中提取出不同部分作为所述注入SQL命令段;
其中,对所述SQL命令进行模板化处理,得到SQL模板,并对每两个所述SQL模板进行对比,得到比较结果,包括:
对第一SQL命令进行所述模板化处理,得到SQL基线模板;
对除所述第一SQL外的其余所述SQL命令进行所述模板化处理,得到新SQL模板;
对所述SQL基线模板与所述新SQL模板均以最小单位进行拆分,分别得到第一集合和第二集合;
对所述第一集合中的最小单位与所述第二集合中的最小单位执行匹配操作,得到匹配比例;
判断所述匹配比例是否超过阈值;
若所述匹配比例超过所述阈值,则对所述新SQL模板附加疑似SQL注入风险的标记。
2.根据权利要求1所述的检测方法,其特征在于,根据所述比较结果从所述SQL模板中提取所述注入SQL命令段,包括:
从被附加所述标记的所述新SQL模板中提取所述注入SQL命令段。
3.一种SQL命令注入的检测系统,其特征在于,包括:
请求数据采集单元,用于采集提交给业务端的请求数据;
采集提取单元,用于采集所述业务端到数据库端的数据库协议流量,并从所述数据库协议流量中提取注入SQL命令段;
检测单元,用于判断是否能在所述请求数据中检测到所述注入SQL命令段,若检测到所述注入SQL命令段,则存在SQL命令注入;
所述采集提取单元包括:
第一提取子单元,用于从所述数据库协议流量中提取SQL命令;
模板化子单元,用于对所述SQL命令进行模板化处理,得到SQL模板,并对每两个所述SQL模板进行对比,得到比较结果;
第二提取子单元,用于根据所述比较结果从所述SQL模板中提取出不同部分作为所述注入SQL命令段;
其中,所述模板化子单元包括:
第一模板处理模块,用于对第一SQL命令进行所述模板化处理,得到SQL基线模板;
第二模板处理模块,用于对除所述第一SQL外的其余所述SQL命令进行所述模板化处理,得到新SQL模板;
拆分模块,用于将所述SQL基线模板与所述新SQL模板均以最小单位进行拆分,分别得到第一集合和第二集合;
匹配模块,用于对所述第一集合中的最小单位与所述第二集合中的最小单位执行匹配操作,得到匹配比例;
对比模块,用于判断所述匹配比例是否超过阈值;若所述匹配比例超过所述阈值,则对所述新SQL模板附加疑似SQL注入风险的标记。
4.根据权利要求3所述的检测系统,其特征在于,所述第二提取子单元包括:
提取模块,用于从被附加所述标记的所述新SQL模板中提取所述注入SQL命令段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深信服科技股份有限公司,未经深信服科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710454512.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:多尺寸多结构工件的荧光磁粉表面缺陷成像检测系统
- 下一篇:非易失性存储器装置