掌桥专利:专业的专利平台
掌桥专利
首页

一种加密数据库流量审计方法及装置

文献发布时间:2023-06-19 10:11:51


一种加密数据库流量审计方法及装置

技术领域

本发明涉及数据库应用技术领域,具体涉及一种加密数据库流量审计方法及装置。另外,还涉及一种电子设备及非暂态计算机可读存储介质。

背景技术

近年来,随着互联网技术的快速发展,数据库的应用越来越广泛,数据库作为互联网系统的重要组成部分,如何保护数据库使用安全也变得越来越重要。目前,数据库通常支持启用SSL(Secure Sockets Layer安全套接字协议)等多种进行通信数据加密的方式。其相对于不加密的流量数据,虽然不容易被嗅探造成数据泄露。但是,由于加密的流量得不到有效识别,也给旁路镜像进行防护的数据库审计等安全产品带来了新的挑战。一些攻击者往往借助加密的流量数据进行数据库攻击,使得数据库暴露到风险当中。

针对数据库加密流量无法识别、审计的问题。现有技术中通常采用的技术方案是:获取到加密证书、客户端与服务器通信报文后,解析得到加密套件、随机数、预主密钥计算参数等关键信息,再结合证书进行通信报文的解密。然而,该种处理方式支持的加密套件较少,仅仅支持诸如TLS_RSA_WITH_AES_128_CBC_SHA等少数几种加密套件,但是却不能支持ECDHE-RSA-AES128-GCM-SHA256等加密套件,导致上述方法通用性较差,无法实现对加密内容的有效解析。

发明内容

为此,本发明提供一种加密数据库流量审计方法及装置,用以解决现有技术中存在的针对加密数据库内容的解析方式通用性和解析效率较差的缺陷。

本发明提供一种加密数据库流量审计方法,包括:

通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容;

基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

进一步的,所述目标关键信息包括主密钥、会话标识以及加密算法类型。

进一步的,所述的加密数据库流量审计方法,还包括:基于镜像流量的方式获取访问所述数据库的流量数据。

进一步的,所述对数据库对应的开放式加解密软件包进行修改,具体为,对数据库对应的开放式加解密软件包中的加解密组件进行修改。

进一步的,所述的加密数据库流量审计方法,还包括:将所述目标关键信息输出到插件文件进行存储,并基于预设的发送程序将所述插件文件发送到对应的数据库审计系统。

进一步的,所述映射关系表包含所述会话标识与所述主密钥和所述加密算法类型之间的对应关系。

进一步的,所述根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,具体包括:

将所述实际会话标识与所述映射关系表包含的会话标识进行匹配,根据匹配结果确定访问所述数据库的会话对应的主密钥和加密算法类型;

根据所述会话对应的主密钥和加密算法类型对数据报文内容进行解密。

相应的,本发明还提供一种加密数据库流量审计装置,包括:

关键信息提取单元,用于通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容;

解密及审计记录单元,用于基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

进一步的,所述目标关键信息包括主密钥、会话标识以及加密算法类型。

进一步的,所述的加密数据库流量审计装置,还包括:流量数据获取单元,用于基于镜像流量的方式获取访问所述数据库的流量数据。

进一步的,所述对数据库对应的开放式加解密软件包进行修改,具体为,对数据库对应的开放式加解密软件包中的加解密组件进行修改。

进一步的,所述的加密数据库流量审计装置,还包括:存储及发送单元,用于将所述目标关键信息输出到插件文件进行存储,并基于预设的发送程序将所述插件文件发送到对应的数据库审计系统。

进一步的,所述映射关系表包含所述会话标识与所述主密钥和所述加密算法类型之间的对应关系。

进一步的,所述解密及审计记录单元,具体用于:

将所述实际会话标识与所述映射关系表包含的会话标识进行匹配,根据匹配结果确定访问所述数据库的会话对应的主密钥和加密算法类型;

根据所述会话对应的主密钥和加密算法类型对数据报文内容进行解密。

相应的,本发明还提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项所述的加密数据库流量审计方法的步骤。

相应的,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任意一项所述的加密数据库流量审计方法的步骤。

本发明提供的所述的加密数据库流量审计方法,通过对数据库对应的开放式加解密软件包进行修改,能够从数据报文中获取用于实现解析数据报文加密内容的关键信息,利用该关键信息对加密内容进行解析,提高了加密数据库的审计效率,保证了数据审计的安全性。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的加密数据库流量审计方法的流程示意图;

图2为本发明提供的加密数据库流量审计方法的整体流程示意图;

图3为本发明提供的加密数据库流量审计装置的结构示意图;

图4为本发明提供的电子设备的实体结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面基于本发明所述的加密数据库流量审计方法,对其实施例进行详细描述。如图1和2所示,其均为本发明提供的加密数据库流量审计方法的流程示意图,具体实现过程包括以下步骤:

步骤101:通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息。

在本发明实施例中,可通过对数据库的开放式加解密软件包中的加解密相关组件进行程序修改,使其能够识别并获取访问数据库流量数据中的目标关键信息。具体的,可在数据库审计系统旁路部署镜像流量模块,通过镜像流量的方式获取访问数据库的流量数据,基于修改后的开放式加解密软件包,从所述访问数据库流量数据中提取出每条会话对应的目标关键信息。

所述目标关键信息包括主密钥(Master-Key)、会话标识(Session-ID)以及加密算法类型等,用于实现解析数据报文加密内容。其中,所述加密算法类型包括对称加密算法、非对称加密算法等,在此不做具体限定。

所述开放式加解密软件包用于对相应的数据库流量数据进行加解密,具体可包括OpenSSL(Open Secure Sockets Layer;开放式安全套接字协议)软件库包等,在此不做具体限定。

下面以采取OpenSSL软件库包加密的MySQL(关系型数据库管理系统)数据库为例进行说明:

MySQL数据库支持启用SSL(Secure Sockets Layer;安全套接字协议)的方式进行通信数据的加密,为了实现数据库审计系统对OpenSSL软件库包加密过的MySQL数据库进行审计,可对OpenSSL软件库包中的对称加密组件代码按照预设的方式进行修改。通过对已经部署在数据库的OpenSSL软件库包中对称加密组件进行修改,可将每条会话的加密协议类型、加密算法类型、会话标识及主密钥等关键信息输出到插件文件进行保存。另外,在实际实施过程中,还可将所述目标关键信息输出到插件文件进行存储,通过数据库服务器上部署一个实时发送程序,将所述插件文件实时发送到对应的数据库审计系统中,进行自动化识别及流量解析,并最终实现审计发现潜在风险的效果。

步骤102:基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。其中,所述映射关系表包含所述会话标识与所述主密钥和所述加密算法类型之间的对应关系。

在本发明实施例上述步骤中,基于数据库审计系统获取每个会话对应的主密钥、会话标识以及加密算法类型等关键信息之后,在本步骤中可进一步基于该关键信息构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密。

具体的,在通信的过程中,客户端连接MySQL数据库,发起一个会话连接时会带有客户端请求连接报文(client hello),然后紧接着的回复包会带有服务端回应连接报文(server hello),两个数据报文中分别带有客户端随机数密钥和服务器随机数密钥。协商加密的一些参数可被数据库审计系统记录下来,包括随机数密钥(Random Key)、实际的会话标识等信息,因此可将该实际会话标识与所述映射关系表包含的会话标识进行匹配,根据匹配结果确定访问所述数据库的会话对应的主密钥和加密算法类型,从而根据所述会话对应的主密钥和加密算法类型对数据报文内容进行解密。其中,所述随机数密钥即包括客户端随机数密钥和服务器随机数密钥。

采用本发明所述的加密数据库流量审计方法,通过对数据库对应的开放式加解密软件包进行修改,能够从数据报文中获取用于实现解析数据报文加密内容的关键信息,利用该关键信息对加密内容进行解析,提高了加密数据库的审计效率,保证了数据审计的安全性。

与上述提供的一种加密数据库流量审计方法相对应,本发明还提供一种加密数据库流量审计装置。由于该装置的实施例相似于上述方法实施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的加密数据库流量审计装置的实施例仅是示意性的。请参考图3所示,其为本发明提供的一种加密数据库流量审计装置的结构示意图。

本发明所述的一种加密数据库流量审计装置具体包括如下部分:

关键信息提取单元301,用于通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容。

解密及审计记录单元302,用于基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

采用本发明所述的加密数据库流量审计装置,通过对数据库对应的开放式加解密软件包进行修改,能够从数据报文中获取用于实现解析数据报文加密内容的关键信息,利用该关键信息对加密内容进行解析,提高了加密数据库的审计效率,保证了数据审计的安全性。

与上述提供的加密数据库流量审计方法相对应,本发明还提供一种电子设备。由于该电子设备的实施例相似于上述方法实施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的电子设备仅是示意性的。如图4所示,其为本发明公开的一种电子设备的实体结构示意图。该电子设备可以包括:处理器(processor)401、存储器(memory)402、通信总线403以及通信接口404,其中,处理器401,存储器402通过通信总线403完成相互间的通信,通过通信接口404与外部设备实现通信。处理器401可以调用存储器402中的逻辑指令,以执行加密数据库流量审计方法,该方法包括:通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容;基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

此外,上述的存储器402中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的加密数据库流量审计方法,该方法包括:通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容;基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的加密数据库流量审计方法,该方法包括:通过对数据库对应的开放式加解密软件包进行修改,提取访问所述数据库的会话对应的目标关键信息;其中,所述目标关键信息用于实现解析数据报文加密内容;基于预设的数据库审计系统,构建包含所述目标关键信息的映射关系表,并根据所述映射关系表及获取的实际会话标识对数据报文内容进行解密,基于解密后的语句生成相应的审计记录。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种加密数据库流量审计方法及装置
  • 一种数据库审计方法、装置、WEB服务器、数据库审计系统和存储介质
技术分类

06120112456766