基于拟态安全防护的数据库中间件实现方法及系统技术方案

技术编号:37672938 阅读:24 留言:0更新日期:2023-05-26 04:35
本发明专利技术提供了一种基于拟态安全防护的数据库中间件实现方法及系统,包括步骤S1:拟态信息系统采用N个异构执行体向数据库中间件发起SQL请求,其中,N≥3;步骤S2:数据库中间件对N个异构执行体发起的SQL请求进行表决;步骤S3:数据库中间件向数据库发起经过表决通过的SQL请求,并由数据库对表决通过的SQL请求进行响应;步骤S4:将当前SQL响应通过数据库中间件返回至相应的拟态执行体。本发明专利技术N个执行体共用一套数据库,在架构安全的基础上节省了数据库服务器资源消耗;且信息系统应用中仅需把原数据库配置改为数据库中间件配置,无需修改应用源码和数据库,增加了通用性且减少了拟态化改造的时间成本。改造的时间成本。改造的时间成本。

【技术实现步骤摘要】
基于拟态安全防护的数据库中间件实现方法及系统


[0001]本专利技术涉及网络安全
,具体地,涉及基于拟态安全防护的数据库中间件实现方法及系统。

技术介绍

[0002]信息系统不可避免地存在很多漏洞和后门,特别是未知漏洞和未知攻击使网络空间安全受到很多安全威胁。信息系统传统防御是基于攻击者特征、行为和指纹等先验知识实施的被动防御,对于预先安插的后门和未知的漏洞没有有效的防御手段。
[0003]拟态架构将被攻击目标采用多种结构后,使得漏洞变得不确定,由于被攻击目标的异构性,黑客已经难以通过系统探测、漏洞挖掘等技术手段对信息系统进行安全攻击,从而极大地增加了网络攻击者的难度,提高了信息系统的安全性。
[0004]拟态异构执行体服务器是通过对信息系统运行节点的异构化使得系统具有了异构性的内生防御机制。对于信息系统,数据库是其中极为重要的组成部分。但是拟态信息系统缺乏对数据库和数据库操作的安全防护。
[0005]拟态框架对信息系统的数据库的处理方式广泛使用两种:(1)每个执行体都独立使用一套数据库,在使用过程中对N套数据库进行数据库同步;(2)N个执行体共用一套数据库,改造信息系统应用源码和数据库,通过打标签来标记SQL请求,以便后续的表决和执行。第一种方案的拟态框架会产生N套数据库,每过一段时间,对各数据库存储的数据进行比对,裁决出结果后,对所有数据库进行更新。这种方式需要对所有的数据进行比对,数据库数据量较大的情况下会严重拖慢系统运行。且此方案会带来过多的成本开销,在数据库同步的精度处理方面难度也很大,容易引入同步失败的问题。另外,每次都要比对所有数据,存在大量重复、不必要的操作。第二种方案需要改造信息系统应用源码和数据库,这也就意味着改造方需要详细分析应用源码,涉及到的工作量较大,带来过多的时间成本开销。
[0006]专利文献CN112398876A(申请号:202110069719.0)公开了一种自适应拟态技术的网络安全预警系统,包括:仿真替身主机、真实主机、主服务器、模拟服务器和流量监测单元,若干真实主机与主服务器连接以组建成内网,仿真替身主机用于模拟真实主机的运行,所述模拟服务器用于模拟所述主服务器的运行,所述流量监测单元和若干个所述仿真替身主机分别与所述模拟服务器连接,以组建成模拟内网运行的外网,所述外网接入因特网,所述主服务器与所述模拟服务器之间能够进行加密通信。所述流量监测单元和若干个所述仿真替身主机分别与所述模拟服务器连接,以组建成模拟内网运行的外部网络,所述外网接入因特网,通过外部网络进行攻击行为的过滤,能够极大地提高内部网络的安全性,防止内网遭受攻击。

技术实现思路

