CN109413060B - 报文处理方法、装置、设备及存储介质 - Google Patents
报文处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109413060B CN109413060B CN201811226102.XA CN201811226102A CN109413060B CN 109413060 B CN109413060 B CN 109413060B CN 201811226102 A CN201811226102 A CN 201811226102A CN 109413060 B CN109413060 B CN 109413060B
- Authority
- CN
- China
- Prior art keywords
- https
- message
- server
- plaintext
- session key
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种报文处理方法、装置、设备及存储介质,所述方法包括:当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥;通过第一对话密钥解密https报文,获得第一https明文;对第一https明文进行安全检测;若第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至服务器。本发明通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种报文处理方法、装置、设备及存储介质。
背景技术
目前,目前很多web服务器使用https对外提供服务,服务器与客户端之间的通信报文采用ssl(Secure Sockets Layer,安全套接层)加密。然而,传统的报文处理方法不能解密客户端与服务器之间的https报文,无法检测客户端与服务器之间https报文的安全性,因而对服务器的防护能力有限。
发明内容
本发明提供一种报文处理方法、装置、设备及存储介质,旨在提高对服务器的防护能力。
为实现上述目的,本发明提供一种报文处理方法,所述方法应用于报文处理设备,所述方法包括:
当接收到第一传输控制协议TCP连接传输的https报文时,则按安全套接层ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
使用所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
对所述第一https明文进行安全检测;
若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。
可选地,所述对话密钥还包括第二对话密钥,所述当接收到第一传输控制协议TCP连接传输的https报文时,则按ssl握手过程建立对话密钥的步骤之前还包括:
与客户端建立第一TCP连接,接收所述客户端发送的请求包;
根据所述客户端发送的请求包获取待访问的服务器;
与所述服务器建立第二TCP连接。
可选地,所述若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器的步骤包括:
若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型;
若所述服务器支持https报文,则通过所述第二对话密钥将所述第一https明文加密,并由预先建立的第二TCP连接将加密后的所述第一https明文传输至所述服务器;
若所述服务器不支持https报文,则由所述第二TCP连接将所述第一https明文传输至所述服务器。
可选地,所述按ssl握手过程建立对话密钥的步骤包括:
接收所述客户端发送的协议版本号、第一随机数以及所述客户端支持的加密方法;
确认所述客户端和所述服务器使用的第一加密方法,并将数字证书和第二随机数返回至所述客户端,由所述客户端确认所述数字证书并根据数字证书中的公钥生成第三随机数;
接收所述客户端加密后的第三随机数,并使用私钥解密所述第三随机数;
根据所述第一加密算法,基于所述第一随机数、第二随机数以及第三随机数,生成第一对话密钥。
可选地,所述按ssl握手过程建立对话密钥的步骤还包括:
向所述服务器发送协议版本号、第一随机数以及支持的加密方法,由所述服务器选择所述客户端和所述服务器都能使用的第二加密方法;
接收所述服务器发送的数字证书和第二随机数,
确认所述数字证书有效,生成第三随机数,根据所述数字证书中的公钥加密所述第三随机数,并将所述加密后的所述第三随机数发送至所述服务器;
根据所述第二加密方法,基于所述第一随机数、第二随机数以及第三随机数,生成第二对话密钥。
可选地,所述对所述第一https明文进行安全检测的步骤包括:
将所述第一https明文放入预先设置的检测框架,由所述检测框架对所述第一https明文按预设规则进行检测。
可选地,所述方法还包括:
当接收到所述第二TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第二对话密钥;
通过所述第二对话密钥解密所述https报文,获得所述https报文的第二https明文;
对所述第二https明文进行安全检测;
若所述第二https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。
此外,为实现上述目的,本发明还提供一种报文处理装置,所述装置包括:
接收模块,用于当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
解密模块,用于通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
安全检测模块,用于对所述第一https明文进行安全检测;
传输模块,用于若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。
此外,为实现上述目的,本发明还提供一种报文处理设备,所述报文处理模块包括存储器以及存储在所述存储器中的报文处理程序,所述报文处理程序被所述处理器运行时,实现如上所述的报文处理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有报文处理程序,所述报文处理程序被所述处理器运行时,实现如上所述的报文处理方法的步骤。
本发明公开了一种报文处理方法、装置、设备及存储介质,所述方法包括:当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;对所述第一https明文进行安全检测;若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。由此,通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
附图说明
图1是本发明实施例方案涉及的报文处理设备的结构示意图
图2是本发明报文处理方法第一实施例的流程示意图;
图3是本发明报文处理方法第二实施例的流程示意图;
图4是本发明报文处理方法一实施例的场景示意图;
图5是本发明报文处理方法第三实施例的流程示意图;
图6是本发明报文处理方法另一实施例的场景示意图;
图7是本发明报文装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例主要涉及的报文处理设备是指能够实现网络连接的网络连接设备,所述报文处理设备可以是路由器、防火墙或者单独的报文处理设备。
参照图1,图1为本发明实施例方案中涉及的报文处理设备的硬件结构示意图。本发明实施例中,报文处理设备可以包括处理器1001(例如中央处理器Central ProcessingUnit、CPU),通信总线1002,输入端口1003,输出端口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;输入端口1003用于数据输入;输出端口1004用于数据输出,存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块、应用程序模块以及报文处理程序。在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的报文处理程序,并执行本发明实施例提供的报文处理方法。
本实施例通过上述方案,所述报文处理设备通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
本发明实施例提供了一种报文处理方法。
参照图2,图2是本发明报文处理方法的第一实施例的流程示意图。
本实施例中,所述报文处理方法应用于报文处理设备,所述报文处理设备分别与客户端和服务器通过传输控制协议TCP连接网络通讯,所述方法包括:
步骤S101,当接收到第一TCP连接传输的https报文时,则按安全套接层ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
一般的,传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议。在因特网协议族中,传输层位于互联网之间互联协议(Internet Protocol,IP)层之上,应用层之下。TCP是传输层中一种重要的协议,为位于不同主机上的应用提供面向连接的、可靠的、基于字节流的通信机制。安全套接字层的超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer,https),是以安全为目标的超文本传输协议(Hyper Text Transfer Protocol,http)通道。然而,传统的报文处理方法不能解密客户端与服务器之间的https报文,无法检测客户端与服务器之间https报文的安全性,因而对服务器的防护能力有限,本发明实施例提供一种报文处理方法,旨在提高对服务器的防护能力。
本实施例中,所述报文处理设备使用透明代理,所述按安全套接层ssl握手过程建立对话密钥的过程包括:接收所述客户端发送的协议版本号、第一随机数以及所述客户端支持的加密方法;确认所述客户端和所述服务器使用的第一加密方法,并将数字证书和第二随机数返回至所述客户端,由所述客户端确认所述数字证书并根据数字证书中的公钥生成第三随机数;接收所述客户端加密后的第三随机数,并使用私钥解密所述第三随机数;根据所述第一加密算法,基于所述第一随机数、第二随机数以及第三随机数,生成第一对话密钥。其中,所述第一对话密钥用于加密和/或解密所述https报文处理设备与所述客户端之间的https报文。
本实施例中,所述按ssl握手过程建立对话密钥的过程还包括:向所述服务器发送协议版本号、第一随机数以及支持的加密方法,由所述服务器选择所述客户端和所述服务器都能使用的第二加密方法;接收所述服务器发送的数字证书和第二随机数,确认所述数字证书有效,生成第三随机数,根据所述数字证书中的公钥加密所述第三随机数,并将所述加密后的所述第三随机数发送至所述服务器;根据所述第二加密方法,基于所述第一随机数、第二随机数以及第三随机数,生成第二对话密钥。生成第二对话密钥。所述第二对话密钥用于加密和/或解密所述https报文处理设备与所述服务器之间的https报文。
由此,所述报文处理设备与所述客户端存在一组第一对话密钥,所述报文处理设备与所述服务器存在一组第二对话密钥,所述客户端和所述服务器不能直接通迅,本实施例中,所述客户端与所述服务器通过所述报文处理设备进行通讯,其中,所述报文处理设备使用TCP透明代理,以简化设置,提高安全性。
进一步地,所述当接收到第一传输控制协议TCP连接传输的https报文时,则按ssl握手过程建立对话密钥的步骤之前还包括:
检测通过所述第一TCP连接传输的报文是否为https报文。
具体地,https是以安全为目标的http通道,即为http的安全版,是在http下加入ssl层,所述ssl层是为网络通信提供安全性及数据完整性的一种安全协议。位于传输层之上,应用层之下,对传输层的负载(应用层产生的数据)进行加密https的安全基础是ssl,因此需要与ssl联合使用。https是一个URI scheme(抽象标识符体系),句法类同http体系。可用于安全的http数据传输。https的url表明它使用了http,但https存在不同于http的默认端口及一个加密/身份验证层(在https与TCP之间)。https内置于其浏览器中,提供了身份验证与加密通讯方法。
本实施例中,可通过Fiddler、wireshark等应用程序来判断报文是否为https报文,例如,若使用wireshark程序来判断,首先确定wireshark的位置并设置不看接口,一般是连接到Internet网络接口,用于捕获报文;然后,配置捕获过滤器,设置需要捕获的报文类型,并使用配置的不会过滤器进行过滤报文;通过所述wireshark捕获过滤器将https报文进行标示,标示出来的报文即为https报文,未标示的则是非https报文。
进一步地,若所述报文是https报文,则执行步骤:当接收到第一传输控制协议TCP连接传输的https报文时,则按ssl握手过程建立对话密钥;反之若所述报文不是https报文,则直接对所述报文进行安全检测,并在检测确认安全后通过预先建立的第二TCP连接传输至服务器。
由此,通过建立所述第一对话密钥和所述第二对话密钥,以对所述https报文进行加密或加密。
步骤S102:通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
本实施例中,由于所述报文处理设备无法直接读取所述https报文的内容,故通过所述第一对话密钥解密所述https报文,进而获得所述https报文对应的第一https明文。以供所述报文处理设备对所述https报文对应的第一https明文进行安全检测。
步骤S103:对所述第一https明文进行安全检测;
本实施例中,将所述第一https明文放入预先设置的检测框架,由所述检测框架对所述第一https明文按预设规则进行检测。具体地,所述安全检测框架需要预先设置,所述安全检测框架可以识别所述第一https明文,并根据所述第一https明文的内容预设规则判断所述第一https明文是否安全。其中,所述预设规则可以是:对于网页链接,则查看所述网页链接中是否包含有预先设置的url敏感词,若存在预先设置的url敏感词,则判定所述第一https明文不安全,不通过所述安全检测;反之,若所述网页链接中不存在预先设置的url敏感词,则判定所述第一https明文是安全的,通过所述安全检测。
若所述第一https明文未通过安全检测,则将所述第一https明文对应的https报文丢弃或删除。
由此,对所述第一https明文进行安全检测,保障了所述服务器接收到的报文的安全性。
步骤S104,若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。
本实施例中,若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型;具体地,可通过PHP探针来探测所述服务器是否支持https。PHP探针可用于是探测空间、服务器运行状况和PHP信息,探针可以实时查看服务器硬盘资源、内存占用、网卡流量、系统负载、服务器时间等信息。根据所述PHP探针探测到的信息分析所述服务器是否支持https连接。若所述服务器支持https连接,则说明所述服务器支持https报文,则由所述第二对话密钥将所述第一https明文加密,并通过预先建立的第二TCP连接将加密后的所述第一https明文传输至所述服务器。可以理解地,使用所述第二对话密钥将所述第一https明文加密,是为了所述服务器能够读取所述https报文的内容。
进一步地,若所述服务器不支持https连接,则说明所述服务器不支持https报文,则通过所述第二TCP连接将所述第一https明文传输至所述服务器,也即单边加密,不对所述报文处理设备与所述服务器之间的报文进行加密,以供所述服务器读取所述报文的内容,防止了无法获得https报文内容的事件的发生。
进一步地,所述通过预先建立的第二TCP连接将相应的报文传输传输至所述服务器的步骤之前还包括:通过TCP透明代理修改所述报文的序列号和确认号。
本实施例通过上述技术方案,当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;使用所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;对所述第一https明文进行安全检测;若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。本发明通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
进一步地,参照图3,基于上述第一实施例,提出了本发明报文处理方法的第二实施例,与前述实施例的区别在于,所述对话密钥还包括第二对话密钥,所述当接收到第一传输控制协议TCP连接传输的https报文时,则按ssl握手过程建立对话密钥的步骤之前还包括:
步骤S201,与客户端建立第一TCP连接,接收所述客户端发送的请求包;
具体地,参照图4,图4是本发明一实施例的场景示意图。
本实施例中,所述报文处理设备使用TCP透明代理,所述报文处理设备首先模拟服务器,与客户端建立第一TCP连接。具体地,所述过程包括步骤a:所述报文处理设备接收客户端发送的第一次握手(Synchronize Sequence Numbers,同步序列编号)1syn包,所述syn包包括的第一初始序列号和第一确认号,且源地址和源端口为所述客户端的IP和端口号,目的地址和目的端口为所述服务器的IP和端口号,根据所述第一次握手syn包模拟服务器向所述客户端回复第二次握手2syn ack(acknowledgement,确认字符)包,所述2syn ack包包括的第二初始序列号和第二确认号,且源地址和源端口为所述目的服务器的IP和端口号,目的地址和目的端口为所述客户端的IP和端口号;步骤b:所述报文处理设备接收所述客户端基于所述第二次握手2syn ack包回复的第三次握手3ack包,由此,成功建立了所述报文处理设备与所述客户端之间的第一TCP连接。并根据所述第一TCP连接接收所述客户端发送的请求包;
步骤S202,根据所述客户端发送的请求包获取待访问的服务器;
具体地,通过所述syn包或所述syn ack包获得待访问的服务器。
步骤S203,与所述服务器建立第二TCP连接;
继续参照图4,步骤c:所述报文处理设备接收从客户端发送的请求包4request,并模拟客户端向服务器发送第一次握手5syn包;步骤d:接收所述服务器基于所述第一次握手5syn包返回的第二次握手6syn ack包,并根据所述第二次握手6syn ack包向服务器发送第三次握手7ack包,由此,建立了所述报文处理设备与所述服务器之间的第二TCP连接。
当所述第一TCP连接以及第二TCP连接建立后,则所述客户端和服务器可通过所述报文处理设备进行数据传输。具体的,步骤e:所述报文处理设备修改所述客户端发送的请求4request包中的第一初始序列号和第一确认号,,将修改后的第一初始序列号和第一确认号后的8request包发送给服务器;步骤f:所述报文处理设备接收所述服务器返货的响应9response包,修改序列号的确认号后的响应10response包发送给客户端;步骤g:所述报文处理设备接收所述客户端返回的11ack包,将所述11ack包修改序列号和确认号的成为12ack包,将所述12ack包发送至所述服务器。
本实施例通过上述方案,与客户端建立第一TCP连接,接收所述客户端发送的请求包;根据所述客户端发送的请求包获取待访问的服务器;与所述服务器建立第二TCP连接。由此,提高了对服务器的防护能力。
进一步地,参照图5,基于上述第一、二实施例,提出了本发明报文处理方法的第三实施例,与前述实施例的区别在于,所述方法还包括:
步骤S301,当接收到所述第二TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第二对话密钥;
本实施例中所述第二TCP连接传输从服务器发送至报文处理设备的报文。所述按ssl握手过程建立对话密钥步骤包括:接收所述客户端发送的协议版本号、第一随机数以及所述客户端支持的加密方法;确认所述客户端和所述服务器使用的第一加密方法,并将数字证书和第二随机数返回至所述客户端,由所述客户端确认所述数字证书并根据数字证书中的公钥生成第三随机数;接收所述客户端加密后的第三随机数,并使用私钥解密所述第三随机数;根据所述第一加密算法,基于所述第一随机数、第二随机数以及第三随机数,生成第一对话密钥。其中,所述第一对话密钥用于加密和/或解密所述https报文处理设备与所述客户端之间的https报文。
本实施例中,所述按ssl握手过程建立对话密钥的步骤还包括:向所述服务器发送协议版本号、第一随机数以及支持的加密方法,由所述服务器选择所述客户端和所述服务器都能使用的第二加密方法;接收所述服务器发送的数字证书和第二随机数,确认所述数字证书有效,生成第三随机数,根据所述数字证书中的公钥加密所述第三随机数,并将所述加密后的所述第三随机数发送至所述服务器;根据所述第二加密方法,基于所述第一随机数、第二随机数以及第三随机数,生成第二对话密钥。生成第二对话密钥。所述第二对话密钥用于加密和/或解密所述https报文处理设备与所述服务器之间的https报文。
由此,所述报文处理设备与所述客户端存在一组第一对话密钥,所述报文处理设备与所述服务器存在一组第二对话密钥,所述客户端和所述服务器不能直接通迅,本实施例中,所述客户端与所述服务器通过所述报文处理设备进行通讯,其中,所述报文处理设备使用TCP透明代理,以简化设置,提高安全。
步骤S302,通过所述第二对话密钥解密所述https报文,获得所述https报文的第二https明文;
本实施例中,由于所述报文处理设备无法直接读取所述https报文的内容,故通过所述第二对话密钥解密所述https报文,进而获得所述https报文对应的第二https明文。以供所述报文处理设备对所述https报文对应的第二https明文进行安全检测。
步骤S303,对所述第二https明文进行安全检测;
本实施例中,所述安全检测包括漏洞检测。具体地,将所述第二https明文放入漏洞检测框架进行漏洞检测,由所述漏洞检测框架对所述第二https明文进行扫描。
步骤S304,若所述第二https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。
本实施例中,所述报文处理设备通过TCP透明代理修改所述https报文的序列号和确认号后发送至所述客户端。例如,所述服务器到所述报文处理设备的第一序列号为6001,确认号为5001,则述https报文经过所述报文处理设备时,所述TCP透明代理将所述第一序列号修改为2001,将所述确认号修改为1101后,再将修改后的所述第一序列号2001和修改后的所述确认号1101发生给客户端。
若所述第二https明文未通过安全检测,则对向所述服务器发送提示信息以供所述服务器进行安全扫描并修复漏洞,由此,所述服务器可以及时发现并修补安全漏洞,提升了服务器的主动防御能力。具体地,参照图6,图6是本发明另一实施例的场景示意图。
对于https报文,若所述https报文需要由客户端发送至所述服务器,则首先建立第一TCP连接和第二TCP连接,所述https报文由所述报文处理设备进行TCP透明代理;由所述第一对话密钥对所述https报文进行解密,将解密后的https报文对应的明文进行攻击检测,检测通过后再由所述第二对话密钥对所述https报文的明文进行加密,将加密后的的https报文通过所述TCP透明代理修改序列号和确认号后发送至所述服务器。
若所述https报文需要由服务器发送至所述客户端,则首先建立第一TCP连接和第二TCP连接,所述https报文由所述报文处理设备进行TCP透明代理;由第二对话密钥对所述https报文进行解密,将解密后的https报文对应的明文进行漏洞检测,检测通过后再由所述第二对话密钥对所述https报文的明文进行加密,将解密后的https报文通过所述TCP透明代理修改序列号和确认号后发送至所述服务器。
本实施例通过上述方案,在所述报文处理设备上运行所述报文处理方法时,可能会在https的标准端口443上运行非https报文(如ftp报文,http报文),这样将导致非https报文,误入ssl代理流程,导致业务中断。而且会消耗更多的CPU和内存资源。由此,本实施例提出一种补救措施:若通过所述第一TCP连接或所述第二TCP连接传输的报文不是https报文,则将通过所述第一TCP连接或所述第二TCP连接传输的报文由所述TCP透明代理修改序列号和确认号后发送至对于的服务器或客户端。
具体地,再参照图6,对于非https报文,若所述非https报文由所述客户端发送至所述服务器,则首先建立第一TCP连接和第二TCP连接,非https报文由所述报文处理设备进行TCP透明代理;将所述非https报文放入攻击检测框架进行攻击检测,检测通过后,由所述由所述TCP透明代理修改序列号和确认号后发送至所述服务器。若所述非https报文由所述服务器发送至所述客户端,则首先建立第一TCP连接和第二TCP连接,所述非https报文由所述报文处理设备进行TCP透明代理;将所述非https报文放入漏洞检测框架进行攻击检测,检测通过后,则将所述非https报文由所述TCP透明代理修改序列号和确认号后发送至所述客户端。由此,若通过所述第一TCP连接或所述第二TCP连接传输的报文不是https报文,则将通过所述第一TCP连接或所述第二TCP连接传输的报文由所述TCP透明代理修改序列号和确认号后发送至对应的服务器或客户端,节约了CPU和内存资源。
本实施例通过上述方案,当接收到所述第二TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第二对话密钥;通过所述第二对话密钥解密所述https报文,获得所述https报文的第二https明文;对所述第二https明文进行安全检测;若所述第二https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。由此,通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
此外,本发明实施例还提供一种报文处理装置。
参照图7,图7为本发明报文处理装置第一实施例的功能模块示意图。
本发明报文处理装置为虚拟装置,存储于图1所示的数据库迁移设备的存储器1005中,用于当接收到第一传输控制协议TCP连接传输的https报文时,则按安全套接层ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;用于使用所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;用于对所述第一https明文进行安全检测;用于若所述第一https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。
具体地,在本实施例中,所述报文处理装置包括:
接收模块10,用于当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
解密模块20,用于通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
安全检测模块30,用于对所述第一https明文进行安全检测;
传输模块40,用于若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。
进一步地,所述接收模块还用于:
与客户端建立第一TCP连接,接收所述客户端发送的请求包;
根据所述客户端发送的请求包获取待访问的服务器;
与所述服务器建立第二TCP连接。
进一步地,所述传输模块还用于:
若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型;
若所述服务器支持https报文,则通过所述第二对话密钥将所述第一https明文加密,并由预先建立的第二TCP连接将加密后的所述第一https明文传输至所述服务器;
若所述服务器不支持https报文,则由所述第二TCP连接将所述第一https明文传输至所述服务器。进一步地,所述接收模块还用于:
接收所述客户端发送的协议版本号、第一随机数以及所述客户端支持的加密方法;
确认所述客户端和所述服务器使用的第一加密方法,并将数字证书和第二随机数返回至所述客户端,由所述客户端确认所述数字证书并根据数字证书中的公钥生成第三随机数;
接收所述客户端加密后的第三随机数,并使用私钥解密所述第三随机数;
根据所述第一加密算法,基于所述第一随机数、第二随机数以及第三随机数,生成第一对话密钥。
进一步地,所述接收模块还用于:
向所述服务器发送协议版本号、第一随机数以及支持的加密方法,由所述服务器选择所述客户端和所述服务器都能使用的第二加密方法;
接收所述服务器发送的数字证书和第二随机数,
确认所述数字证书有效,生成第三随机数,根据所述数字证书中的公钥加密所述第三随机数,并将所述加密后的所述第三随机数发送至服务器;
根据所述第二加密方法,基于所述第一随机数、第二随机数以及第三随机数,生成第二对话密钥。
进一步地,所述安全检测模块还用于:
将所述第一https明文放入预先设置的检测框架,由所述检测框架对所述第一https明文按预设规则进行检测。
进一步地,所述安全检测模块还用于:
当接收到所述第二TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第二对话密钥;
通过所述第二对话密钥解密所述https报文,获得所述https报文的第二https明文;
对所述第二https明文进行安全检测;
若所述第二https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。
本实施例公开了一种报文处理装置,所述装置包括:接收模块,用于当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;解密模块,用于通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;安全检测模块,用于对所述第一https明文进行安全检测;判断模块,用于若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。由此,通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有报文处理程序,所述报文处理程序被处理器运行时实现如上所述的报文处理方法的步骤。
本发明计算机可读存储介质具体实施方式与上述报文处理方法各实施例基本相同,在此不再赘述。
本发明公开了一种报文处理方法、装置、设备及存储介质,当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;使用所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;对所述第一https明文进行安全检测;若所述第一https明文通过了安全检测,若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至所述服务器。本发明通过TCP透明代理和ssl流程处理客户端与服务器之间的https报文,确认所述https报文安全后再发送至服务器,提高了对服务器的防护能力。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
Claims (9)
1.一种报文处理方法,其特征在于,所述方法应用于报文处理设备,所述方法包括:
当接收到第一传输控制协议TCP连接传输的https报文时,则按安全套接层ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
将所述第一https明文放入预先设置的检测框架,由所述检测框架对所述第一https明文按预设规则进行检测,其中,所述预设规则包括查看所述第一https明文中的网页链接是否包含有预先设置的url敏感词;
若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至服务器,包括:
若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型,其中,所述报文类型是通过PHP探针探测的方式来确定的;
若所述服务器不支持https报文,则由第二TCP连接将所述第一https明文传输至所述服务器。
2.根据权利要求1所述的方法,其特征在于,所述对话密钥还包括第二对话密钥,所述当接收到第一传输控制协议TCP连接传输的https报文时,则按ssl握手过程建立对话密钥的步骤之前还包括:
与客户端建立第一TCP连接,接收所述客户端发送的请求包;
根据所述客户端发送的请求包获取待访问的服务器;
与所述服务器建立第二TCP连接。
3.根据权利要求2所述的方法,其特征在于,所述若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型的步骤之后,包括:
若所述服务器支持https报文,则通过所述第二对话密钥将所述第一https明文加密,并由预先建立的第二TCP连接将加密后的所述第一https明文传输至所述服务器。
4.根据权利要求2所述的方法,其特征在于,所述按ssl握手过程建立对话密钥的步骤包括:
接收所述客户端发送的协议版本号、第一随机数以及所述客户端支持的加密方法;
确认所述客户端和所述服务器使用的第一加密方法,并将数字证书和第二随机数返回至所述客户端,由所述客户端确认所述数字证书并根据数字证书中的公钥生成第三随机数;
接收所述客户端加密后的第三随机数,并使用私钥解密所述第三随机数;
根据所述第一加密算法,基于所述第一随机数、第二随机数以及第三随机数,生成第一对话密钥。
5.根据权利要求2所述的方法,其特征在于,所述按ssl握手过程建立对话密钥的步骤还包括:
向所述服务器发送协议版本号、第一随机数以及支持的加密方法,由所述服务器选择所述客户端和所述服务器都能使用的第二加密方法;
接收所述服务器发送的数字证书和第二随机数,
确认所述数字证书有效,生成第三随机数,根据所述数字证书中的公钥加密所述第三随机数,并将加密后的所述第三随机数发送至所述服务器;
根据所述第二加密方法,基于所述第一随机数、第二随机数以及第三随机数,生成第二对话密钥。
6.根据权利要求2-5中任一项所述的方法,其特征在于,所述方法还包括:
当接收到所述第二TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第二对话密钥;
通过所述第二对话密钥解密所述https报文,获得所述https报文的第二https明文;
对所述第二https明文进行安全检测;
若所述第二https明文通过了安全检测,则由预先建立的第一TCP连接将相应的报文传输至所述客户端。
7.一种报文处理装置,其特征在于,所述装置包括:
接收模块,用于当接收到第一TCP连接传输的https报文时,则按ssl握手过程建立对话密钥,所述对话密钥包括第一对话密钥;
解密模块,用于通过所述第一对话密钥解密所述https报文,获得所述https报文的第一https明文;
安全检测模块,用于将所述第一https明文放入预先设置的检测框架,由所述检测框架对所述第一https明文按预设规则进行检测,其中,所述预设规则包括查看所述第一https明文中的网页链接是否包含有预先设置的url敏感词;
传输模块,用于若所述第一https明文通过了安全检测,则由预先建立的第二TCP连接将相应的报文传输至服务器;
所述传输模块,还用于若所述第一https明文通过了安全检测,则进一步获取所述https报文对应服务器支持的报文类型,其中,所述报文类型是通过PHP探针探测的方式来确定的;
若所述服务器不支持https报文,则由第二TCP连接将所述第一https明文传输至所述服务器。
8.一种报文处理设备,其特征在于,所述报文处理设备包括存储器以及存储在所述存储器中的报文处理程序,所述报文处理程序被处理器运行时,实现如权利要求1-6中任一项所述的报文处理方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有报文处理程序,所述报文处理程序被处理器运行时,实现如权利要求1-6中任一项所述的报文处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811226102.XA CN109413060B (zh) | 2018-10-19 | 2018-10-19 | 报文处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811226102.XA CN109413060B (zh) | 2018-10-19 | 2018-10-19 | 报文处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109413060A CN109413060A (zh) | 2019-03-01 |
CN109413060B true CN109413060B (zh) | 2021-10-19 |
Family
ID=65468129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811226102.XA Active CN109413060B (zh) | 2018-10-19 | 2018-10-19 | 报文处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109413060B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110944001A (zh) * | 2019-12-06 | 2020-03-31 | 浙江军盾信息科技有限公司 | 一种服务器安全防护方法、装置及其相关设备 |
CN112995119A (zh) * | 2019-12-18 | 2021-06-18 | 北京国双科技有限公司 | 一种数据监测方法及装置 |
CN112995120A (zh) * | 2019-12-18 | 2021-06-18 | 北京国双科技有限公司 | 一种数据监测方法及装置 |
CN111464550B (zh) * | 2020-04-10 | 2021-12-28 | 南京铱迅信息技术股份有限公司 | 一种用于报文处理设备的https透明防护方法 |
CN111541682B (zh) * | 2020-04-17 | 2022-08-12 | 北京天融信网络安全技术有限公司 | 一种数据安全检测方法、装置、存储介质和电子设备 |
CN111628976B (zh) * | 2020-05-15 | 2022-06-07 | 绿盟科技集团股份有限公司 | 一种报文处理方法、装置、设备及介质 |
CN111756751B (zh) * | 2020-06-28 | 2022-10-21 | 杭州迪普科技股份有限公司 | 报文传输方法、装置及电子设备 |
CN112788051A (zh) * | 2021-01-25 | 2021-05-11 | 高新兴讯美科技股份有限公司 | 一种https动态加密的传输方法 |
CN113093701A (zh) * | 2021-03-31 | 2021-07-09 | 重庆长安汽车股份有限公司 | 一种车辆远程控制方法及系统 |
CN113660328B (zh) * | 2021-08-13 | 2024-02-06 | 京东科技信息技术有限公司 | 通信连接的建立方法及装置、存储介质及电子设备 |
CN113810396A (zh) * | 2021-09-07 | 2021-12-17 | 北京明朝万达科技股份有限公司 | 一种数据管控方法、装置、电子设备及存储介质 |
CN115118713A (zh) * | 2022-06-20 | 2022-09-27 | 山石网科通信技术股份有限公司 | 数据处理方法、装置及电子设备 |
CN118200621A (zh) * | 2024-05-16 | 2024-06-14 | 深圳奥联信息安全技术有限公司 | 一种基于ipc监控视频的透明代理加密存储系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141243A (zh) * | 2006-09-08 | 2008-03-12 | 飞塔信息科技(北京)有限公司 | 一种对通信数据进行安全检查和内容过滤的装置和方法 |
CN101695038A (zh) * | 2009-10-27 | 2010-04-14 | 联想网御科技(北京)有限公司 | 检测ssl加密数据安全性的方法及装置 |
CN102118386B (zh) * | 2009-12-25 | 2013-11-27 | 佳能It解决方案株式会社 | 中继处理装置、中继处理方法 |
CN103166996B (zh) * | 2011-12-14 | 2016-06-08 | 华为技术有限公司 | Http连接和https连接自适应方法、装置及系统 |
CN106464603B (zh) * | 2015-05-07 | 2020-07-10 | 深圳市环讯通科技有限公司 | 一种传输请求的方法及客户端 |
CN106302391B (zh) * | 2016-07-27 | 2019-09-13 | 上海华为技术有限公司 | 一种加密数据传输方法和代理服务器 |
-
2018
- 2018-10-19 CN CN201811226102.XA patent/CN109413060B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109413060A (zh) | 2019-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109413060B (zh) | 报文处理方法、装置、设备及存储介质 | |
US8179818B2 (en) | Proxy terminal, server apparatus, proxy terminal communication path setting method, and server apparatus communication path setting method | |
CN109309685B (zh) | 信息传输方法和装置 | |
CN104954386B (zh) | 一种网络反劫持方法及装置 | |
CN110198297B (zh) | 流量数据监控方法、装置、电子设备及计算机可读介质 | |
CN104135494A (zh) | 一种基于可信终端的同账户非可信终端登录方法及系统 | |
US20130103944A1 (en) | Hypertext Link Verification In Encrypted E-Mail For Mobile Devices | |
CN104243419A (zh) | 基于安全外壳协议的数据处理方法、装置及系统 | |
US8386783B2 (en) | Communication apparatus and communication method | |
CN107547559A (zh) | 一种报文处理方法及装置 | |
CN112954683A (zh) | 域名解析方法、装置、电子设备和存储介质 | |
CN110086806B (zh) | 一种厂站设备系统漏洞的扫描系统 | |
CN112839062B (zh) | 夹杂鉴权信号的端口隐藏方法和装置、设备 | |
CN108712388B (zh) | 一种基于http的数据安全传输方法与装置 | |
CN114513326A (zh) | 基于动态代理实现通信审计的方法及系统 | |
CN114172645A (zh) | 通信旁路审计方法、装置、电子设备及存储介质 | |
CN110892695A (zh) | 在建立连接期间检查受密码保护的通信连接的连接参数的方法、设备和计算机程序产品 | |
CA2793422C (en) | Hypertext link verification in encrypted e-mail for mobile devices | |
CN101938428B (zh) | 一种报文的传输方法和设备 | |
KR101971995B1 (ko) | 보안을 위한 보안 소켓 계층 복호화 방법 | |
Fowdur et al. | Implementation of SSL/TLS-based security mechanisms in e-commerce and e-mail applications using Java | |
CN110995730B (zh) | 数据传输方法、装置、代理服务器和代理服务器集群 | |
US10079857B2 (en) | Method of slowing down a communication in a network | |
CN113726757B (zh) | Https协议客户端的验证方法及装置 | |
CN114244569B (zh) | Ssl vpn远程访问方法、系统和计算机设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |