1.一种基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,包括以下步骤:
s1、通过agent利用进程注入技术和apihook技术对网络加密通信会话密钥生成函数及加密通信会话id生成函数进行监控,获取加密通信会话id和相应的加密通信会话密钥;
s2、通过agent获取客户端本地ip地址;
s3、将获取的加密通信会话id、网络加密通信会话密钥和客户端本地ip地址通过临时生成的对称加密密钥进行加密,并将加密后的数据发送至网络解密端;
s4、接收到加密后的数据后,获取客户端本地ip地址、加密通信会话id和对应会话的解密密钥,对相应的网络加密通信会话进行实时解密并保存。
2.根据权利要求1所述的基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,步骤s1包括以下步骤:
s11、通过agent利用进程注入技术和apihook技术分别对系统进程创建函数和系统模块加载函数进行hook;
s12、分别对网络通信进程和加密模块进行监控,当监控到网络通信进程创建和加密模块加载时,分别对网络加密通信会话密钥生成函数及加密通信会话id生成函数进行hook;
s13、获取加密通信会话id和相应的加密密钥。
3.根据权利要求2所述的基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,步骤s3包括以下步骤:
s31、在agent中内置网络解密端公钥;
s32、agent生成对称加密密钥;
s33、通过内置的网络解密端公钥对生成的对称加密密钥进行加密,并发送至网络解密端;
s34、通过对称加密密钥对加密通信会话id、网络加密通信会话密钥和客户端本地ip地址进行加密并发送至网络解密端。
4.根据权利要求3所述的基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,步骤s4包括以下步骤:
s41、接收到加密后的数据后,判断接收到的加密后数据是否包含会话密钥,如果是,则进入步骤s44;如果否,则进入步骤s42;
s42、根据客户端本地ip地址,发送相应的会话密钥提取请求至agent;
s43、agent接收到密钥提取请求后,从密钥提取请求中获取相应的加密通信会话id;根据获取的加密通信会话id,利用内存分析技术获取会话密钥,并将获取的网络通信会话密钥、加密通信会话id及客户端ip地址信息进行加密并回传至网络解密端;
s44、根据接收的网络通信会话密钥信息,获取对应会话的解密密钥并对相应的网络加密通信会话进行实时解密并保存。
5.根据权利要求4所述的基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,步骤s43包括以下步骤:
s431、agent接收到密钥提取请求后,获取网络会话id信息;
s432、根据ssl/tls加密机制的内存密钥管理策略,采用内存特征字符搜索算法获取网络加密的会话密钥;
s433、将获取的网络加密的会话密钥、加密通信会话id及客户端ip地址信息进行加密并回传至网络解密端。
6.根据权利要求5所述的基于内存分析的ssl/tls网络加密通信信息实时解密方法,其特征在于,步骤s432还包括以下步骤:
判断采用内存特征字符搜索算法获取网络加密的会话密钥是否成功,如果是,则进入步骤s433;如果否,则利用信息熵技术对内存数据进行熵计算,并根据网络加密算法进行验证进而获取网络加密的会话密钥。