【技术实现步骤摘要】
SQL安全检查方法、系统、装置及存储介质
[0001]本专利技术涉及计算机
,特别涉及一种SQL安全检查方法、系统、装置及计算机可读存储介质。
技术介绍
[0002]关系型数据库作为最主流的存储数据库,相较于nosql数据库在国际市场上仍处于霸主地位,尤其以mysql和oracle为首的数据库软件基本处于垄断地位。这两个数据库软件虽有自己的sql语法,但都遵循标准sql语法规范。所以解决了标准SQL请求安全问题,就约等于解决了市面上大部分公司的数据库安全问题。然而大多数公司在数据库安全方面意识不足,或者有安全意识但是没有安全能力。一些公司为了解决安全问题,在代码里写了大量的安全检查,严重拉低了研发效率,使得研发成本明显上升。而且大多数公司手写的安全检查代码并不可靠。
[0003]现有企业大部分不具有安全检查能力,例如sql注入是通过字符匹配完成的,效率低且需要渗入代码中,识别效率低且维护困难。越权查询,盗窃查询等更需要大量编码且无法复用,一旦业务改动,代码需要重新修改,代码可靠性下降导致安全可靠性下降。 >[0004]一些企本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种SQL安全检查方法,其特征在于,包括:接收用户终端上传的SQL请求;利用基于LALR文法实现的有限状态自动机和预先配置的安全策略对所述SQL请求进行安全检查;如果所述SQL请求通过所述安全检查,则允许访问数据库;如果所述SQL请求未通过所述安全检查,则根据所述安全策略,进行告警。2.根据权利要求1所述的SQL安全检查方法,其特征在于,所述利用基于LALR文法实现的有限状态自动机和预先配置的安全策略对所述SQL请求进行安全检查的过程,包括:利用基于LALR文法实现的所述有限状态自动机对所述SQL请求进行拆解,得到逻辑语句;对逻辑语句进行注入检查。3.根据权利要求1所述的SQL安全检查方法,其特征在于,所述利用基于LALR文法实现的所述有限状态自动机对所述SQL请求进行拆解,得到多个逻辑语句的过程,包括:利用所述有限状态自动机和预设的关键字对所述SQL请求进行拆解,得到包括多个单词的单词集;从所述单词集中提取预设的核心关键字;利用提取出的每个核心关键字的意义和在所述SQL请求中的位置,确定每个逻辑语句。4.根据权利要求2所述的SQL安全检查方法,其特征在于,所述如果所述SQL请求未通过所述安全检查,则根据所述安全策略,进行告警的过程,包括:如果所述SQL请求未通过所述安全检查,则根据所述安全策略,利用邮件、短信或站内信的方式告警,并记录告警信息至审计日志。5.根据权利要求1至4任一项所述的SQL安全检查方法,其特征在于,所述对逻辑语句进行注入检查的过程,包括:判断与所述逻辑语句对应的所述用...
【专利技术属性】
技术研发人员:刘乐,范渊,黄进,
申请(专利权)人:杭州安恒信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。