CN108605039A - 在spdy连接上检测恶意软件 - Google Patents
在spdy连接上检测恶意软件 Download PDFInfo
- Publication number
- CN108605039A CN108605039A CN201680080492.7A CN201680080492A CN108605039A CN 108605039 A CN108605039 A CN 108605039A CN 201680080492 A CN201680080492 A CN 201680080492A CN 108605039 A CN108605039 A CN 108605039A
- Authority
- CN
- China
- Prior art keywords
- ziwen
- stream
- data
- malware
- data packet
- 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
Links
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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/564—Static detection by virus signature recognition
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- 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
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/321—Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在示例实施方式中,提供了一种由处理器执行的方法。通过使用SPDY协议的单传输控制协议(TCP)连接接收多路复用数据流。所述多路复用数据流包含与多个不同数据流相关联的数据包。生成多个子文本。该子文本中的每个子文本与所述多个不同数据流中的不同数据流相关联。来自所述多路复用数据流的数据包被解复用为多个子文本中的相应子文本。在所述多个子文本中的相应子文本中检查所述多个不同数据流,以检测恶意软件。
Description
背景技术
互联网流量的增长导致了名为SPDY的修改的超文本传输协议(HTTP)的发展。SPDY协议提供对允许将多个并发数据流多路复用到端点和服务器之间的单传输控制协议(TCP)连接中的HTTP的改进。因此,SPDY协议允许多个数据流相互复用或交错并异步发送,而不是使用由先前的HTTP使用的顺序过程(其中,数据流依次发送)。
附图说明
图1是本公开的示例系统的框图;
图2是本公开的装置的示例;
图3是在SPDY连接上检测恶意软件的示例方法的流程图;
图4是在SPDY连接上检测恶意软件的示例方法的另一个流程图;以及
图5是本公开的装置的另一个示例。
具体实施方式
本公开的特定实施方式用于检测SPDY连接上的恶意软件的系统和方法。如上所述,SPDY协议是对允许多个并发数据流被多路复用到单TCP连接中的HTTP的改进。在传统的HTTP协议中,数据流以顺序方式发送。因此,统一威胁管理(UTM)设备可以一次分析一个数据包和整个文件。
然而,对于SPDY协议,由于数据包被复用为单个数据流并且具有“优先级”支持,所以服务器可以交错与不同流相关联的数据包。因此,UTM设备可能无法通过按顺序处理数据包的方式来针对恶意软件分析它们。因此,通过按顺序处理数据包针对恶意软件的检查的传统方法可能无法检测到恶意软件,并且随后恶意软件内容可能被传递给客户端。
本公开的特定示例提供了一种改进的UTM设备,其针对复用为使用SPDY协议的单个数据流的每个数据流生成子文本。因此,每个数据包可以被分析以检测恶意软件,并且在组合在相应的子文本中之后,整个文档可以被分析以检测恶意软件。
图1示出了本公开的示例系统100。系统100可以包括UTM设备104、服务器106和客户端108。虽然图1中示出了单个UTM设备104、单个服务器106和单个客户端108,但是应该注意,可以部署任何数量的UTM设备104、服务器106和客户端108。
在一个示例中,UTM设备104和服务器106可以位于互联网协议(IP)网络102内。IP网络102可以是任何类型的包网络(例如,互联网)。应当注意,为了便于说明,已经简化了IP网络102,并且IP网络102可以包括未示出的其他网络元件,例如网关、路由器、交换机、接入网络等。
在一个示例中,客户端108可以是任何类型的端点设备(例如,智能电话、膝上型计算机、台式计算机、平板电脑等)。客户端108可以通过有线或无线连接与服务器106建立TCP连接以请求数据。TCP连接可以是使用有序的SYN-ACK-data-FIN顺序的状态性的IP连接。
在一个示例中,服务器106可以是托管(host)通过与客户端108的有线或无线连接可访问的网站、数据库或任何其他数据源的服务器。例如,服务器106可托管网站,并且客户端108可以建立与服务器106通信会话或TCP连接,以从服务器106请求和接收数据。
在一个示例中,客户端108可以使用连接110和112经由UTM设备104建立与服务器106的TCP连接。在一个示例中,连接110和112可以是使用SPDY协议的TCP连接。如上所述,SPDY协议是对允许将多个数据流多路复用为单个数据流并通过单TCP连接异步发送的现有HTTP协议的改进。例如,多个数据流请求可以被客户端108发送。使用传统的HTTP协议,每个数据流请求将使用分立的TCP连接。然而,使用SPDY协议,每个数据流可以通过单TCP连接在多路复用数据流中从服务器106发送到客户端108,导致数据更快地下载。
但是,如上所述,SPDY协议可能会导致新的安全风险。如下所述,UTM设备104可以位于服务器106和客户端108之间,以检查多路复用数据流内的数据包以检测恶意软件。
在一个实施方式中,UTM设备104、服务器106和客户端108可以被部署为使用处理器和非暂时性计算机可读存储介质的计算机。非暂时性计算机可读存储介质可以存储由处理器执行以执行本文所述功能的指令。
图2示出了UTM设备104的示例的框图。在一个示例中,UTM设备104可以包括连接处理器202、子文本生成器204和恶意软件检测器206。在一个示例中,连接处理器202可以在客户端108和服务器106之间传递TCP消息,以建立使用SPDY协议的TCP连接。在一个示例中,连接处理器202还可以与子文本生成器204进行通信,以将通过TCP连接传输的数据包提供给子文本生成器204用于分析。
在一个示例中,子文本生成器204可以包括存储器,其存储针对每个不同数据流生成的每个子文本。在一个示例中,每个数据流请求与流标识(ID)相关联。子文本可以被定义为用于将数据包重新组合成相应的数据流的子文本生成器204的存储器中的临时缓冲器。例如,可以生成第一子文本以使用与流ID 1相关联的数据包来重组第一文件,可以生成第二子文本以使用与流ID 2相关联的数据包来重组第二文件,等等。
在针对恶意软件完全重新组合文件并分析之后,子文本可以被删除并且存储空间可以被释放,以针对不同数据流或流ID号码生成新的子文本。在一个实施方式中,子文本生成器204可以基于在从客户端108发送到服务器106的初始数据流请求消息中提供的文件的大小来知道文件何时完整。因此,当特定子文本内的文件的大小与初始数据流请求中指示的文件的大小相同时,子文本生成器204可以知道文件已完整。
在一个示例中,子文本生成器204还可以对每个数据包和相应子文本内的完整数据包文件执行散列计算。在一个示例中,散列计算可以是对每个数据包的增量散列计算,直到对整个文件执行散列计算。可以将计算出的散列值提供给恶意软件检测器206,以确定数据包或完整的文件中是否存在恶意软件。在一个示例中,散列计算可以是消息摘要5(MD5)散列计算和值。
在一个示例中,恶意软件检测器206可以包括高速缓存查找表和签名数据库。高速缓存查找表可以临时存储由子文本生成器204提供的散列值。高速缓存查找表可以向存储多个签名(例如,先前计算的与不同类型的恶意软件相关联的散列值)的签名数据库发送查询。签名数据库可以执行比较并提供对高速缓存查找的响应,指示是否找到匹配。
在一个示例中,如果在数据包或者完整文件中发现匹配,则恶意软件检测器206可以向连接处理器202发送通知,并且连接处理器202可以丢弃TCP连接。因此,整个文件以及与其他数据流相关联的其他数据包不被发送到客户端108。
图3示出了用于检测SPDY连接上的恶意软件的示例方法300的流程图。在一个示例中,方法300的框可以由UTM设备104或设备500执行。
在框302处,方法300开始。在框304处,方法300通过单传输控制协议(TCP)连接从服务器接收复用数据流,其中该单传输控制协议连接使用SPDY协议,其中复用数据流包含与寻址到客户端的多个不同数据流相关联的数据包。例如,客户端可以尝试连接到由服务器托管的网站,并针对网页的不同部分请求多个不同数据流。每个数据流可以与网页的不同文件相关联。该请求可以包括特定文件、优先级和文件大小的流ID。
在一个实施方式中,可以由服务器确认对多个不同数据流的请求,并且可以建立TCP连接。服务器可以使用SPDY协议将与每个流ID相关联的数据包多路复用为通过TCP连接传输的单个数据流。数据包可以以异步方式发送。换言之,数据包不是以按发送第一流ID的所有数据包然后发送第二流ID的所有数据包等的顺序发送。
在框306处,方法300生成多个子文本,其中多个子文本中的每个子文本与多个不同数据流中的不同数据流相关联。例如,如果存在三个数据流,则可以生成三个子文本。换句话说,可以针对每个数据流生成子文本。
在框308处,方法300将来自多路复用数据流的数据包解复用为多个子文本中的相应子文本。例如,UTM设备可以拦截来自寻址到客户端的服务器的数据包,并尝试经由相应的子文本重新组合特定流ID的数据包。例如,如果有三个不同的流ID,则UTM设备可以生成三个不同的子文本。换句话说,每个流ID将与三个不同子文本中的相应子文本相关联。
在一个示例中,子文本为UTM设备提供一种重新组织数据包以针对恶意软件检查数据包以确保未检查的数据包不被转发至客户端的方法。在一个实施方式中,子文本可以充当代理。换句话说,子文本可以保持与流ID或文件相关联的数据包,直到对所有数据包和文件进行恶意软件检查。如果没有检测到恶意软件,则该文件可以被转发给客户端。
在另一个实施方式中,子文本可以以内联模式操作。例如,每个数据包可以被置于相应的子文本中,在数据包到达时检查并转发。例如,可以对每个数据包执行增量散列计算。在特定流ID的最后一个数据包被检查并发现没有恶意软件之后,客户端可以接收整个文件。然而,如果任何数据包包含恶意软件,则TCP连接可以重置或丢弃。在一个示例中,与包含恶意软件的数据包相关联的数据流可以被重置,而不是重置整个TCP连接。
如上所述,可以在UTM设备内的存储器中生成子文本。但是,可用的内存量可能有限。如果并行请求大量数据流,则UTM设备可能会耗尽内存以创建新的子文本。如果与对新数据流的请求相关联的优先级等于或低于先前请求的数据流的优先级,则UTM设备可以在先前请求的数据流完成检查并删除相关的子文本之后,简单地处理与新数据流相关联的数据包。
然而,如果与对新数据流的请求相关联的优先级高于先前请求的数据流的优先级,则UTM设备可以在转发请求到服务器之前将优先级改变为等于先前请求的数据流的优先级。因此,对新数据流的请求可以不中断正在处理并检查与先前请求的数据流关联的数据包的存储器中生成的现有子文本。
在框310处,方法300在多个子文本中的相应子文本中检查多个不同数据流,以检测恶意软件。在一个示例中,UTM设备可以在数据包在相应的子文本中被重新组合之后计算每个数据包和整个文件的散列值。散列值可以和存储在数据库中的与已知恶意软件相关联的散列值进行比较。如果发现数据包或文件的散列值与已知恶意软件的散列值之间的匹配,则UTM设备检测到恶意软件,并且可以重置或断开TCP连接。在一个示例中,与包含恶意软件的数据包相关联的数据流可以被重置,而不是重置整个TCP连接。在框312中,方法300结束。
图4示出了用于检测SPDY连接上的恶意软件的示例方法400的更详细图。方法400可以由包括客户端108、UTM设备104和服务器106的系统100执行。应该注意的是,图4中传输的消息每一个都通过UTM设备104。
在框402处,客户端108可以向服务器106发送TCP/SYN消息。在框404处,服务器106可以向客户端108发回SYN/ACK消息确认TCP/SYN消息。在框406处,客户端108可以向服务器106发送ACK消息,并且可以在客户端108和服务器106之间建立TCP连接。UTM设备104中的连接状态452可以维持TCP连接。
在框408处,客户端108可以发送SYN_STREAM消息。SYN_STREAM消息可以是一类与SPDY协议相关联的消息。UTM设备104可以检查SYN_STREAM消息并且识别流ID1和优先级3。如果在UTM设备104的存储器450中有足够的空间,则UTM设备104可以生成与流ID 1相关联的子文本454。
在框410处,客户端108还可以与在框408中发送的SYN_STREAM消息并行地发送第二SYN_STREAM消息。UTM设备104可以检查第二SYN_STREAM消息并且识别流ID 3和优先级3。如果在UTM设备104的存储器450中存在足够的空间,则UTM设备104可以生成与流ID 3相关联的子文本456。
在框412处,服务器106可以针对流ID 1发送SYN_REPLY消息。SYN_REPLY消息还可以是一类与SPDY协议相关联的消息。在框414处,服务器106可以发送与流ID 1相关联的数据包。在框416处,服务器106可以针对流ID 1发送DATAFIN消息,指示与流ID 1相关联的所有数据包已经被发送。
在框418处,服务器106可以针对流ID 3发送SYN_REPLY消息。SYN_REPLY消息也可以是一类与SPDY协议相关联的消息。在框420处,服务器106可以发送与流ID 3相关联的数据包。
应该注意,可以针对流ID 1和流ID 3的每个数据包分别重复框414和框420。另外,应该注意的是,框414和框420可以不以图4中所示的顺序发生。如上所述,SPDY协议允许数据流的数据包异步发送。换句话说,用于不同数据流的数据包可以被多路复用在一起并通过单TCP连接经由单个数据流发送。因此,周期性地,框420可以在框414之前发生。例如,服务器106可以在流ID 1的数据包之前发送流ID 3的数据包。
图4示出了示例多路复用数据流464。数据流可以包括流ID 3的第一数据包、流ID1的第二数据包、流ID 1的第三数据包、流ID 3的第四数据包等等。UTM设备104可以将每个数据包置于相应的子文本中。例如,流ID 3的第一数据包可以被置于子文本456中,流ID 1的第二数据包可以被置于子文本454中等等。
在一个示例中,UTM设备104可以以代理模式操作,该代理模式将数据包临时存储在相应的子文本中,直到特定流ID的所有数据包和整个文件已被针对恶意软件检查或分析。在数据包和整个文件已经被检查并且没有恶意软件之后,整个文件的数据包可以被转发到客户端108。在另一个示例中,UTM设备104可以以检查每个数据包的内联模式操作,然后将该数据包转发给客户端108。
在一个示例中,UTM设备104可以对每个数据包执行散列计算以获得散列值。在一个示例中,散列计算可以是MD5散列计算以获得MD5散列值。散列值可以被发送到高速缓存查找表460。在一个示例中,随着由UTM设备104处理数据包,高速缓存查找表460可以针对每个数据包使所请求的散列值查找排队。高速缓存查找表460可以发送对签名数据库(DB)462的查询。
签名DB 462可以是存储已知恶意软件签名的MD5散列值的MD5散列数据库。可以利用与发现的新恶意软件的签名相关联的新MD5散列值周期性地更新签名DB462。签名DB 462可以向高速缓存查找表460发送指示是否找到匹配的回复。如果找到匹配,则高速缓存查找可以向连接状态452发送消息,指示已经检测到恶意软件,并且连接状态452可以重置或丢弃TCP连接。在一个示例中,与包含恶意软件的数据包相关联的数据流可以使用RST_STREAM命令消息重置,而不是重置整个TCP连接。
在框422处,客户端108可以发送新的SYN_STREAM消息。在一个示例中,可以在完成与流ID 1和流ID 3相关联的数据流之前发送新的SYN_STREAM消息。UTM设备104可以检查SYN_STREAM消息以识别流ID 5和优先级0。如果UTM设备104在存储器450中具有空间,则可以针对流ID 5生成子文本458。如上所述,UTM设备104可以不加改变地传递SYN_STREAM消息,并且可以类似于与流ID 1相关联的SYN_STREAM消息正常处理SYN_STREAM消息。
在另一示例中,UTM设备104可以确定存储器450中没有可用空间。结果,UTM设备104可以将流ID 5的优先级修改为等于或低于当前处理流ID(例如,流ID 1和流ID 3)的优先级。例如,UTM设备104可以将流ID 5的优先级从0改变为3。
在框424处,UTM设备104可以将改变的SYN_STREAM消息转发到服务器106。由于改变了流ID 5的优先级,方法400可以在处理流ID之前完成流ID 1和流ID 3的处理。在框426处,服务器106针对流ID 3发送DATA_FIN消息。
在框428处,服务器106针对流ID 5发送SYN_REPLY消息。在一个示例中,可以在完成流ID 3的处理并且已移除子文本456以释放存储器450上的存储空间之后生成子文本458。
在框430处,服务器106可以发送与流ID 5相关联的数据包。例如,多路复用数据流464示出与流ID 5相关联的数据包。如上所述,类似于流ID 1和流ID 3,UTM设备104可以检查流ID 5的每个数据包和流ID 5的整个文件。例如,UTM设备104可以计算流ID 5的每个数据包的散列值,并且使散列值经由高速缓存查找表460与存储在签名DB 462中的已知恶意软件的散列值相比较。在框432处,服务器106可以针对流ID 5发送DATA_FIN消息,并且方法400可以结束。
应当注意,框426-432可以不以图4中所示的顺序发生。例如,如果流ID 5的优先级未被改变并且保持为0,则框428中的SYN_REPLY消息可能已经在框426中发送DATA_FIN消息之前发送。换句话说,由于流ID 5的较高优先级,在一个示例中,服务器106可以在已经全部发送了流ID 3的数据包之前立即开始发送流ID 5的数据包。因此,复用数据流464可以具有与流ID 5相关联的数据包之后的与流ID 1或流ID 3相关联的附加数据包。
图5示出了装置500的另一个示例。在一个示例中,装置500还可以是UTM设备104。在一个示例中,装置500可以包括处理器502和非暂时性计算机可读存储介质504。非暂时性计算机可读存储介质504可以包括当由处理器502执行时使处理器502执行各种功能的指令506、508、510和512。
在一个示例中,指令506可以包括用于通过单传输控制(TCP)连接从服务器接收多路复用数据流中的多个数据包的指令,其中该单传输控制连接使用SPDY协议,其中多个数据包与寻址到客户端的多个不同数据流关联。指令508可以包括分析多个数据包中的每个数据包以确定多个数据包中的至少一个数据包中是否存在恶意软件的指令。指令510可以包括基于用于分析的指令将多个数据包中的每个数据包分类成多个子文本中的相应子文本的指令。指令512可以包括在多个子文本中的每个子文本中组合多个数据包的相应数据包之后,分析多个子文本中的每个子文本,以确定是否存在恶意软件的指令。
应当理解,上述公开的变体和其他特征和功能,或其替代方案可以组合到许多其他不同的系统或应用中。本领域技术人员随后可以进行各种目前无法预料或未预料到的替代、修改、变化或改进,这些也旨在被以下权利要求所涵盖。
Claims (15)
1.一种方法,包括:
由处理器通过单传输控制协议(TCP)连接从服务器接收多路复用数据流,其中所述单传输控制协议连接使用SPDY协议,其中所述多路复用数据流包含与寻址到客户端的多个不同数据流相关联的数据包;
由所述处理器生成多个子文本,其中,所述多个子文本中的每个子文本与所述多个不同数据流中的不同数据流相关联;
由所述处理器将来自所述多路复用数据流的所述数据包解复用为所述多个子文本中的相应子文本;并且
由所述处理器在所述多个子文本中的相应子文本中检查所述多个不同数据流,以检测恶意软件。
2.根据权利要求1所述的方法,包括:
当检测到所述恶意软件时,由所述处理器丢弃所述单TCP连接以停止所述多路复用数据流的传输。
3.根据权利要求1所述的方法,其中,对所述多路复用数据流中的所述数据包中的每个数据包执行所述检查。
4.根据权利要求1所述的方法,其中,对完整的子文本执行所述检查,所述完整的子文本包含所述多个不同数据流中的组合的数据流。
5.根据权利要求1所述的方法,其中,所述检查包括:对所述数据包执行散列计算以生成散列值,并且将所述散列值和存储在数据库中的与恶意软件的签名相关联的散列值相比较。
6.根据权利要求1所述的方法,包括:
由所述处理器,接收对新数据流的新请求,所述新数据流具有高于所述多个不同数据流的优先级的优先级;
由所述处理器确定存储所述多个子文本的存储器已满;并且
由所述处理器将所述新数据流的优先级改变为等于所述多个不同流的优先级。
7.一种装置,包括:
连接处理器,用于传递传输控制协议(TCP)消息以建立使用SPDY协议的TCP连接;
与所述连接处理器通信的子文本生成器,所述子文本生成器生成多个子文本,其中,所述多个子文本中的每个子文本与通过所述PCT连接经由多路复用数据流从服务器接收并寻址到客户端的多个不同数据流中的不同数据流相关联;以及
恶意软件检测器,所述恶意软件检测器在所述多个子文本中的相应子文本中检查所述多个不同数据流,以检测恶意软件。
8.根据权利要求7所述的装置,其中,当检测到所述恶意软件时,所述连接处理器丢弃所述TCP连接。
9.根据权利要求7所述的装置,其中,所述恶意软件检测器检查所述多路复用数据流中的所述数据包中的每个数据包。
10.根据权利要求7所述的装置,其中,所述恶意软件检测器检查完整的子文本,所述完整的子文本包含所述多个不同数据流中的组合的数据流。
11.根据权利要求7所述的装置,其中,所述子文本生成器对所述数据包执行散列计算以生成散列值,并且所述恶意软件检测器将所述散列值和存储在数据库中的与恶意软件的签名相关联的散列值相比较。
12.根据权利要求7所述的装置,其中,连接处理器接收对具有高于所述多个不同数据流的优先级的优先级的新数据流的新请求,确定存储由所述子文本生成器生成的所述多个子文本的存储器已满,并且将所述新数据流的优先级改变为等于所述多个不同流的优先级。
13.一种编码有由处理器可执行的指令的非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质包括:
通过单连接从服务器接收多路复用数据流中的多个数据包的指令,其中所述多个数据包与所述多路复用数据流的寻址到客户端的多个不同数据流相关联;
分析所述多个数据包中的每个数据包,以确定所述多个数据包中的至少一个数据包中是否存在恶意软件的指令;
基于用于分析的指令将所述多个数据包中的每个数据包分类成多个子文本中的相应子文本的指令;以及
在所述多个数据包中的相应数据包被组合在所述多个子文本中的每个子文本中之后,分析所述多个子文本中的每个子文本,以确定是否存在所述恶意软件的指令。
14.根据权利要求13所述的非暂时性计算机可读存储介质,包括:
在确定存在所述恶意软件时丢弃所述单连接的指令。
15.根据权利要求13所述的非暂时性计算机可读存储介质,包括:
用于接收对新数据流的新请求的指令,所述新数据流具有高于所述多个不同数据流的优先级的优先级;
用于确定存储所述多个子文本的存储器已满的指令;以及
用于将所述新数据流的优先级改变为等于所述多个不同流的优先级的指令。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2016/015012 WO2017131645A1 (en) | 2016-01-27 | 2016-01-27 | Detecting malware on spdy connections |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108605039A true CN108605039A (zh) | 2018-09-28 |
CN108605039B CN108605039B (zh) | 2021-04-13 |
Family
ID=59398414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680080492.7A Active CN108605039B (zh) | 2016-01-27 | 2016-01-27 | 在spdy连接上检测恶意软件 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10992702B2 (zh) |
EP (1) | EP3408989B1 (zh) |
CN (1) | CN108605039B (zh) |
WO (1) | WO2017131645A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10250466B2 (en) * | 2016-03-29 | 2019-04-02 | Juniper Networks, Inc. | Application signature generation and distribution |
US10652265B2 (en) * | 2018-01-12 | 2020-05-12 | Lianqun YANG | Method and apparatus for network forensics compression and storage |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0528103A (ja) * | 1990-05-22 | 1993-02-05 | Mitsubishi Electric Corp | バス多重方式 |
WO1997031461A1 (en) * | 1996-02-23 | 1997-08-28 | Zeitnet, Inc. | High speed packet-switched digital switch and method |
CN1819547A (zh) * | 2005-02-09 | 2006-08-16 | 阿拉克斯拉网络株式会社 | 数据传送装置 |
US20070229521A1 (en) * | 2006-04-03 | 2007-10-04 | Siemens Corporate Research, Inc. | Memory management system and method for GPU-based volume rendering |
CN101682558A (zh) * | 2006-12-07 | 2010-03-24 | Lg电子株式会社 | 在无线通信系统中传递数据的方法 |
US20100138432A1 (en) * | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Systems and Methods to Enable Identification of Different Data Sets |
CN101965573A (zh) * | 2008-03-07 | 2011-02-02 | 高通股份有限公司 | 用于检测对计算装置的未授权接入和安全传送关于所述未授权接入的信息的方法和设备 |
CN102907071A (zh) * | 2012-07-26 | 2013-01-30 | 华为技术有限公司 | 一种数据传输方法、移动终端和代理服务器 |
CN102985928A (zh) * | 2010-07-13 | 2013-03-20 | F-赛酷公司 | 识别多态性恶意软件 |
CN103870206A (zh) * | 2012-12-13 | 2014-06-18 | 华为技术有限公司 | 一种缓存数据接收和读取方法及装置、及路由器缓存装置 |
WO2015147354A1 (ko) * | 2014-03-27 | 2015-10-01 | 엘지전자 주식회사 | Spdy에 기초한 웹 가속 방법 및 이를 위한 spdy 프록시 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060535A1 (en) * | 2003-09-17 | 2005-03-17 | Bartas John Alexander | Methods and apparatus for monitoring local network traffic on local network segments and resolving detected security and network management problems occurring on those segments |
US7890612B2 (en) * | 2006-05-08 | 2011-02-15 | Electro Guard Corp. | Method and apparatus for regulating data flow between a communications device and a network |
US8949464B2 (en) | 2011-05-10 | 2015-02-03 | Israel L'Heureux | Client-side HTTP translator |
US8644339B1 (en) | 2011-12-01 | 2014-02-04 | Juniper Networks, Inc. | In-line packet reassembly within a mobile gateway |
US9674258B2 (en) | 2012-02-23 | 2017-06-06 | Yottaa Inc. | System and method for context specific website optimization |
US9438701B2 (en) * | 2012-05-05 | 2016-09-06 | Citrix Systems, Inc. | Systems and methods for a SPDY to HTTP gateway |
US20140101761A1 (en) | 2012-10-09 | 2014-04-10 | James Harlacher | Systems and methods for capturing, replaying, or analyzing time-series data |
US9148446B2 (en) * | 2013-05-07 | 2015-09-29 | Imperva, Inc. | Selective modification of encrypted application layer data in a transparent security gateway |
US9282043B1 (en) * | 2013-09-24 | 2016-03-08 | Juniper Networks, Inc. | Trend-based flow aggregation for flow suppression |
US10021128B2 (en) * | 2015-03-12 | 2018-07-10 | Forcepoint Llc | Systems and methods for malware nullification |
-
2016
- 2016-01-27 EP EP16888381.7A patent/EP3408989B1/en active Active
- 2016-01-27 WO PCT/US2016/015012 patent/WO2017131645A1/en active Application Filing
- 2016-01-27 CN CN201680080492.7A patent/CN108605039B/zh active Active
- 2016-01-27 US US16/072,978 patent/US10992702B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0528103A (ja) * | 1990-05-22 | 1993-02-05 | Mitsubishi Electric Corp | バス多重方式 |
WO1997031461A1 (en) * | 1996-02-23 | 1997-08-28 | Zeitnet, Inc. | High speed packet-switched digital switch and method |
CN1819547A (zh) * | 2005-02-09 | 2006-08-16 | 阿拉克斯拉网络株式会社 | 数据传送装置 |
US20070229521A1 (en) * | 2006-04-03 | 2007-10-04 | Siemens Corporate Research, Inc. | Memory management system and method for GPU-based volume rendering |
CN101682558A (zh) * | 2006-12-07 | 2010-03-24 | Lg电子株式会社 | 在无线通信系统中传递数据的方法 |
CN101965573A (zh) * | 2008-03-07 | 2011-02-02 | 高通股份有限公司 | 用于检测对计算装置的未授权接入和安全传送关于所述未授权接入的信息的方法和设备 |
US20100138432A1 (en) * | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Systems and Methods to Enable Identification of Different Data Sets |
CN102985928A (zh) * | 2010-07-13 | 2013-03-20 | F-赛酷公司 | 识别多态性恶意软件 |
CN102907071A (zh) * | 2012-07-26 | 2013-01-30 | 华为技术有限公司 | 一种数据传输方法、移动终端和代理服务器 |
CN103870206A (zh) * | 2012-12-13 | 2014-06-18 | 华为技术有限公司 | 一种缓存数据接收和读取方法及装置、及路由器缓存装置 |
WO2015147354A1 (ko) * | 2014-03-27 | 2015-10-01 | 엘지전자 주식회사 | Spdy에 기초한 웹 가속 방법 및 이를 위한 spdy 프록시 |
Also Published As
Publication number | Publication date |
---|---|
EP3408989B1 (en) | 2021-07-28 |
EP3408989A4 (en) | 2019-06-12 |
WO2017131645A1 (en) | 2017-08-03 |
US20190052649A1 (en) | 2019-02-14 |
US10992702B2 (en) | 2021-04-27 |
CN108605039B (zh) | 2021-04-13 |
EP3408989A1 (en) | 2018-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sun et al. | CloudEyes: Cloud‐based malware detection with reversible sketch for resource‐constrained internet of things (IoT) devices | |
US10250466B2 (en) | Application signature generation and distribution | |
CN101409706B (zh) | 一种边缘网络中的数据分发方法、数据分发系统及相关设备 | |
CN105591973B (zh) | 应用识别方法及装置 | |
US20080219261A1 (en) | Apparatus and method for processing data streams | |
KR20130014226A (ko) | 공격 트래픽 형태별 특성에 따른 dns 플러딩 공격 탐지 방법 | |
US20050240989A1 (en) | Method of sharing state between stateful inspection firewalls on mep network | |
US11290484B2 (en) | Bot characteristic detection method and apparatus | |
US9009474B2 (en) | Method and system for detecting data modification within computing device | |
CN101557329B (zh) | 一种基于应用层的数据分割方法及装置 | |
CN101572700A (zh) | 一种HTTP Flood分布式拒绝服务攻击防御方法 | |
WO2014094441A1 (zh) | 病毒检测方法及设备 | |
CN106576051B (zh) | 一种检测零日威胁的方法、网络设备、非暂态机器可读介质 | |
US9332053B2 (en) | Methods, systems, and computer readable media for load balancing stream control transmission protocol (SCTP) messages | |
CN111064755B (zh) | 一种数据保护方法、装置、计算机设备和存储介质 | |
US20170104722A1 (en) | Context sharing between endpoint device and network security device using in-band communications | |
JP6548823B2 (ja) | 木グラフプロパティを適用するjsonデータのリアルタイムバリデーション | |
US9667543B2 (en) | Routing requests with varied protocols to the same endpoint within a cluster | |
JP2018531466A6 (ja) | 木グラフプロパティを適用するjsonデータのリアルタイムバリデーション | |
KR102014741B1 (ko) | Fpga 기반 고속 스노트 룰과 야라 룰 매칭 방법 | |
US10567399B2 (en) | Fragmented malware hash lookup in cloud repository | |
WO2017217247A1 (ja) | 悪性イベント検出装置、悪性イベント検出方法および悪性イベント検出プログラム | |
WO2017097092A1 (zh) | 缓存集群服务的处理方法及系统 | |
CN108605039A (zh) | 在spdy连接上检测恶意软件 | |
US20210105299A1 (en) | Method and system for defending an http flood attack |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190307 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American California Applicant before: Aruba Networs, Inc. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |