旁路审计兼容扩展主秘钥的加密数据方法、系统及终端与流程

文档序号:30583715发布日期:2022-06-29 14:06阅读:203来源:国知局
旁路审计兼容扩展主秘钥的加密数据方法、系统及终端与流程

1.本发明属于数据处理技术领域,尤其涉及一种旁路审计兼容扩展主秘钥的加密数据方法、系统及终端。


背景技术:

2.目前,数据库作为企业核心的信息资产,数据库审计产品受到空前关注。数据库审计系统是通过对数据库网络流量的旁路采集,基于数据库协议解析和sql语句还原技术的数据库安全审计系统。出于安全性考虑,目前越来越多的客户端程序/web服务等应用对数据库的访问,默认采用tls加密连接访问方式。因此针对访问数据库的加密流量进行审计,给数据库审计系统带来了新的审计方向。
3.现有数据库审计系统对旁路镜像的数据库流量进行审计的主要流程包括:
4.以tcp协议对数据库访问的明文流量,通过协议解析还原技术,提取访问数据库的sql语句以及服务器响应,审计并规范化输出。
5.以tls协议对数据库访问的加密流量,首先,解析标准tls协议,存储tls加密连接在握手过程中client.random、server.random,pre master secret、server.ciphersuit,tls.version等信息。通过数据库服务器端的私钥文件,解密pre master secret计算出master secret,进而推导出client/server两端的对称秘钥和iv。然后,利用推导出的对称秘钥和iv,根据会话协商的加密套件所采用的对称加密算法,对后续的加密数据进行解密。最后,把解密出来的明文数据传递给数据库审计系统的协议解析模块,解析操作数据库的sql语句以及服务器的响应,审计并规范化输出。
6.现有技术存在的问题及缺陷为:
7.(1)rfc 5246提出了tls1.2,在不改变tls底层协议前提下,增加了扩展功能。但是tls一般模式下的主秘钥(master secret)计算没有和会话参数进行绑定,因此,一个主动攻击者可以分别与客户端和服务器建立一个连接,两条连接的主秘钥相同。主秘钥基于这种计算方式,非常容易受到中间人攻击,存在三次握手攻击(triple handshake attack)漏洞。
8.rfc 7267为tls协议新定义了一个扩展项,并提出了主秘钥计算采用扩展主秘钥(extended master secret extension)计算新方式。把主秘钥的计算与握手阶段的消息进行绑定,从而保证不同连接产生不同的主秘钥,能够有效防止三次握手攻击。
9.(2)越来越多的标准tls加密流量采用扩展主秘钥计算新方式来计算主秘钥,由于秘钥计算方式的改变,原有主秘钥计算方法不能够计算扩展方式的主秘钥,也就不能推导出对称秘钥,因此无法把后续的加密流量进行解密,造成在扩展主秘钥计算方式下的tls加密流量,因无法解密流量而不能审计对数据库的相关操作。
10.旁路审计tls数据库加密流量,关键问题是通过解析标准tls协议,利用数据库服务器的私钥文件,根据不同的主秘钥计算方式,分别计算出主秘钥并推导对称秘钥和iv,然后解密后续的加密数据为明文。
secret、serverhello.ciphersuite和tls.version握手阶段中相关数据信息。
24.步骤五,计算主秘钥并推导对称秘钥。
25.步骤六,解密加密数据,利用推导出的对称秘钥,根据会话协商的加密套件中所选择的对称加密算法,把后续的加密流量解密为明文数据(tls协议解析出会话协商的加密套件,套件中一项就是加密算法,用计算出的对称秘钥反向解密为明文)。
26.步骤七,审计规范化输出,把解密后的明文数据传递给数据库审计系统的协议解析模块,审计sql语句并规范化输出。审计过程中分析各不同数据库协议的访问格式,数据库审计系统中协议解析模块实现了对数据库协议的解析能力,能够解析访问数据库sql或命令以及对应的响应。
27.进一步的,步骤二描述的私钥文件导入数据库审计系统包括:利用分散秘钥材料层次化秘钥管理的加密工具(为了保护私钥文件的安全,利用分散秘钥材料层次化秘钥管理的方式,开发了一套敏感数据/文件加密保护工具),把私钥文件进行加密保护,再上传至数据库审计系统。
28.进一步的,步骤五描述的计算主秘钥并推导对称秘钥包括:根据数据库服务器ip与私钥文件的映射关系查找对应的私钥文件,对其解密并加载到内存;然后根据解析tls协议存储信息,分析clienthello和serverhello消息中是否同时存在扩展项extended master secret extension。
29.如果不同时存在该扩展项,则进行一般模式的对称秘钥推导,如果同时存在该扩展项,则进行扩展秘钥计算方式下的对称秘钥推导。
30.其中,一般模式的主秘钥计算方式下,对称秘钥推导过程包括:读取待审计的镜像流量,按照审计策略进行流量过滤;针对以tls协议格式封装的流量数据,按照标准tls协议格式依次解析每个数据项,其中包括:客户端/服务器ip、会话协商的加密套件、预主秘钥密文、客户端/服务端随机数等。审计系统内存维护服务器ip与私钥映射关系,根据从加密流量所解析的服务器ip可以查找到私钥,利用私钥解密预主秘钥;利用主秘钥明文、客户端随机数、服务端随机数计算客户端/服务端对称秘钥和iv;根据会话加密套件中协商的对称加密算法,利用计算出来的对称秘钥和iv解密后续的加密数据。
31.其中,扩展主秘钥计算方式下,对称秘钥推导过程包括:读取待审计的镜像流量,按照审计策略进行流量过滤;针对以tls协议格式封装的流量数据,按照标准tls协议格式依次解析每个数据项,包括:从clienthello-clientkeyexchange握手阶段消息、客户端/服务器ip、会话协商的加密套件、clienthello/serverhello扩展项信息、预主秘钥密文、客户端/服务端随机数等。根据扩展信息项判断是否是扩展秘钥计算方式;在确定是扩展秘钥计算方式后,审计系统内存中维护服务器ip与私钥映射关系,根据从加密流量中所解析的服务器ip可以查找到对应的私钥,利用私钥解密预主秘钥为明文;计算clienthello到clientkeyexchange消息的hash值;利用预主秘钥明文和消息的hash值计算主秘钥;利用计算出的主秘钥、客户端随机数、服务端随机数计算客户端/服务端对称秘钥和iv;根据会话加密套件中协商的对称加密算法,利用计算出来的对称秘钥和iv解密后续的加密数据。
32.本发明的另一目的在于提供一种实施上述旁路审计兼容扩展主秘钥的加密数据方法的系统,该加密数据系统包括:
33.非前向安全的加密套件算法选择模块,用于分析梳理不同数据库服务器相关的加
密套件配置项,通过变更加密套件配置项的方法,使得数据库服务器在加密传输过程中,优先选择非前向安全的加密套件算法;
34.私钥文件导入模块,用于提取数据库服务器的私钥文件,加密保护后导入数据库审计系统;
35.映射关系维护模块,用于维护数据库服务器ip与数据库服务器私钥文件的映射关系;
36.标准tls协议解析模块,用于解析标准的tls协议,并存储握手阶段中相关信息;
37.对称秘钥推导模块,用于计算主秘钥并推导对称秘钥;
38.密文数据解密模块,用于解密加密数据,利用推导出来的对称秘钥,根据会话协商的加密套件中所选择的对称加密算法,把后续的加密流量解密为明文数据;
39.审计模块,用于审计规范化输出,把解密后的明文数据传递给数据库协议解析模块,审计sql语句并规范化输出。
40.本发明的另一目的在于提供一种旁路审计兼容扩展主秘钥的加密数据终端,该终端至少包括:
41.计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如下步骤:
42.对于非前向安全加密套件的tls加密数据库流量,在解析标准tls协议基础上,扩展秘钥计算方式的加密流量,进行扩展主秘钥计算方式下的主秘钥计算,并根据计算的主秘钥推导出对称秘钥,实现对扩展主秘钥计算方式下的流量解密;一般主秘钥计算模式下的加密流量,按照一般模式的对称秘钥推导方法进行对称秘钥计算并进行流量解密。
43.计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行旁路审计兼容扩展主秘钥的加密数据方法。
44.本发明提供的旁路审计兼容扩展主秘钥的加密数据终端可用于金融、公共安全、企业财务等领域的数据处理。
45.结合上述的所有技术方案,本发明所具备的优点及积极效果为:
46.现有技术旁路解析tls加密流量,只能对一般主秘钥计算方式的加密流量进行解密,而不能计算扩展秘钥计算方式的主秘钥,随着tls加密流量中主秘钥的计算方式采用扩展秘钥计算方式越来越多,能够审计扩展主秘钥计算方式的tls加密流量,提出一套针对非前向安全加密套件的加密流量进行解密功能,扩充数据库审计系统对访问数据库服务器的加密流量进行审计的能力成为迫切的需求。
47.在解析标准tls协议基础上,本发明给出扩展秘钥计算方式下的主秘钥计算方法,并根据计算的主秘钥推导出对称秘钥,实现对扩展主秘钥计算方式下的加密流量解密的功能。并整合tls一般主秘钥计算方式下对称秘钥的推导方法,对于非前向安全加密套件的tls加密数据库流量进行解密,给出一套完整解密方案,实现了扩展主秘钥计算方式和一般主秘钥计算方式两种情况下的加密流量解密功能。
48.本发明提出的针对tls加密流量的解密方法,已经成功实现了对mysql、mongodb、mssql server数据库加密数据流量解密并旁路审计,有效扩充了数据库审计系统的审计能力。
49.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不
能限制本发明的公开。
附图说明
50.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的优选的实施例,并与说明书一起用于解释本发明的技术原理及技术方案。
51.图1为本发明实施例提供的旁路审计兼容扩展主秘钥的加密数据方法流程图。
52.图2为本发明实施例提供的现有一般方式下主秘钥计算方法流程图。
53.图3为本发明实施例提供的扩展秘钥计算方式下对称秘钥推导方法流程图。
54.图4为本发明实施例提供的加密流量解密审计示例图。
具体实施方式
55.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似改进,因此本发明不受下面公开的具体实施方式的限制。
56.基本的互联网通信协议都有在rfc文件内详细说明,本发明所涉及rfc5246为:tls1.2协议规范标准文档;rfc 7627为:tls扩展秘钥计算方式规范标准文档。
57.本实施例提供了一种旁路审计兼容扩展主秘钥的加密数据方法,包括:在数据库审计系统上添加ip与私钥映射管理、tls协议解析、加解密等模块,新增的这些模块要实现私钥管理、tls协议解析与信息存储、主秘钥计算与对称秘钥和iv推导、数据解密功能。
58.进一步的,实现对tls加密流量解密功能的具体流程如下:在解析标准tls协议基础上,判断clienthello和serverhello消息中是否同时存在扩展信息项extended master secret extension,若同时存在则按照扩展主秘钥计算方式计算主秘钥,根据计算的主秘钥推导出对称秘钥和iv,再利用对称秘钥和iv依次解密后续的加密数据,实现对扩展主秘钥计算方式的加密流量进行解密;若不同时存在扩展项则根据一般模式下的主秘钥计算方法,计算主秘钥并推导对称秘钥和iv,再利用该对称秘钥和iv实现对后续数据解密。实现扩展秘钥计算方式和一般秘钥计算方式的加密流量解密,扩充了对非前向安全加密套件的tls加密数据库流量解密的能力。把解密后的明文数据传递给数据库审计系统各协议解析模块,对操作数据库的sql以及服务器响应进行审计并规范化输出。
59.进一步的,本实施例还提供了一种实施旁路审计兼容扩展主秘钥的加密数据方法的系统,该系统包括:
60.非前向安全加密套件算法选择模块,用于分析梳理不同数据库服务器相关的加密配置项,通过变更加密套件配置项的方法,使得数据库服务器在加密传输过程中,优先选择非前向安全的加密套件算法;
61.私钥文件导入模块,用于提取数据库服务器的私钥文件,加密保护后导入数据库审计系统;
62.映射关系维护模块,用于维护数据库服务器ip与数据库服务器私钥文件的映射关系;
63.标准tls协议解析模块,用于解析标准的tls协议,解析存储握手阶段中相关信息;
64.对称秘钥推导模块,用于计算主秘钥并推导对称秘钥;
65.密文数据解密模块,用于解密加密数据,利用推导出来的对称秘钥,根据加密套件中选择的对称加密算法,把后续的加密流量解密为明文数据;
66.审计模块,用于审计规范化输出,把解密后的明文数据传递给数据库协议解析模块,审计sql语句并规范化输出。
67.下面结合具体实施例对本发明的技术方案作进一步描述。
68.请参考图1,为优选实施例的旁路审计兼容扩展主秘钥的加密数据方法,该方法包括:
69.s101,分析梳理不同数据库服务器相关的加密配置项,通过变更加密套件配置项的方法,使得数据库服务器在加密传输过程中,会优先选择非前向安全的加密套件算法;
70.s102,提取数据库服务器的私钥文件,将其导入数据库审计系统。由于私钥文件属于敏感需要保密的数据,本发明提供了一套加密工具,由管理员首先把该私钥文件进行加密保护,再上传至数据库审计系统;
71.s103,维护数据库服务器ip与其私钥文件的映射关系;
72.s104,解析标准tls协议,存储clienthello.random、serverhello.random、clienthello.extensions、serverhello.extensions、clienthello-clientkeyexchange、premaster secret、serverhello.ciphersuite、tls.version握手阶段中相关信息;
73.s105,计算主秘钥并推导对称秘钥;
74.s106,解密加密数据,利用推导出来的对称秘钥,根据加密套件中选择的对称加密算法,把后续的加密流量解密为明文数据;
75.s107,审计规范化输出,把解密后的明文数据传递给数据库协议解析模块,审计sql语句并规范化输出。
76.进一步的,步骤s105,计算主秘钥并推导对称秘钥,首先根据数据库服务器ip与私钥文件的映射关系查找私钥文件,对其解密并加载到内存,然后根据解析tls协议存储相关信息,查看clienthello和serverhello消息中是否同时存在扩展项extended master secret extension,如果不同时存在该扩展项,则按照图2所示的一般主秘钥计算方式进行对称秘钥推导,否则按照图3所示的扩展秘钥计算方式进行对称秘钥推导。
77.以mysql加密流量为例,按照图3方式计算扩展秘钥方式的主秘钥并推导对称秘钥并对后续加密数据解密,把解密后的明文传递给数据库审计系统mysql协议解析模块,解析并审计访问数据库的系列sql语句,仿真效果图如图4所示。
78.本领域技术人员在考虑说明书实施例公开的内容后,将容易想到本发明的其它实施方案。本发明旨在涵盖实施方式的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由所附的权利要求指出。
79.应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围应由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1