[发明专利]一种SQL解析及匹配的方法和系统有效
申请号: | 200910085039.7 | 申请日: | 2009-05-27 |
公开(公告)号: | CN101901222A | 公开(公告)日: | 2010-12-01 |
发明(设计)人: | 姚熙;陈永涛;刘晖;邱少红 | 申请(专利权)人: | 北京启明星辰信息技术股份有限公司;北京启明星辰信息安全技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/06 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 龙洪;霍育栋 |
地址: | 100193 北京市海淀区东北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sql 解析 匹配 方法 系统 | ||
技术领域
本发明涉及网络安全防护技术,尤其涉及一种SQL解析及匹配的方法和系统。
背景技术
网络入侵检测系统和网络入侵防御系统,是防护网络安全的重要方式和手段,通常部署在关键网络内部入口或者网络边界入口处,实时监控和捕获进出网络的网络数据流并进行智能综合分析,发现实时网络入侵行为并进行实时的阻断或者报警等响应措施。
审计产品同样是网络安全防护中很重要的一种方式和手段,审计产品也是部署在关键网络内部或者网络边界入口处,旁路监听网络中实时的数据流并进行智能综合分析,从而监控网络中系统、设备等是否运行正常,保护网络中的重要资产。
应用层协议深层解析技术,在当前主流网络入侵检测和网络入侵防御产品和审计产品中被广泛采用,可用来实现基于协议攻击特征和协议异常的入侵检测,也可用来实现审计产品对应用层服务的审计和监视功能。
数据库作为业务网最核心的资产,一直都是网络安全产品重点保护监视的对象。数据库SQL语句的解析程度以及匹配精确度,对网络入侵检测和网络入侵防御以及审计产品来说,显得尤为重要。
目前很多网络入侵检测和网络入侵防御以及审计产品,对SQL语句的解析程度都较低,其主要表现在:
(1)普遍地停留在从用户的网络环境中获取到SQL语句的程度,并没有对其进行深层次的语法解析,导致SQL语句与用户关注的定义规则进行匹配的成功率很低;
(2)容易导致误报或者漏报等严重的事件发生。
目前很多网络入侵检测和网络入侵防御以及审计产品,对SQL规则的匹配成功率也较低,导致这样问题主要有两点:
(1)如前所述的SQL语句的解析程度不够;
(2)匹配算法太过简单,一般采用简单的字符串匹配方式对整个结果进行匹配。
综上所述,有鉴于目前对SQL语句解析以及SQL规则匹配的程度都较低,有必要提出SQL语句解析及规则匹配效果都较好的技术,以解决上述技术问题。
发明内容
本发明所要解决的技术问题,首先在于需要提供一种SQL语句解析及匹配的方法和系统,以对SQL语句进行高效的解析及匹配。
为了解决上述技术问题,本发明提供了一种SQL解析及匹配的方法,包括:
分析数据库环境,建立数据库表与数据库及数据库表字段的关联关系库;
根据所述关联关系库,建立匹配规则集合;
根据SQL/99标准定义的SQL语句,建立词法扫描器和语法分析器识别的基础语法分析规则库;
根据主流数据库厂商实现的SQL语句,建立所述词法扫描器和语法分析器识别的扩展语法分析规则库;
接收输入的SQL语句后,根据所述基础语法分析规则库及扩展语法分析规则库,对所述输入的SQL语句进行语法分析,获得用户关注信息;
建立运算符集合,为所述运算符集合中的运算符建立匹配算法;
根据所述匹配规则集合以及所述运算符集合,选取匹配算法;
采用选取的匹配算法,将所述用户关注信息与所述匹配规则集合进行匹配,获得匹配结果。
优选地,所述关联关系库包含所述数据库表与所述数据库的关联关系,以及所述数据库与所述数据库表字段的关联关系。
优选地,建立所述词法扫描器识别的词法分析规则;
根据所述SQL/99标准定义的SQL语句,建立所述语法分析器识别的语法分析基础规则;
根据所述词法分析规则及语法分析基础规则,建立所述基础语法分析规则库。
优选地,根据所述主流数据库厂商实现的SQL语句,建立所述语法分析器识别的语法分析扩展规则;
根据所述语法分析扩展规则,建立所述扩展语法分析规则库。
优选地,所述运算符集合中的运算符,适用的数据类型包括数值类型和字符串类型。
优选地,所述用户关注信息,包括命令名、表名、字段名、字段值以及关键字中的至少一种。
为了解决上述技术问题,本发明还提供了一种SQL解析及匹配的系统,包括:
关联关系建立模块,用于分析数据库环境,获得数据库表与数据库及数据库表字段的关联关系库;
匹配规则建立模块,与所述关联关系建立模块相连,用于根据所述关联关系库,建立匹配规则集合;
语法分析规则建立模块,用于根据SQL/99标准定义的SQL语句,建立词法扫描器和语法分析器识别的基础语法分析规则库;根据主流数据库厂商实现的SQL语句,建立所述词法扫描器和语法分析器识别的扩展语法分析规则库;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京启明星辰信息技术股份有限公司;北京启明星辰信息安全技术有限公司,未经北京启明星辰信息技术股份有限公司;北京启明星辰信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910085039.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种高安全性防误锁具
- 下一篇:法律信息管理系统