CN114513326A - 基于动态代理实现通信审计的方法及系统 - Google Patents

基于动态代理实现通信审计的方法及系统 Download PDF

Info

Publication number
CN114513326A
CN114513326A CN202111630381.8A CN202111630381A CN114513326A CN 114513326 A CN114513326 A CN 114513326A CN 202111630381 A CN202111630381 A CN 202111630381A CN 114513326 A CN114513326 A CN 114513326A
Authority
CN
China
Prior art keywords
audit
proxy
target server
module
port
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.)
Granted
Application number
CN202111630381.8A
Other languages
English (en)
Other versions
CN114513326B (zh
Inventor
胡运好
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co Ltd
Original Assignee
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qianxin Technology Group Co Ltd, Secworld Information Technology Beijing Co Ltd filed Critical Qianxin Technology Group Co Ltd
Priority to CN202111630381.8A priority Critical patent/CN114513326B/zh
Publication of CN114513326A publication Critical patent/CN114513326A/zh
Application granted granted Critical
Publication of CN114513326B publication Critical patent/CN114513326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供的基于动态代理实现通信审计的方法及系统,通过网络驱动模块监视代理端设备的出网的网络行为;通过通道建立模块建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。该方法可以降低对通信审计的成本。

Description

基于动态代理实现通信审计的方法及系统
技术领域
本发明涉及信息技术领域,尤其涉及一种基于动态代理实现通信审计的方法及系统。
背景技术
在越来越注重安全的互联网大环境下,HTTP由于其明文的特质越来越被限制使用。不管是国内还是国外,目前互联网可以访问的网站都已经切换到安全的HTTPS通信模式,原来老的HTTP站点直接设置了跳转页面,直接转到相应的HTTPS通信站点。这不只是正常的守法业务,那些违法的或者不能见光的业务也都转为HTTPS通信网站。
那在这个全民皆安全(HTTPS通信)的情况下,如何审计HTTPS通信的访问也变得很迫切。
目前有一些方法能实现HTTPS通信的审计,比如,中间人+sslstrip模式。但这种审计方法需要搭建额外的proxy服务器,实现http到HTTPS通信的代理转发。而且还需要进行ARP欺诈或者DNS欺诈,或者搭建一个DNS服务器,以便实现对指定域名的访问能通过该中间人服务,需要较高的实现成本。
发明内容
本发明提供一种基于动态代理实现通信审计的方法及系统,用以解决现有技术中通信审计成本高的缺陷,可以有效降低通信审计的成本。
第一方面,本发明实施例提供了一种基于动态代理实现通信审计的方法,应用于代理端设备,包括:通过网络驱动模块监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过所述通道建立模块根据所述目标服务器的IP和端口,建立所述目标服务器与代理端设备的第一加密转发通道;通过所述通道建立模块将所述代理端设备的第一端口与客户端设备进行绑定,在所述第一端口上启动代理对象,建立所述客户端设备与所述代理端设备的第二加密转发通道;通过所述代理对象解密所述客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至所述目标服务器;通过所述代理对象解密所述目标服务器返回的第二通信数据,通过所述管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备。
进一步地,所述的基于动态代理实现通信审计的方法,还包括:若所述解密的第一通信数据没有通过所述管控审计模块的第一审计,或所述解密的第二通信数据没有通过所述管控审计模块的第二审计,断开并销毁所述第一加密转发通道和所述第二加密转发通道,记录审计事件。
进一步地,所述将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备之后,还包括:销毁所述第一加密转发通道和所述第二加密转发通道。
进一步地,所述获取所述出网的网络行为指向的目标服务器的IP和端口,包括:若所述出网的网络行为是基于TCP协议连接服务器的初始化报文,确定所述服务器为目标服务器,获取所述目标服务器的IP和端口。
进一步地,所述通过所述通道建立模块根据所述目标服务器的IP和端口,建立所述目标服务器与代理端设备的第一加密转发通道,包括:通过所述通道建立模块根据所述目标服务器的IP和端口探测所述目标服务器,若基于对所述目标服务器的探测,获取所述目标服务器的证书信息,将所述证书信息保存在证书管理模块;对所述客户端设备进行模拟;基于所述证书信息建立所述代理端设备与所述目标服务器的所述第一加密转发通道。
进一步地,所述通过所述通道建立模块基于代理端设备的第一端口与客户端设备的绑定,在所述第一端口上启动代理对象,建立所述客户端设备与所述代理端设备的第二加密转发通道,包括:通过所述通道建立模块将所述代理端设备的第一端口与客户端设备的本地回环地址进行绑定,在所述第一端口上启动所述代理对象;监听所述代理端设备与所述客户端设备的连接,若所述代理端设备与所述客户端设备连接成功,获取所述代理端设备对所述客户端设备进行代理的代理地址;基于所述代理地址建立所述第二加密转发通道。
进一步地,所述获取所述代理端设备对所述客户端设备进行代理的代理地址之后,还包括:通过所述通道建立模块将所述代理地址发送到所述网络驱动模块;通过所述网络驱动模块根据所述代理地址跳转到所述第一端口。
进一步地,通过所述管控审计模块对解密的第二通信数据进行第二审计,包括:通过所述管控审计模块判断所述解密的第二通信数据是否完整;若所述解密的第二通信数据完整,对所述解密的第二通信数据进行第二审计。
进一步地,所述通过网络驱动模块监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口之前,还包括:确定是否通过管控审计模块对所述目标服务器进行审计;若对所述目标服务器进行审计,安装并加载所述网络驱动模块,并向所述网络驱动模块发送审计白名单;所述获取所述出网的网络行为指向的目标服务器的IP和端口之后,还包括:通过所述网络驱动模块基于所述审计白名单对所述目标服务器进行审计。
第二方面,本发明还提供了一种基于动态代理实现通信审计的系统,包括:代理端装置和管理端装置。其中,所述代理端装置包括:通道建立模块,用于根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;将代理端设备的第一端口绑定到客户端设备上,在所述第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;管控审计模块,用于对第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至所述目标服务器;通过所述管控审计模块对第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备;证书管理模块,用于存储证书信息;驱动通信模块,用于检查驱动是否正常,注册驱动事件回调;网络驱动模块,用于监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口;基于根据所述回调指令,跳转到所述第一端口。所述管理端装置,用于管理用户鉴权、白名单、客户端设备分组、管控策略、审计事件展示和同步配置。
第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的基于动态代理实现通信审计的方法的步骤。
第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的基于动态代理实现通信审计的方法的步骤。
第五方面,本发明实施例还提供了一种计算机程序产品,其上存储有可执行指令,该指令被处理器执行时使处理器实现如第一方面所述的基于动态代理实现通信审计的方法的步骤。
本发明提供的基于动态代理实现通信审计的方法及系统,通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。代理端设备对客户端设备进行代理,向目标服务器发送访问请求并接收目标服务器的反馈信息,并对发出的访问信息以及接收的反馈信息进行审计,不需要搭建额外的DNS服务器,可以降低对通信审计的成本。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种基于动态代理实现通信审计的方法实施例的流程示意图;
图2为本发明提供的建立第一加密转发通道方法实施例的流程示意图;
图3为本发明提供的建立第二加密转发通道方法实施例的流程示意图;
图4为本发明提供的对解密的第二通信数据的审计方法实施例的流程示意图;
图5为本发明提供的代理端设备的业务流程示意图;
图6为本发明提供的网络驱动模块的业务流程示意图;
图7为本发明提供的基于动态代理实现通信审计系统实施例的组成结构示意图;
图8示例了一种电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的一种基于动态代理实现通信审计的方法实施例的流程示意图。如图1所示,该基于动态代理实现通信审计的方法,应用于代理端设备,可以包括以下步骤:
S101,通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块。
在步骤S101中,出网的网络行为可以为向其他设备发送消息,或者也可以为向其他设备发出访问请求或连接请求等,本发明实施例对此不作限定。出网的目的地址为除了本地回环地址以外的任意地址。127.0.0.1,通常被称为本地回环地址(LoopbackAddress),不属于任何一个有类别地址类。它代表设备的本地虚拟接口,所以默认被看作是永远不会宕掉的接口。根据出网的网络行为的目的地址可以获取目标服务器的IP和端口。
S102,通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道。
在步骤S102中,代理端设备可以通过通道建立模块根据目标服务器的IP和端口建立目标服务器与代理端设备的连接,建立起目标服务器与代理端设备的第一加密转发通道。其中,第一加密转发通道可以为SSLConn1,本发明实施例对此不作限定。
S103,通过通道建立模块基于代理端设备的第一端口与客户端设备的绑定,在第一端口上启动代理对象,建客户端设备与代理端设备的第二加密转发通道。
在步骤S103中,代理端设备通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,若绑定成功,可以使代理端设备与客户端设备进行连接。代理端设备与客户端设备成功连接后,在第一端口上启动代理对象,同时建立代理端设备与客户端设备第二加密转发通道。其中,第二加密转发通道可以为SSLConn2,本发明实施例对此不作限定。
S104,通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器。
在步骤S104中,代理端设备首先通过代理对象对客户端设备的第一通信数据进行解密,然后通过管控审计模块对解密的第一通信数据进行第一审计,若解密的第一通信数据通过第一审计,认为该解密的第一通信数据是安全的,则将该通过第一审计的第一通信数据由第一加密转发通道SSLConn1发送至目标服务器。在这个过程中,代理端设备可以代理客户端设备向目标服务器发起访问。
S105,通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。
在步骤S105中,代理端设备通过代理对象解密目标服务器返回的第二通信数据,然后通过管控审计模块对第二通信数据进行第二审计,若解密的第一通信数据通过第二审计,认为该解密的第二通信数据是安全的,则将该通过第二审计的第二通信数据由第二加密转发通道SSLConn2发送至客户端设备。在这个过程中,代理端设备可以代理客户端设备接收目标服务器的反馈信息。
本发明提供的基于动态代理实现通信审计的方法,通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。代理端设备对客户端设备进行代理,向目标服务器发送访问请求并接收目标服务器的反馈信息,并对发出的访问信息以及接收的反馈信息进行审计,不需要搭建额外的DNS服务器,可以降低对通信审计的成本。
在一些可选的实施例中,基于动态代理实现通信审计的方法还可以包括:若解密的第一通信数据没有通过管控审计模块的第一审计,或解密的第二通信数据没有通过管控审计模块的第二审计,断开并销毁第一加密转发通道和第二加密转发通道,记录审计事件。
若解密的第一通信数据没有通过管控审计模块的第一审计,或解密的第二通信数据没有通过管控审计模块的第二审计,此时认为解密的第一通信数据或解密的第二通信数据是不安全的,不能对该数据进行传递,代理端设备通过主动断开并销毁第一加密转发通道和第二加密转发通道阻止不安全的数据传递。同时,对没有通过审计的数据记录审计事件,审计事件的内容可以包括审计的时间、数据的来源、没有通过审计的原因等,本发明实施例对此不作限定。
本发明提供的对审计事件进行管控的方法,通过断开并销毁审计不通过的数据的传递通道阻止不安全数据的传递,可以确保客户端设备和目标服务器的安全;通过对没通过审计的数据进行审计事件的记录,便于对不安全数据的溯源。
在一些可选的实施例中,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备之后,还可以包括:销毁第一加密转发通道和第二加密转发通道。
其中,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备之后,代表代理端设备代理客户端设备向目标服务器发起访问,代理客户端设备接收目标服务器的反馈,并将接收的反馈返回客户端设备,整个代理过程已经完成,销毁第一加密转发通道和第二加密转发通道。
本发明实施例提供的代理结束的处理方法,在代理完成后通过销毁第一加密转发通道和第二加密转发通道断开数据的传递通道,在代理完成后,可以减少客户端设备和目标服务器的线程,保证客户端设备和目标服务器的安全。
在一些可选的实施例中,获取出网的网络行为指向的目标服务器的IP和端口,包括:若出网的网络行为是基于TCP协议连接服务器的初始化报文,确定服务器为目标服务器,获取目标服务器的IP和端口。
其中,TCP协议是传输控制协议(Transmission Control Protocol TCP)的简称,TCP协议是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议。
初始化报文可以是SYN包,SYN是TCP建立连接时使用的握手信号。在代理端设备和服务器之间建立正常的TCP网络连接时,代理端设备首先发出一个SYN消息,服务器使用SYN-ACK应答表示接收到了这个消息,最后代理端设备再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在代理端设备和服务器之间传递。
图2为本发明提供的建立第一加密转发通道方法实施例的流程示意图。如图2所示,该建立第一加密转发通道方法,可以包括以下步骤:
S201,通过通道建立模块根据目标服务器的IP和端口探测目标服务器,若基于对目标服务器的探测,获取目标服务器的证书信息,将证书信息保存在证书管理模块。
在步骤S201中,证书信息可以为SSL证书信息,SSL是安全套接层(Secure SocketsLayer)的简称,SSL协议是为网络通信提供安全及数据完整性的一种安全协议。SSL在传输层对网络连接进行加密,用于保障网络数据传输安全,利用数据加密技术,确保数据在网络传输过程中不会被截取及窃听。SSL协议已成为全球化标准,所有主要的浏览器和WEB服务器程序都支持SSL协议,可通过安装SSL证书激活SSL协议。SSL证书就是遵守SSL协议的服务器数字证书,由受信任的证书颁发机构(CA机构),验证服务器身份后颁发,部署在服务器上,具有网站身份验证和加密传输双重功能。获取SSL证书的方法可以包括,SSL工具openssl s_client-showcerts-connect、CURL、Nmap、keytool等,本发明实施例对此不作限定。
S202,对客户端设备进行模拟。
在步骤S202中,由于代理端设备对客户端设备进行代理,对目标服务器进行访问,代理服务端需要对客户端设备进行模拟,在代理客户端设备访问目标服务器时,让目标服务器认为发出访问的是客户端设备,进而接收代理端设备的访问。
S203,基于证书信息建立代理端设备与目标服务器的第一加密转发通道。
在步骤S203中,代理端设备基于其缓存的SSL证书信息与目标服务器建立连接,完成SSL握手,建立代理端设备与目标服务器的第一加密转发通道。
本发明实施例提供的建立第一加密转发通道方法,通过获取证书信息可以实现代理端设备与目标服务器的连接,由于代理端设备使用了和目标服务器相同的证书,不会导致客户端设备出现证书无效或其它告警提示,对于网络客户端进程来说友好性更好,可以让网络进程对审计过程无感知。通过较多的开源和免费的工具,实现目标服务器证书的收集,并将对应证书和代理对象进行一对一的绑定,只要对这些证书进行集中有效性和时效性检查,对于即将过期、已过期、无效或吊销的异常证书状态进行告警,还能提升网络安全性。
图3为本发明提供的建立第二加密转发通道方法实施例的流程示意图。如图3所示,该建立第二加密转发通道方法,可以包括以下步骤:
S301,通过通道建立模块基于代理端设备的第一端口与客户端设备的本地回环地址的绑定,在第一端口上启动代理对象。
S302,监听代理端设备与客户端设备的连接,若代理端设备与客户端设备连接成功,获取代理端设备对客户端设备进行代理的代理地址。
S303,基于代理地址建立第二加密转发通道。
在步骤S301至步骤S303中,第一端口可以为LP_PORT,由于该端口与本地回环地址进行绑定,代理端设备与客户端设备连接成功后,可以得到代理地址可以为127.0.0.1:LP_PORT,根据该代理地址可以建立第二加密转发通道。
本发明实施例提供的建立第二加密转发通道方法,通过代理地址可以建立第二加密转发通道。
在一些可选的实施例中,获取代理端设备对客户端设备进行代理的代理地址之后,还可以包括:通过通道建立模块将代理地址发送到网络驱动模块。通过网络驱动模块根据代理地址跳转到第一端口。
其中,通道建立模块将代理地址发送到网络驱动模块,网络驱动模块可以跳转逻辑,执行由代理端设备代理客户端设备对目标服务器进行访问以及代理客户端设备接收目标服务器的反馈,该过程可以称为中间人劫持的流程。
本发明提供的实施例,通过将代理地址发送到网络驱动模块,可以实现代理逻辑的跳转,进入中间人劫持流程。
图4为本发明提供的对解密的第二通信数据的审计方法实施例的流程示意图。如图4所示,该对解密的第二通信数据的审计方法,可以包括以下步骤:
S401,通过管控审计模块判断解密的第二通信数据是否完整。
S402,若解密的第二通信数据完整,对解密的第二通信数据进行第二审计。
在步骤S401和步骤S402中,判断解密的第二通信数据是否完整,若完整,则证明已经接收目标服务器返回的全部反馈信息,则对该解密的第二通信数据进行审计;若不完整,则证明目标服务器返回的反馈信息还在接收中,将该解密的第二通信数据进行缓存,直至该解密的第二通信数据完整的接收,再对其进行审计。
本发明提供的对解密的第二通信数据的审计方法,通过判断解密的第二通信数据是否完整确定是否对其审计,可以保证对完整的第二通信数据进行审计。
在一些可选的实施例中,通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口之前,还可以包括:确定是否通过管控审计模块对目标服务器进行审计;若对目标服务器进行审计,安装并加载网络驱动模块,并向网络驱动模块发送审计白名单;获取出网的网络行为指向的目标服务器的IP和端口之后,还可以包括:通过网络驱动模块基于审计白名单对目标服务器进行审计。
其中,审计白名单中的服务器为安全的服务器,若目标服务器在审计白名单中,则允许目标服务器与客户端设备直接连接;若目标服务器不在审计白名单中,则不允许目标服务器与客户端设备直接连接,需要代理端设备代理客户端设备与目标服务器连接。
本发明提供的实施例,通过审计白名单对目标服务器进行审计,可以判断目标服务器是否可以与客户端服务器直接连接,可以保证客户端服务器的安全。
图5为本发明提供的代理端设备的业务流程示意图,如图5所示,该代理端设备的业务流程可以包括:
管控审计模块检查目标服务器是否需要审计,若不需要审计,则代理端设备的业务流程结束;若需要审计,检查驱动是否正常,若驱动异常,驱动通信模块重新安装驱动,若驱动正常,驱动通信模块注册驱动事件回调,管控审计模块定期更新管控策略;通道建立模块处理TCP握手事件;经过TCP握手后,若没有获取SSL证书,通道建立模块通知网络驱动模块直接连接目标服务器;若获取SSL证书,通道建立模块将SSL证书存储至证书管理模块,创建目标服务器与代理端设备的SSLConnl1代理通道;若创建失败,则销毁该SSLConnl1代理通道,通知网络驱动模块不进行跳转,客户端设备直接连接目标服务器;若创建成功,将代理端设备的第一端口与本地回环地址进行绑定;若绑定成功,监听该端口与客户端设备成功连接,网络驱动模块与客户端设备进行连接,创建客户端设备与代理端设备的SSLConnl2代理通道;若创建失败,则销毁SSLConnl2代理通道;若SSLConnl1代理通道和SSLConnl2代理通道异常或者正常结束,销毁SSLConnl1代理通道和SSLConnl2代理通道。
图6为本发明提供的网络驱动模块的业务流程示意图,如图6所示,该网络驱动模块的业务流程可以包括:
若需要进行网络审计,网络驱动模块处理注册事件,接收下发的白名单,网络驱动模块监视到代理端设备的出网的网络行为是基于TCP协议连接服务器的初始化报文,判断出网的网络行为的目的地址是否是本地回环地址,若是,通知网络驱动模块不进行跳转,客户端设备直接连接该服务器;若不是,则判断出网的网络行为连接的服务器是在白名单上;若在,则通知网络驱动模块不进行跳转,客户端设备直接连接该服务器;如若不在,则调用回调,等待应用层指令判断是否跳转,若是,则跳转到应用层告知的特定端口,若不是,则网络驱动模块不进行跳转,客户端设备直接连接该服务器。
图7为本发明提供的基于动态代理实现通信审计系统实施例的组成结构示意图。如图7所示,该系统可以包括:
通道建立模块,用于根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;将代理端设备的第一端口绑定到客户端设备上,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;
管控审计模块,用于对第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过管控审计模块对第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备;
证书管理模块,用于存储证书信息;
驱动通信模块,用于检查驱动是否正常,注册驱动事件回调;
网络驱动模块,用于监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口;基于根据回调指令,跳转到第一端口。
管理端装置,用于管理用户鉴权、白名单、客户端设备分组、管控策略、审计事件展示和同步配置。
本发明提供的基于动态代理实现通信审计系统,通过控制台装置来配置不同的策略来管控不同的客户端分组,实现HTTPS通信管控策略的差异化设置和下发;代理端装置的网络驱动模块基于事件回调函数,实现在本地回环地址的随机端口的HTTPS通信代理,进而通过中间人(MITM)攻击来通过两个加密安全通道实现对HTTPS通信通信的审计和管控。由于本地代理HTTPS通信使用了和目标HTTPS通信一样的证书,不会导致客户端设备出现证书无效或其它告警提示,对于网络客户端进程来说友好性更好,可以让网络进程对审计过程无感知。通过较多的开源和免费的工具,实现目标HTTPS通信站点证书的收集,并将对应证书和代理对象进行一对一的绑定,只要对这些证书进行集中有效性和时效性检查,对于即将过期、已过期、无效或吊销的异常证书状态进行告警,还能提升网络安全性。通过HTTPS通信审计白名单规则可以很好的规避不需要审计的放心HTTPS通信站点,减少过多不必要的审计导致的网络效率的损失,从而提升网络性能。
图8示例了一种电子设备的实体结构示意图,如图8示,该电子设备可以包括:处理器(processor)801、通信接口(CommunicationsInterface)802、存储器(memory)803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信。处理器801可以调用存储器803中的逻辑指令,以执行如下方法:通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。
此外,上述的存储器803中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述各实施例提供的基于动态代理实现通信审计的方法,例如包括:通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于动态代理实现通信审计的方法,例如包括:通过网络驱动模块监视代理端设备的出网的网络行为,获取出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;通过通道建立模块根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;通过通道建立模块将代理端设备的第一端口与客户端设备进行绑定,在第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;通过代理对象解密客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至目标服务器;通过代理对象解密目标服务器返回的第二通信数据,通过管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至客户端设备。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (13)

1.一种基于动态代理实现通信审计的方法,应用于代理端设备,其特征在于,包括:
通过网络驱动模块监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口,并发送到通道建立模块;
通过所述通道建立模块根据所述目标服务器的IP和端口,建立所述目标服务器与代理端设备的第一加密转发通道;
通过所述通道建立模块将所述代理端设备的第一端口与客户端设备进行绑定,在所述第一端口上启动代理对象,建立所述客户端设备与所述代理端设备的第二加密转发通道;
通过所述代理对象解密所述客户端设备的第一通信数据,通过管控审计模块对解密的第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至所述目标服务器;
通过所述代理对象解密所述目标服务器返回的第二通信数据,通过所述管控审计模块对解密的第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备。
2.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,还包括:
若所述解密的第一通信数据没有通过所述管控审计模块的第一审计,或所述解密的第二通信数据没有通过所述管控审计模块的第二审计,断开并销毁所述第一加密转发通道和所述第二加密转发通道,记录审计事件。
3.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,所述将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备之后,还包括:销毁所述第一加密转发通道和所述第二加密转发通道。
4.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,所述获取所述出网的网络行为指向的目标服务器的IP和端口,包括:
若所述出网的网络行为是基于TCP协议连接服务器的初始化报文,确定所述服务器为目标服务器,获取所述目标服务器的IP和端口。
5.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,所述通过所述通道建立模块根据所述目标服务器的IP和端口,建立所述目标服务器与代理端设备的第一加密转发通道,包括:
通过所述通道建立模块根据所述目标服务器的IP和端口探测所述目标服务器,若基于对所述目标服务器的探测,获取所述目标服务器的证书信息,将所述证书信息保存在证书管理模块;
对所述客户端设备进行模拟;
基于所述证书信息建立所述代理端设备与所述目标服务器的所述第一加密转发通道。
6.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,所述通过所述通道建立模块基于代理端设备的第一端口与客户端设备的绑定,在所述第一端口上启动代理对象,建立所述客户端设备与所述代理端设备的第二加密转发通道,包括:
通过所述通道建立模块将所述代理端设备的第一端口与客户端设备的本地回环地址进行绑定,在所述第一端口上启动所述代理对象;
监听所述代理端设备与所述客户端设备的连接,若所述代理端设备与所述客户端设备连接成功,获取所述代理端设备对所述客户端设备进行代理的代理地址;
基于所述代理地址建立所述第二加密转发通道。
7.根据权利要求6所述的基于动态代理实现通信审计的方法,其特征在于,所述获取所述代理端设备对所述客户端设备进行代理的代理地址之后,还包括:
通过所述通道建立模块将所述代理地址发送到所述网络驱动模块;
通过所述网络驱动模块根据所述代理地址跳转到所述第一端口。
8.根据权利要求1所述的基于动态代理实现通信审计的方法,其特征在于,通过所述管控审计模块对解密的第二通信数据进行第二审计,包括:
通过所述管控审计模块判断所述解密的第二通信数据是否完整;
若所述解密的第二通信数据完整,对所述解密的第二通信数据进行第二审计。
9.根据权利要求1-8任一项所述的基于动态代理实现通信审计的方法,其特征在于,所述通过网络驱动模块监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口之前,还包括:
确定是否通过管控审计模块对所述目标服务器进行审计;
若对所述目标服务器进行审计,安装并加载所述网络驱动模块,并向所述网络驱动模块发送审计白名单;
所述获取所述出网的网络行为指向的目标服务器的IP和端口之后,还包括:
通过所述网络驱动模块基于所述审计白名单对所述目标服务器进行审计。
10.一种基于动态代理实现通信审计的系统,其特征在于,包括:代理端装置和管理端装置。其中,所述代理端装置包括:
通道建立模块,用于根据目标服务器的IP和端口,建立目标服务器与代理端设备的第一加密转发通道;将代理端设备的第一端口绑定到客户端设备上,在所述第一端口上启动代理对象,建立客户端设备与代理端设备的第二加密转发通道;
管控审计模块,用于对第一通信数据进行第一审计,将通过第一审计的第一通信数据由第一加密转发通道发送至所述目标服务器;通过所述管控审计模块对第二通信数据进行第二审计,将通过第二审计的第二通信数据由第二加密转发通道发送至所述客户端设备;
证书管理模块,用于存储证书信息;
驱动通信模块,用于检查驱动是否正常,注册驱动事件回调;
网络驱动模块,用于监视所述代理端设备的出网的网络行为,获取所述出网的网络行为指向的目标服务器的IP和端口;基于根据所述回调指令,跳转到所述第一端口。
所述管理端装置,用于管理用户鉴权、白名单、客户端设备分组、管控策略、审计事件展示和同步配置。
11.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~9任一项所述的基于动态代理实现通信审计的方法的步骤。
12.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~9任一项所述的基于动态代理实现通信审计的方法的步骤。
13.一种计算机程序产品,其上存储有可执行指令,其特征在于,该指令被处理器执行时使处理器实现如权利要求1~9任一项所述的基于动态代理实现通信审计的方法的步骤。
CN202111630381.8A 2021-12-28 2021-12-28 基于动态代理实现通信审计的方法及系统 Active CN114513326B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111630381.8A CN114513326B (zh) 2021-12-28 2021-12-28 基于动态代理实现通信审计的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111630381.8A CN114513326B (zh) 2021-12-28 2021-12-28 基于动态代理实现通信审计的方法及系统

Publications (2)

Publication Number Publication Date
CN114513326A true CN114513326A (zh) 2022-05-17
CN114513326B CN114513326B (zh) 2024-06-21

Family

ID=81547759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111630381.8A Active CN114513326B (zh) 2021-12-28 2021-12-28 基于动态代理实现通信审计的方法及系统

Country Status (1)

Country Link
CN (1) CN114513326B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115208635A (zh) * 2022-06-17 2022-10-18 北京启明星辰信息安全技术有限公司 一种国密ssl通信代理模块及其非侵入式改造系统的方法
CN116471125A (zh) * 2023-06-19 2023-07-21 杭州美创科技股份有限公司 加密数据库流量审计方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009062406A1 (fr) * 2007-11-16 2009-05-22 Chengdu Huawei Symantec Technologies Co., Ltd. Procédé, système et dispositif de chiffrement et d'accès https
CN108259621A (zh) * 2018-02-02 2018-07-06 任子行网络技术股份有限公司 一种针对网吧的https内容的审计方法和装置
CN113810396A (zh) * 2021-09-07 2021-12-17 北京明朝万达科技股份有限公司 一种数据管控方法、装置、电子设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009062406A1 (fr) * 2007-11-16 2009-05-22 Chengdu Huawei Symantec Technologies Co., Ltd. Procédé, système et dispositif de chiffrement et d'accès https
CN108259621A (zh) * 2018-02-02 2018-07-06 任子行网络技术股份有限公司 一种针对网吧的https内容的审计方法和装置
CN113810396A (zh) * 2021-09-07 2021-12-17 北京明朝万达科技股份有限公司 一种数据管控方法、装置、电子设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115208635A (zh) * 2022-06-17 2022-10-18 北京启明星辰信息安全技术有限公司 一种国密ssl通信代理模块及其非侵入式改造系统的方法
CN115208635B (zh) * 2022-06-17 2023-05-16 北京启明星辰信息安全技术有限公司 一种国密ssl通信代理模块及其非侵入式改造系统的方法
CN116471125A (zh) * 2023-06-19 2023-07-21 杭州美创科技股份有限公司 加密数据库流量审计方法、装置、计算机设备及存储介质
CN116471125B (zh) * 2023-06-19 2023-09-08 杭州美创科技股份有限公司 加密数据库流量审计方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN114513326B (zh) 2024-06-21

Similar Documents

Publication Publication Date Title
EP2705642B1 (en) System and method for providing access credentials
CN109413060B (zh) 报文处理方法、装置、设备及存储介质
US20150188779A1 (en) Split-application infrastructure
CN109525604B (zh) 一种账号绑定的方法及相关设备
JP5010608B2 (ja) リモートリソースとの安全な対話型接続の生成
JP6144783B2 (ja) 情報中心のネットワークにおけるトラストアンカーを用いたプロトコルのルーティングに基づく名前/プレフィックスの増加
CN102047262B (zh) 用于分布式安全内容管理系统的认证
US20140181842A1 (en) Secure mobile app connection bus
TW200307439A (en) Mechanism for supporting wired and wireless methods for client and server side authentication
CN114513326B (zh) 基于动态代理实现通信审计的方法及系统
CN114826754B (zh) 一种不同网络间的通信方法及系统、存储介质、电子装置
CN106559405B (zh) 一种Portal认证方法和设备
JP2007334411A (ja) 制御プログラムおよび通信システム
CN110830516B (zh) 一种网络访问方法、装置、网络控制设备及存储介质
CN114995214A (zh) 远程访问应用的方法、系统、装置、设备及存储介质
US8386783B2 (en) Communication apparatus and communication method
CN110519239B (zh) 一种协议配置方法、装置、设备及可读存储介质
CN113872933B (zh) 隐藏源站的方法、系统、装置、设备及存储介质
JP2011035535A (ja) 通信遮断装置、サーバ装置、方法およびプログラム
JP5391551B2 (ja) 認証システム、サーバ装置および認証方法
WO2013189398A2 (zh) 应用数据推送方法、装置及系统
CN115604862B (zh) 视频流传输方法及系统
JP4619059B2 (ja) 端末装置、ファイアウォール装置、及びファイアウォール装置制御のための方法、並びにプログラム
CN111245601B (zh) 一种通讯协商方法及装置
TWI692227B (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
CB02 Change of applicant information

Country or region after: China

Address after: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Applicant after: QAX Technology Group Inc.

Applicant after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Address before: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Applicant before: QAX Technology Group Inc.

Country or region before: China

Applicant before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

CB02 Change of applicant information
GR01 Patent grant