说明:收录25万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211211061.3 (22)申请日 2022.09.30 (71)申请人 浙江云趣网络科技有限公司 地址 315000 浙江省宁波市 鄞州区三方大 厦B座507 (72)发明人 赵晨 钟灵 沈晨彬 杨桐 康琛  (74)专利代理 机构 浙江中桓凯通专利代理有限 公司 33376 专利代理师 谢英 (51)Int.Cl. G06F 16/242(2019.01) G06F 16/25(2019.01) G06F 16/28(2019.01) G06F 40/14(2020.01) G06F 40/253(2020.01) (54)发明名称 一种高风险SQL拦截方法、 装置和可读存储 介质 (57)摘要 本发明提供了一种基于语法分析和规则引 擎的高风险SQL拦截方法、 装置和可读 存储介质, 基于语法分析和规则引擎的高风险SQL拦截 方法 包括: 获取SQL语句; 通过词法分析和语 法分析将 所述SQL语句转化为语 法树; 设置多个风险等级; 分析所述语 法树和预设的规则引擎进行对比, 且 通过所述规则引擎将所述SQL语句标记为对应的 所述风险等级; 其中, 所述多个风险等级一一设 有对应的操作, 当所述SQL语句标记为对应的风 险等级后会将所述SQL语句实施对应的操作。 本 发明实施例提高了数据库的安全性以及便捷度。 权利要求书2页 说明书6页 附图3页 CN 115455033 A 2022.12.09 CN 115455033 A 1.一种基于语法分析和规则引擎的高风险SQ L拦截方法, 其特 征在于, 包括: 获取SQL语句; 通过词法分析和语法分析将所述SQ L语句转化为语法树; 设置多个风险等级; 分析所述语法树和预设的规则引擎进行对比, 且通过所述规则引擎将所述SQL语句标 记为对应的所述 风险等级; 其中, 所述多个风险等级一一设有对应的操作, 当所述SQL语句标记为对应的风险等级 后会将所述SQ L语句实施对应的操作。 2.根据权利要求1所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述多个风险等级为三个, 三个所述风险等级为第一风险等级, 第二风险等级以及第 三风险等级; 其中, 所述第一风险等级对应的操作为第一执行方法, 所述第二风险等级对应的操作 为第二执 行方法, 所述第三 风险等级对应的操作为拒绝执 行方法。 3.根据权利要求2所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述第一执 行方法具体包括: 执行对应的所述SQ L语句, 且在调用所述SQ L语句时会给予第二确认。 4.根据权利要求2所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述第二执 行方法具体包括: 对对应的所述SQL语句进行多级排查, 当所述SQL语句通过多级排查后通过才可进行执 行所述SQL语句。 5.根据权利要求2所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述拒绝执 行方法具体包括: 将对应的所述SQ L语句拒接执 行。 6.根据权利要求5所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述拒绝执 行方法还包括: 将对应的所述SQ L语句进行后台记录 。 7.根据权利要求1所述的基于语法分析和规则引擎的高风险SQL拦截方法, 其特征在 于, 所述预设的规则引擎具体包括: 设定所支持的SQ L类型; 利用规则语言将规则定义为if ‑then的形式, if中定义了规则的条件, then 中定义了规 则的结果; 其中, 规则引擎会基于数据对这些规则进行计算, 找出匹配的规则。 8.根据权利要求1所述的基于语法分析和规则引擎的高风险SQL拦截方法, 所述规则引 擎包括: 第一风险等级语句, 所述第一 风险等级语句为SELE CT; 第二风险等级语句, 所述第二风险等级语句为DATABASE_OP, CREATE, CREATE_INDET, CREATE_VIEW, CREATE_SEQUENCE, CREATE_TABLE, CREATE_SELECT, TRUNCATE, DROPDROP_ INDEX, DROP_VIEW, DROP_TABLE, RENAME, ALTER, ALTER_INDEX, ALTER_VIEW, ALTER_TABLE,权 利 要 求 书 1/2 页 2 CN 115455033 A 2ALTER_SEQUENCE, CREATE_FUNCTION, CREATE_PROCEDURE, ALTER_FUNCTION, ALTER_ PROCEDURE, DROP_FUNCTION, DROP_PROCEDURE, GRANT, DECLARE, SET, ANALYZE, FLUSH, OPTIMIZE, KI LL; 第三风险等级语句, 所述第三风险等级语句为INSERT, INSERT_SELECT, REPLACE, REPLACE_INTO, UPDATE, DELETE, M ERGE。 9.一种基于语法分析和规则引擎的高风险SQ L拦截装置, 其特 征在于, 包括: 获取模块, 所述获取模块用于获取SQ L语句; 分析模块, 所述分析模块通过词法分析和语法分析将所述SQL语句转化为语法树且分 析所述语法树和预设的规则引擎进行对比, 且通过所述规则引擎将所述SQL语句标记为对 应的所述 风险等级; 执行模块, 所述执行模块将所述SQL语句标记为对应的风险等级后会将所述SQL语句实 施对应的操作。 10.一种可读存储介质, 其特征在于, 所述可读存储介质包括存储的计算机程序, 其中, 在所述计算机程序被处理器运行时控制所述存储介质所在设备执行如权利要求 1‑8任意一 项所述的基于语法分析和规则引擎的高风险SQ L拦截方法的步骤。权 利 要 求 书 2/2 页 3 CN 115455033 A 3

.PDF文档 专利 一种高风险SQL拦截方法、装置和可读存储介质

文档预览
中文文档 12 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种高风险SQL拦截方法、装置和可读存储介质 第 1 页 专利 一种高风险SQL拦截方法、装置和可读存储介质 第 2 页 专利 一种高风险SQL拦截方法、装置和可读存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 17:01:37上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。