[发明专利]基于SQL模板的数据库访问控制方法及系统在审
申请号: | 201710750561.7 | 申请日: | 2017-08-28 |
公开(公告)号: | CN107563193A | 公开(公告)日: | 2018-01-09 |
发明(设计)人: | 陆明友 | 申请(专利权)人: | 深信服科技股份有限公司 |
主分类号: | G06F21/55 | 分类号: | G06F21/55;G06F17/30 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙)44285 | 代理人: | 王仲凯 |
地址: | 518055 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sql 模板 数据库 访问 控制 方法 系统 | ||
技术领域
本发明涉及数据安全领域,尤其涉及基于SQL模板的数据库访问控制方法及系统。
背景技术
数据库作为非常重要的存储工具,里面往往会存放着大量有价值或敏感信息,这些信息包括金融财政、知识产权、企业数据等方方面面的内容,网络黑客们会利用各种途径来获取他们想要的信息。因此,保证数据库安全变得尤为重要。网络黑客们获取信息的手段有很多,如结构化查询语言SQL注入,会利用网站搭建的漏洞,构造一些特殊的SQL语句,非法获取信息。
每一种危险行为,都会对应一种SQL特征。现有技术中,通过对SQL特征的识别,识别出危险行为。具体的,首先识别出每个SQL语句中的关键字、表名、字段值、数据库类型信息、操作类型信息等作为SQL特征,然后采用预置规则插件对这些信息进行匹配,匹配成功的插件会将对应的SQL语句判定为危险语句并执行相应的操作。
现有技术通过检测SQL语句中的特征信息识别出对应的危险特征,需要解析出当前SQL语句中的关键字、表名、字段值、数据库类型信息、操作类型信息等,解析的项目相对较多,解析之后需要多个检测插件逐一匹配,步骤繁琐,导致检测效率低。其次,针对每一种危险语句,构建一种检测规则插件,用于检测识别与危险语句相同或类似的SQL语句,并依次运行不同的安全规则分别对每一句SQL语句进行解析和识别,当需要运行的安全规则插件较多时,每个安全规则插件都需要对所有的SQL语句进行解析和识别,重复解析SQL语句会使检测效率进一步降低。
发明内容
本发明实施例提供了基于SQL模板的数据库访问控制方法及系统,用于提高SQL语句安全检测的效率。
本发明实施例第一方面提供了一种基于SQL模板的数据库访问控制方法,可包括:
获取用户设置的具有安全风险的结构化查询语言SQL语句;
将所述具有安全风险的SQL语句按照预置规则模板化,形成黑名单模板,并存储在黑名单模板库中,所述黑名单模板库中包括至少一个所述黑名单模板;
将待检测的目标SQL语句按照所述预置规则模板化,形成目标模板;
若所述目标模板存在于所述黑名单模板库中,则判定所述目标SQL语句为风险语句。
结合第一方面,在第一方面的第一种可能的实施方式中,所述将所述具有安全风险的SQL语句按照预置规则模板化,形成黑名单模板,包括:
去除所述具有安全风险的SQL语句中的可变参数,保留剩余部分作为黑名单模板。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,在判定所述目标SQL语句为风险语句之后,还包括:
阻断所述目标SQL语句的执行。
本发明实施例第二方面提供了一种基于SQL模板的数据库访问控制方法,可包括:
获取用户设置的标准SQL语句;
将所述标准SQL语句按照预置规则模板化,形成白名单模板,并存储在白名单模板库中,所述白名单模板库中包括至少一个所述白名单模板;
将待检测的目标SQL语句按照所述预置规则模板化,形成目标模板;
若所述目标模板不存在于所述白名单模板库中,则判定所述目标SQL语句为风险语句。
结合第二方面,在第二方面的第一种可能的实施方式中,所述将所述标准SQL语句按照预置规则模板化,形成白名单模板,包括:
去除所述标准SQL语句中的可变参数,保留剩余部分作为白名单模板。
结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,在判定所述目标SQL语句为风险语句之后,还包括:
阻断所述目标SQL语句的执行。
本发明实施例第三方面提供了一种基于SQL模板的数据库访问控制系统,可包括:
第一获取模块,用于获取用户设置的具有安全风险的结构化查询语言SQL语句;
第一模板模块,用于将所述具有安全风险的SQL语句按照预置规则模板化,形成黑名单模板,并存储在黑名单模板库中,所述黑名单模板库中包括至少一个所述黑名单模板;
第二模板模块,用于将待检测的目标SQL语句按照所述预置规则模板化,形成目标模板;
第一判断模块,用于判断所述目标模板是否存在于所述黑名单模板库中,若所述目标模板存在于所述黑名单模板库中,则判定所述目标SQL语句为风险语句。
结合第三方面,在第三方面的第一种可能的实施方式中,所述第一模板模块,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深信服科技股份有限公司,未经深信服科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710750561.7/2.html,转载请声明来源钻瓜专利网。