CN109635027B - 一种数据库访问结果集探测的实现方法 - Google Patents
一种数据库访问结果集探测的实现方法 Download PDFInfo
- Publication number
- CN109635027B CN109635027B CN201811463846.3A CN201811463846A CN109635027B CN 109635027 B CN109635027 B CN 109635027B CN 201811463846 A CN201811463846 A CN 201811463846A CN 109635027 B CN109635027 B CN 109635027B
- Authority
- CN
- China
- Prior art keywords
- statement
- database
- detection
- sentences
- statements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据库访问结果集探测的实现方法,包括以下步骤:基于数据库访问结果集的部署步骤;基于数据库访问结果集的探测步骤,包括⑴将客户端发送的SQL语句进行拦截;⑵对拦截的语句进行语句分析并构建探测语句;⑶将构建好的探测语句发送给数据库;⑷采集探测语句在数据库端返回的应答结果,通过协议解析获得行数。本发明设计合理,其对客户端发送的SQL语句进行拦截与分析,对select语句、update语句或delete语句进行改写,将语句控制在发送给数据库前夕,对于语句的控制准确率更高且力度更细,解决了数据库防火墙等控制类产品对于影响行数控制事先预知,可广泛应用于数据库防火墙等网络安全产品中。
Description
技术领域
本发明属于数据库安全技术领域,尤其是一种数据库访问结果集探测的实现方法。
背景技术
在数据库安全技术领域,数据库防火墙产品、数据库脱敏系统以及数据库运维类产品对于select、update、delete操作的影响行数控制。所谓的结果集探测就是一条语句执行后会影响的行数进行事先预知,因为select、update、delete这类语句需要在客户端发送到数据库服务器,服务器返回的结果才能知道影响多少行,但当时已经对数据库中的数据的删改操作,所以需要在语句发送到数据库之前预知此操作语句的影响行数。因此,如何对语句的行数进行合理准确的探测是目前迫切需要解决的问题。
发明内容
本发明的目的在于克服现有技术的不足,提出一种设计合理、准确率高的数据库访问结果集探测的实现方法。
本发明解决其技术问题是采取以下技术方案实现的:
一种数据库访问结果集探测的实现方法,其特征在于包括以下步骤:
步骤1、基于数据库访问结果集的部署步骤,包括以下过程:
⑴按照数据库防护类产品已代理的方式进行部署,以类似于数据库的身份存在,客户端在连接数据库时连接代理口;
⑵数据的流向为:客户端通过交换机转到数据库防火墙,防火墙再将数据通过代理口转换交换机到达数据库,数据库的应答信息按同样的路径返回;
步骤2、基于数据库访问结果集的探测步骤,包括以下过程:
⑴将客户端发送的SQL语句进行拦截;
⑵对拦截的语句进行语句分析并构建探测语句;
⑶将构建好的探测语句发送给数据库;
⑷采集探测语句在数据库端返回的应答结果,通过协议解析获得行数。
所述对拦截的语句进行语句分析并构建探测语句的方法为:
如果拦截的语句是select语句、update语句或delete语句,则对上述语句分别处理如下:
对于select语句,拦截原始语句并基于原始语句将语句中的投影列改为count(*);
对于update语句和delete语句,按照语法保留原有的操作条件,将语句改为select语句,达到和select语句同样的探测方式与结果。
本发明的优点和积极效果是:
本发明设计合理,其对客户端发送的SQL语句进行拦截与分析,对select语句、update语句或delete语句进行改写,将语句控制在发送给数据库前夕,对于语句的控制准确率更高且力度更细,解决了数据库防火墙等控制类产品对于影响行数控制事先预知,可广泛应用于数据库防火墙等网络安全产品中。
附图说明
图1是本发明的部署处理示意图;
图2是本发明的探测处理流程图。
具体实施方式
以下结合附图对本发明实施例做进一步详述。
一种数据库访问结果集探测的实现方法,包括以下步骤:
步骤1、基于数据库访问结果集的部署步骤,如图1所示,具体实现方法包括以下步骤:
⑴按照数据库防护类产品已代理的方式进行部署,以类似于数据库的身份存在,客户端在连接数据库时连接代理口:ip+port;
⑵数据的流向为:客户端通过交换机转到数据库防火墙,防火墙再将数据通过代理口转换交换机到达数据库,数据库的应答信息为同样的路径反向返回。
本实施例的部署方式为代理方式,实际上采用网桥方式同样可以实现。
步骤2、基于数据库访问结果集的探测步骤,如图2所示,包括以下步骤:
⑴将客户端发送的SQL语句进行拦截,不转发给数据库。
⑵对拦截的语句进行语句分析,同时构建探测语句。
本步骤的具体处理方法为:对于拦截的语句判断是否是select语句、update语句或delete语句。对于上述三种语句的处理方式为:
对于select语句进行改写,拦截原始语句,基于原始语句将语句中的投影列改count(*),发送给数据库,数据库会返回影响的行数,此行数为该查询语句真实操作后的影响行数。
对于update、delete语句,需要按照语法保留原有的操作条件,将语句改为select语句,达到和select语句同样的探测方式与结果
⑶将构建好的探测语句发送给数据库。
⑷采集探测语句在数据库端返回的应答结果,通过协议解析获得行数。
本发明在实施过程中,需要考虑如下两点:
⑴语句改写时:对原始语句进行语法分析,哪些执行条件是必须包含的,哪些在构建探测语句时是不能包含的,同时要保证探测语句的正确性,不能有语法错误。
⑵语句句柄处理时:探测语句是在原有的交互中插入的语句,并非客户端执行的语句,所以要对探测语句的句柄进行合理的创建和销毁,以避免造成数据库的句柄泄露。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
Claims (2)
1.一种数据库访问结果集探测的实现方法,其特征在于包括以下步骤:
步骤1、基于数据库访问结果集的部署步骤,包括以下过程:
⑴按照数据库防护类产品已代理的方式进行部署,以类似于数据库的身份存在,客户端在连接数据库时连接代理口;
⑵数据的流向为:客户端通过交换机转到数据库防火墙,防火墙再将数据通过代理口转换交换机到达数据库,数据库的应答信息按同样的路径返回;
步骤2、基于数据库访问结果集的探测步骤,包括以下过程:
⑴将客户端发送的SQL语句进行拦截;
⑵对拦截的语句进行语句分析并构建探测语句;
⑶将构建好的探测语句发送给数据库;
⑷采集探测语句在数据库端返回的应答结果,通过协议解析获得行数。
2.根据权利要求1所述的一种数据库访问结果集探测的实现方法,其特征在于:所述对拦截的语句进行语句分析并构建探测语句的方法为:
如果拦截的语句是select语句、update语句或delete语句,则对上述语句分别处理如下:
对于select语句,拦截原始语句并基于原始语句将语句中的投影列改为count(*);
对于update语句和delete语句,按照语法保留原有的操作条件,将语句改为select语句,达到和select语句同样的探测方式与结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811463846.3A CN109635027B (zh) | 2018-12-03 | 2018-12-03 | 一种数据库访问结果集探测的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811463846.3A CN109635027B (zh) | 2018-12-03 | 2018-12-03 | 一种数据库访问结果集探测的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109635027A CN109635027A (zh) | 2019-04-16 |
CN109635027B true CN109635027B (zh) | 2022-11-25 |
Family
ID=66070520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811463846.3A Active CN109635027B (zh) | 2018-12-03 | 2018-12-03 | 一种数据库访问结果集探测的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109635027B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111683041B (zh) * | 2020-04-23 | 2023-08-25 | 北京中安星云软件技术有限公司 | 一种数据库关联访问方法 |
CN112800474B (zh) * | 2021-03-19 | 2021-08-10 | 北京安华金和科技有限公司 | 一种数据脱敏方法、装置、存储介质及电子装置 |
CN112804261A (zh) * | 2021-03-19 | 2021-05-14 | 北京安华金和科技有限公司 | 一种数据转发控制方法、装置、存储介质及电子装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011223533A (ja) * | 2010-04-14 | 2011-11-04 | Panasonic Corp | 通信デバイスの実ネットワークトポロジーにおけるゲートウェイ発見のための装置及び方法 |
CN107342913A (zh) * | 2017-05-24 | 2017-11-10 | 恒安嘉新(北京)科技股份公司 | 一种cdn节点的探测方法和装置 |
-
2018
- 2018-12-03 CN CN201811463846.3A patent/CN109635027B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011223533A (ja) * | 2010-04-14 | 2011-11-04 | Panasonic Corp | 通信デバイスの実ネットワークトポロジーにおけるゲートウェイ発見のための装置及び方法 |
CN107342913A (zh) * | 2017-05-24 | 2017-11-10 | 恒安嘉新(北京)科技股份公司 | 一种cdn节点的探测方法和装置 |
Non-Patent Citations (1)
Title |
---|
SQL SERVER数据库安全监控系统的设计与实现;薛金蓉等;《电讯技术》;20081130(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109635027A (zh) | 2019-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109635027B (zh) | 一种数据库访问结果集探测的实现方法 | |
KR102199054B1 (ko) | 직렬 포트 기반 사이버 보안 취약점 점검 장치 및 그 방법 | |
US11522903B2 (en) | Methods and systems for evaluating effects of cyber attacks on cyber-physical systems | |
CA2842465A1 (en) | Method and system for classifying a protocol message in a data communication network | |
US8291473B2 (en) | Methods, systems, and computer program products for modeling a secure production network | |
CN112272177B (zh) | 一种批量部署蜜网诱捕节点的方法 | |
JP2019523951A (ja) | セキュアな通信を行う方法および産業コンピューティング装置 | |
CN112437920A (zh) | 异常检测装置和异常检测方法 | |
US11886818B2 (en) | Method and apparatus for detecting anomalies in mission critical environments | |
CN111787018A (zh) | 用于识别网络攻击行为的方法、装置、电子设备及介质 | |
CN111930472A (zh) | 一种代码调试方法、装置、电子设备及存储介质 | |
CN112765026A (zh) | 一种动态监测phpweb应用代码漏洞方法及相关装置 | |
US20190104139A1 (en) | Generation of malware traffic signatures using natural language processing by a neural network | |
US20030055944A1 (en) | Method and system for providing cross-platform, interoperable, rule-based software system | |
CN107911496A (zh) | 一种vpn服务端代理dns的方法及装置 | |
US7526772B2 (en) | Method and apparatus for transforming systems management native event formats to enable correlation | |
CN105553775B (zh) | 一种测试系统中信息的获取方法、装置及测试系统 | |
CN108363922B (zh) | 一种自动化恶意代码仿真检测方法及系统 | |
US20160224406A1 (en) | Automated remote network target computing device issue resolution | |
US11823701B2 (en) | Network operation based on domain specific language | |
CN114553551B (zh) | 对入侵防御系统进行测试的方法及装置 | |
CN115225394A (zh) | 一种基于域名的报文拦截方法及系统 | |
US7865785B2 (en) | System and method for improving communications for systems having communications protocol enabled devices | |
CN114640614A (zh) | Rpc接口自动化测试方法、系统、电子设备、介质及产品 | |
CN110609822B (zh) | 数据流处理方法、设备和计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |