[发明专利]神通数据库SQL命令与参数的解析还原方法在审

专利信息
申请号: 201910839746.4 申请日: 2019-09-06
公开(公告)号: CN112464226A 公开(公告)日: 2021-03-09
发明(设计)人: 何建锋;张斌祥;武博 申请(专利权)人: 西安交大捷普网络科技有限公司
主分类号: G06F21/55 分类号: G06F21/55
代理公司: 暂无信息 代理人: 暂无信息
地址: 710075 陕西省*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 神通 数据库 sql 命令 参数 解析 还原 方法
【权利要求书】:

1.神通数据库SQL命令与参数的解析还原方法,其特征在于,包括:

循环获取神通数据库协议的交互数据包;

解析数据包得到其应用层数据,提取应用层数据体前两字节的内容,根据字节值判断数据包类型:

值0x00,判断数据包为客户端连接请求,

值0x51,判断数据包为客户端SQL请求,

值0x50,判断数据包为数据库对客户端查询语句结果的响应,

值0x58,判断数据包为客户端的断开连接请求;

对上述的不同数据包类型,分别执行相应的解析流程,分析并提取SQL命令与参数填入还原列表。

2.根据权利要求1所述的方法,其特征在于,提取客户端连接请求包的命令与参数,包括以下步骤:

S11.从数据体头向后偏移2字节,取数值,若为0则直接返回、不解析;否则进行下一步;

S12.从数据体头向后偏移4字节,取3个字节内容转换为字符串,若为“MD5”则直接返回、不解析;否则进行下一步;

S13.从数据体头向后偏移136字节,取接下来的、直至空字节之前的字节内容,转换为字符串,判断字符串的第一个字符是否为0:

若不为0,则将取到的字符串提取为客户端的用户名;

若为0,重新从数据体头向后偏移72字节,取接下来的、直至空字节之前的字节内容,转换为字符串,再次判断字符串的第一个字符是否为0,若不为0则将取到的字符串提取为客户端的用户名。

3.根据权利要求1或2所述的方法,其特征在于,应用层数据体前两字节的值为0x52,判断数据包为数据库对客户端连接请求的响应,给SQL语句赋值为“LOGIN”。

4.根据权利要求1所述的方法,其特征在于,提取客户端SQL请求包的命令与参数,包括以下步骤:

从数据体头向后偏移3字节,取接下来的所有字符串,判断字符串中是否包含“PREPAREJDBC_STATEMENT_”:

若不包含,则将取出的字符串拷贝至SQL中;

若包含,重新从数据体头向后偏移31字节,取接下来的所有字符串,进一步判断字符串中是否包含“DECLARE JDBC_CURS_”与“SELECT”,若包含,则从该包含的字符串开始将取出的字符串拷贝至SQL中。

5.根据权利要求1或4所述的方法,其特征在于,应用层数据体前两字节的值为0x43,判断数据包为数据库对客户端SQL请求的响应,直接返回、不解析。

6.根据权利要求1所述的方法,其特征在于,数据库对客户端查询语句结果的响应包,提取其命令与参数,包括解析查询语句的结果集与影响行数。

7.根据权利要求1所述的方法,其特征在于,客户端断开连接请求,给SQL语句赋值为“LOGOUT”。

8.根据权利要求1所述的方法,其特征在于,应用层数据体前两字节的值为0x45,判断数据包为数据库对客户端连接错误的响应,从数据体头向后偏移1字节,取5字节的内容,转换为字符串,得到数据库向客户端返回的错误码。

9.根据权利要求1所述的方法,其特征在于,提取应用层数据体前两字节之前:

获取应用层数据总长度、数据头长度与数据体长度;

若应用层总长度小于数据头长度,排除该数据包、不进行解析;

若应用层总长度小于数据头与数据体长度之和,该数据包不完整、需要与后续数据包进行组包再解析。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交大捷普网络科技有限公司,未经西安交大捷普网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910839746.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top