[发明专利]基于神经网络模型和哈希匹配的SQL检测方法及系统在审
申请号: | 202110231922.3 | 申请日: | 2021-03-02 |
公开(公告)号: | CN112966268A | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 周诚;李伟伟;汪晨;何金栋 | 申请(专利权)人: | 全球能源互联网研究院有限公司;国网福建省电力有限公司电力科学研究院;国家电网有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F16/22;G06F16/242;G06N3/08 |
代理公司: | 北京三聚阳光知识产权代理有限公司 11250 | 代理人: | 刘静 |
地址: | 102209 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 神经网络 模型 匹配 sql 检测 方法 系统 | ||
1.一种基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,包括:
将获取的SQL语句转化为SQL语句模板,通过预设特征提取模型提取带标记SQL语句模板集合的特征向量,所述标记用于表征SQL语句模板正常或异常,将特征向量输入到神经网络模型中对其进行训练,将训练好的神经网络模型作为SQL检测模型,用于识别SQL语句是否异常;
构建带标记SQL语句模板集合的哈希表,所述哈希表中的键值对用于表征SQL语句模板为正常或异常;
获取用户访问数据库所使用的SQL语句,并转化成SQL语句模板,在所述哈希表中查找SQL语句模板对应的标记,若查找成功则输出对应的标记结果;若查找失败,通过所述预设特征提取模型获取用户使用SQL语句模板的特征向量,并输入到SQL检测模型中,当输出结果为正常时,则将该SQL语句模板及对应的标记更新到哈希表中,并检测下一条SQL语句。
2.根据权利要求1所述的基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,还包括:当在哈希表中查找的标记结果为异常,或当SQL检测模型输出结果为异常时,则发送异常信息给管理人员进行告警。
3.根据权利要求1所述的基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,在提取带标记SQL语句模板集合的特征向量的语句的步骤之前、构建带标记SQL语句模板集合的哈希表的步骤之前、及获取用户访问数据库所使用的SQL语句之后,在所述哈希表中查找SQL语句对应的标记的步骤之前,均对SQL语句进行正规化处理得到SQL语句模板。
4.根据权利要求3所述的基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,所述正规化处理包括:将SQL语句中的数值重写为0,变量除外;将SQL语句中的单引号引起的参数重写为#,空字符串除外;将换行转换为空格;将连续的空格合并为1个;去掉运算符两端空格;去掉数字前的正、负号;去掉注释内容,为注释添加占位符,连续的多个注释视为一个;谓词格式化,按照各数据库的对象名命名原则,统一语句中的非参数的词的大小写;去掉语句开头、结尾的空格;在谓词和+/-号之间,如果没有空格或者注释,添加空格。
5.根据权利要求1基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,所述预设特征提取模型包括:词袋模型。
6.根据权利要求1基于神经网络模型和哈希匹配的SQL检测方法,其特征在于,所述预设特征提取模型、哈希表和SQL检测模型保存在外存上,在对用户访问数据库所使用的SQL语句进行检测时,将所述预设特征提取模型、哈希表和SQL检测模型保存到需要部署的服务器中。
7.一种基于神经网络模型和哈希匹配的SQL检测系统,其特征在于,包括:
模型训练模块,用于将获取的SQL语句转化为SQL语句模板,通过预设特征提取模型提取带标记SQL语句模板集合的特征向量,所述标记用于表征SQL语句模板正常或异常,将特征向量输入到神经网络模型中对其进行训练,将训练好的神经网络模型作为SQL检测模型,用于识别SQL语句模板是否异常;
哈希表构建模块,用于构建带标记SQL语句模板集合的哈希表,所述哈希表中的键值对用于表征SQL语句模板为正常或异常;
用户SQL语句检测模块,用于获取用户访问数据库所使用的SQL语句,并转化成SQL语句模板,在所述哈希表中查找SQL语句模板对应的标记,若查找成功则输出对应的标记结果;若查找失败,通过所述预设特征提取模型获取用户使用SQL语句模板的特征向量,并输入到SQL检测模型中,当输出结果为正常时,则将该SQL语句模板及对应的标记更新到哈希表中,并检测下一条SQL语句。
8.一种计算机设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-6中任一所述的基于神经网络模型和哈希匹配的SQL检测方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行1-6中任一所述的基于神经网络模型和哈希匹配的SQL检测方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于全球能源互联网研究院有限公司;国网福建省电力有限公司电力科学研究院;国家电网有限公司,未经全球能源互联网研究院有限公司;国网福建省电力有限公司电力科学研究院;国家电网有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110231922.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种触感屏生产用自动控制的平整度筛选装置
- 下一篇:图形化复合衬底的形成方法