[0007]针对现有技术中的缺陷,本专利技术的目的是提供一种基于拟态安全防护的数据库中间件实现方法及系统。
[0008]根据本专利技术提供的一种基于拟态安全防护的数据库中间件实现方法,包括:
[0009]步骤S1:拟态信息系统采用N个异构执行体向数据库中间件发起SQL请求,其中,N≥3;
[0010]步骤S2:数据库中间件对N个异构执行体发起的SQL请求进行表决;
[0011]步骤S3:数据库中间件向数据库发起经过表决通过的SQL请求,并由数据库对表决通过的SQL请求进行响应;
[0012]步骤S4:将当前SQL响应通过数据库中间件返回至相应的拟态执行体。
[0013]优选地,初始化数据库中间件,包括:基于数据库主机DBHOST和端口DBPORT设置数据库中间件,初始化数据库中间件的最大表决等待时间T
MAXJDGWAIT
以及心跳检测语句SKIPSQL。
[0014]优选地,所述步骤S2采用:
[0015]步骤S2.1:数据库中间件接收N个异构执行体发起的SQL请求,并记录来源请求地址;
[0016]步骤S2.2:数据库中间件对接收到的SQL请求数据包进行解析;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量小于2N/3时,则判定为表决失败;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量大于等于2N/3时,则获取表决通过的SQL请求。
[0017]优选地,所述步骤S3采用:调用数据库驱动将表决结果为一致的SQL语句发送到数据库执行。
[0018]优选地,将表决结果发送至反馈控制模块,清洗表决结果为异常的执行体。
[0019]根据本专利技术提供的一种基于拟态安全防护的数据库中间件实现系统,包括:
[0020]模块M1:拟态信息系统采用N个异构执行体向数据库中间件发起SQL请求,其中,N≥3;
[0021]模块M2:数据库中间件对N个异构执行体发起的SQL请求进行表决;
[0022]模块M3:数据库中间件向数据库发起经过表决通过的SQL请求,并由数据库对表决通过的SQL请求进行响应;
[0023]模块M4:将当前SQL响应通过数据库中间件返回至相应的拟态执行体。
[0024]优选地,初始化数据库中间件,包括:基于数据库主机DBHOST和端口DBPORT设置数据库中间件,初始化数据库中间件的最大表决等待时间T
MAXJDGWAIT
以及心跳检测语句SKIPSQL。
[0025]优选地,所述模块M2采用:
[0026]模块M2.1:数据库中间件接收N个异构执行体发起的SQL请求,并记录来源请求地址;
[0027]模块M2.2:数据库中间件对接收到的SQL请求数据包进行解析;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量小于2N/3时,则判定为表决失败;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量大于等于2N/3时,则获取表决通过的SQL请求。
[0028]优选地,所述模块M3采用:调用数据库驱动将表决结果为一致的SQL语句发送到数据库执行。
[0029]优选地,将表决结果发送至反馈控制模块,清洗表决结果为异常的执行体。
[0030]与现有技术相比,本专利技术具有如下的有益效果:
[0031]1、本专利技术N个执行体共用一套数据库,在架构安全的基础上节省了数据库服务器资源消耗;且信息系统应用中仅需把原数据库配置改为数据库中间件配置,无需修改应用源码和数据库,增加了通用性且减少了拟态化改造的时间成本;
[0032]2、拟态架构下对信息系统进行拟态化改造的同时,开发数据库中间件来满足对数据库安全防护的需求;
[0033]3、数据库中间件提供对异构执行体执行过程中SQL请求的表决,通过一致性表决算法保证N异构执行体SQL响应的一致性;
[0034]4、数据库中间件的表决结果为正常/异常,表决结果决定着后续向数据库发起请求还是异常处理,达到防止数据库受到篡改的目的。
附图说明
[0035]通过阅读参照以下附图对非限制性实施例所作的详细描述,本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于拟态安全防护的数据库中间件实现方法,其特征在于,包括:步骤S1:拟态信息系统采用N个异构执行体向数据库中间件发起SQL请求,其中,N≥3;步骤S2:数据库中间件对N个异构执行体发起的SQL请求进行表决;步骤S3:数据库中间件向数据库发起经过表决通过的SQL请求,并由数据库对表决通过的SQL请求进行响应;步骤S4:将当前SQL响应通过数据库中间件返回至相应的拟态执行体。2.根据权利要求1所述的基于拟态安全防护的数据库中间件实现方法,其特征在于,初始化数据库中间件,包括:基于数据库主机DBHOST和端口DBPORT设置数据库中间件,初始化数据库中间件的最大表决等待时间T
MAXJDGWAIT
以及心跳检测语句SKIPSQL。3.根据权利要求1所述的基于拟态安全防护的数据库中间件实现方法,其特征在于,所述步骤S2采用:步骤S2.1:数据库中间件接收N个异构执行体发起的SQL请求,并记录来源请求地址;步骤S2.2:数据库中间件对接收到的SQL请求数据包进行解析;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量小于2N/3时,则判定为表决失败;当在T
MAXJDGWAIT
时间内获得同一批次的SQL请求数据包数量大于等于2N/3时,则获取表决通过的SQL请求。4.根据权利要求1所述的基于拟态安全防护的数据库中间件实现方法,其特征在于,所述步骤S3采用:调用数据库驱动将表决结果为一致的SQL语句发送到数据库执行。5.根据权利要求1所述的基于拟态安全防护的数据库中间件实现方法,其特征在于,将表决结果发送至反馈控制模块,清洗表决结果为异常的执行体。6.一种...

【专利技术属性】
技术研发人员:付琳江波余新胜王昕瑶罗论涵徐李定凌颖
申请(专利权)人:华东计算技术研究所中国电子科技集团公司第三十二研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1