CN106921637B - 网络流量中的应用信息的识别方法和装置 - Google Patents

网络流量中的应用信息的识别方法和装置 Download PDF

Info

Publication number
CN106921637B
CN106921637B CN201511000809.5A CN201511000809A CN106921637B CN 106921637 B CN106921637 B CN 106921637B CN 201511000809 A CN201511000809 A CN 201511000809A CN 106921637 B CN106921637 B CN 106921637B
Authority
CN
China
Prior art keywords
identifier
identification
record
data stream
association
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
Application number
CN201511000809.5A
Other languages
English (en)
Other versions
CN106921637A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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
Priority to CN201511000809.5A priority Critical patent/CN106921637B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to EP18200601.5A priority patent/EP3496338B1/en
Priority to EP16880693.3A priority patent/EP3297213B1/en
Priority to JP2018502243A priority patent/JP6599538B2/ja
Priority to ES18200601T priority patent/ES2880369T3/es
Priority to PCT/CN2016/099891 priority patent/WO2017113900A1/zh
Priority to ES16880693T priority patent/ES2746351T3/es
Publication of CN106921637A publication Critical patent/CN106921637A/zh
Priority to US15/839,329 priority patent/US11582188B2/en
Priority to US16/737,373 priority patent/US11855967B2/en
Application granted granted Critical
Publication of CN106921637B publication Critical patent/CN106921637B/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/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/302Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information gathering intelligence information for situation awareness or reconnaissance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

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)
  • Evolutionary Computation (AREA)
  • Technology Law (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种网络流量中的应用信息的识别方法和装置,用以改善应用识别技术的识别效果。该方法由终端设备执行,终端设备中的第一对应表保存有终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表保存有应用的标识和应用创建的进程的标识的第二对应关系,该方法包括:接收网络安全设备发送的第一数据流的标识;在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;向所述网络安全设备发送所述应用的标识。

Description

网络流量中的应用信息的识别方法和装置
技术领域
本申请涉及计算机及网络通信技术领域,尤其涉及一种网络流量中的应用信息的识别方法及一种网络流量中的应用信息的识别装置。
背景技术
随着互联网技术的快速发展,基于互联网技术实现的包括服务,游戏在内各种应用也日益丰富。为了满足企业或网络监管部门的各种需求,如为了实现对用户上网行为的管理控制,或者通过流量统计对当前热门应用进行排名,使得流量识别成为了网络安全设备的一项基本功能。其中网络安全设备包括安全网关、防火墙、深度报文检测(Deep PacketInspection,DPI)设备等具有流量分析和管理功能的报文转发功能的设备。
流量识别技术分为协议识别技术和应用识别技术。顾名思义,协议识别技术是指网络安全设备确定流经本设备的流量中各数据流所属的协议类型,并进一步可以确定不同协议类型的数据流在总流量中所占的比例。
本申请中的“应用”是指提供特定功能、且具有网络访问和报文处理能力的应用软件。当这类应用软件在一个终端设备上运行之后,能够开启终端设备上的网络接口,通过开启的接口与网络中的另一终端设备建立连接,并通过建立的连接传输一系列报文,继而通过对接收到的报文进行处理向用户提供特定的功能。例如,网络浏览器Internet Explorer(IE),即时通信软件腾讯QQ,文件传输协议(File Transfer Protocal,FTP)客户端FileZilla等。
由于应用是运行在协议之上的,换句话说,同一种协议上可以运行多种不同的应用,例如点对点(peer to peer,P2P)客户端,网页浏览器都是基于超文本传输协议(HyperText Transfer Protocol,HTTP)协议来实现的。如果只是基于HTTP协议进行流量识别和管控,那么无法区分一个数据流是P2P客户端发送的,还是网络浏览器发送的。如果能够通过应用识别技术区分出HTTP协议的数据流是哪种应用发送的,那么就可以知晓用户正在进行的是与工作相关的网页访问活动,还是与工作无关的网络游戏,进而阻断网络游戏造成的流量。因此与传统的协议识别技术相比,通过应用识别技术可以获得更为精细的管理控制效果。
现有应用识别技术主要包括基于特征的识别技术、启发式识别技术、关联识别技术。
其中,基于特征的识别技术是指通过应用所特有的报文格式设计上的特征,如特有的关键字、或者固定位置的字段内容来识别发送该报文的应用。例如,网络安全设备接收到报文后,查找该报文中是否携带关键字“PPLiveVA”,如果携带有关键字“PPLiveVA”,则说明发送该报文是应用是网络电视PPTV。
启发式识别技术是指通过分析一种应用所发送的报文长度、报文内容中字符的出现规律、通信双方的交互规律、报文的发送间隔的等现象,获得能够将这种应用与其他应用相区分的统计学意义上的规则,通过这种规则来识别发送报文的应用。启发式识别技术对经过加密的报文、或者使用私有未公开协议发送的报文有一定的识别效果。然而由于规则获取方式是通过统计分析而得到的,因此存在漏报率和误报率较高的问题。
关联识别技术是指将报文的IP地址、端口号和协议标识,与包含有IP地址、端口号、协议标识与应用的对应关系的关联识别规则进行匹配,对发送报文的应用进行识别。
现有应用识别技术所依赖的特征、规则都是由人工对收集到的大量报文进行分析得到的。网络安全设备厂商、或与网络安全设备厂商合作的第三方机构将包括特征、规则在内的更新规则库上传至升级网站,网络安全设备从升级网站中获取更新规则库,从而保证网络安全设备的识别能力。然而即便如此,由于规则库升级不及时、启发式识别技术识别精确性不高等因素,现有应用识别技术仍然无法识别出相当比例的网络流量,或者存在相当比例的网络流量得到错误的识别结果。
发明内容
本申请实施例提供一种网络流量中的应用信息的识别方法,用以改善应用识别技术的识别效果。
本申请实施例提供的技术方案如下:
第一方面,提供了一种网络流量中的应用信息的识别方法,所述方法由终端设备执行,其特征在于,所述终端设备中的第一对应表以记录的方式保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表以记录的方式保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,
所述方法包括:
接收网络安全设备发送的第一数据流的标识;
所述终端设备在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;
所述终端设备在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;
向所述网络安全设备发送所述应用的标识。
本申请实施例提供的网络流量中的应用信息的识别方法,终端设备根据网络安全设备发送的数据流的标识,查找本地保存的对应表后,向网络安全设备反馈应用的标识,从而协助网络安全设备确定数据流的应用识别结果。相比于现有技术,上述系统通过网络安全设备和终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
终端设备可以通过以下方式来获得和更新第一对应表,以保证第一对应表的实时性,减少占用的存储空间。
可选地,所述终端设备通过以下步骤获得所述第一对应表:
所述终端设备通过操作系统提供的接口,获得所述终端设备中运行的至少一个进程的标识;
针对获得的每个进程的标识,所述终端设备获得该进程创建的数据流的标识,生成一个包含所述进程的标识和所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。
可选地,所述终端设备通过以下步骤获得所述第一对应表:
所述终端设备通过钩子函数获得所述操作系统创建进程的事件;
从所述创建进程的事件中获得新创建的进程的标识;
获得该新创建进程创建的数据流的标识,生成一个包含所述新创建进程的标识和所述新创建进程创建的所述数据流的标识的记录;并将所述记录保存在所述第一对应表中;
所述终端设备获取第一对应表,还包括:
所述终端设备通过钩子函数获得所述操作系统退出进程的事件;
从所述退出进程的事件中获得退出进程的标识,从所述第一对应表中删除包含所述退出进程的标识的记录。
可选地,所述第一对应表中的记录还包含数据流的最后活动时间;所述方法还包括:
所述终端设备确定所述第一对应表中的过期记录,所述过期记录是指包括的数据流的最后活动时间和当前时间之间的时间间隔超过预定时间间隔的记录;
删除所述过期记录。
可选地,所述终端设备获取所述第一对应表之后,还包括:
所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文所属数据流的标识;
将所述第一对应表中包含所述报文所属数据流的标识的记录中数据流的最后活动时间更新为当前时间。
可选地,所述终端设备获取所述第一对应表之后,还包括:
所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文状态标识和报文所属数据流的标识;
如果所述报文状态标识为FIN,则删除所述第一对应表中包含所述报文所属数据流的标识的记录。
为了获得完整的数据流,以便进行规制提取等后续分析,可选地,所述获取所述第一记录中的进程的标识之后,还包括:
为所述进程的标识设置报文采集标识,所述报文采集标识用于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
第二方面,提供了一种终端设备,所述终端设备包括存储器、处理器和网络接口,所述存储器、处理器和网络接口通过总线相互通信;
所述存储器存储程序代码、第一对应表和第二对应表,所述第一对应表以记录的方式保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表以记录的方式保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
所述网络接口,用于接收网络安全设备发送的第一数据流的标识;
所述处理器读取所述存储器中存储的程序代码,执行:
在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;
所述网络接口,还用于向所述网络安全设备发送所述处理器获取的应用的标识。
可选地,所述处理器,还用于通过以下操作获得所述第一对应表:通过操作系统提供的接口,获得所述终端设备中运行的至少一个进程的标识;针对获得的每个进程的标识,所述终端设备获得该进程创建的数据流的标识,生成一个包含所述进程的标识和所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。
可选地,所述处理器,还用于通过以下操作获得所述第一对应表:
通过钩子函数获得所述操作系统创建进程的事件;从所述创建进程的事件中获得新创建的进程的标识;获得该新创建进程创建的数据流的标识,生成一个包含所述新创建进程的标识和所述新创建进程创建的所述数据流的标识的记录;并将所述记录保存在所述第一对应表中;以及
通过钩子函数获得所述操作系统退出进程的事件;从所述退出进程的事件中获得退出进程的标识,从所述第一对应表中删除包含所述退出进程的标识的记录。
可选地,所述第一对应表中的记录还包含数据流的最后活动时间;
所述处理器,还用于确定所述第一对应表中的过期记录,所述过期记录是指包括的数据流的最后活动时间和当前时间之间的时间间隔超过预定时间间隔的记录;删除所述过期记录。
可选地,所述处理器,还用于获取所述第一对应表之后,所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文所属数据流的标识;
将所述第一对应表中包含所述报文所属数据流的标识的记录中数据流的最后活动时间更新为当前时间。
可选地,所述处理器,还用于获取所述第一对应表之后,所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文状态标识和报文所属数据流的标识;
如果所述报文状态标识为FIN,则删除所述第一对应表中包含所述报文所属数据流的标识的记录。
第三方面,提供了一种网络安全设备,包括存储器、处理器和网络接口,所述存储器、处理器和网络接口通过总线相互通信;
所述网络接口,用于接收第一数据流;
所述处理器,用于读取所述存储器中存储的程序代码,执行:
如果无法识别出发送所述第一数据流的应用,则获取所述第一数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;指示所述网络接口根据所述第一数据流的标识中的源地址或目的地址,向终端设备发送所述数据流的标识,所述终端设备的地址为所述第一数据流的标识中的源地址或目的地址;
所述网络接口,还用于接收所述终端设备发送的应用的标识,确定接收到的所述应用的标识为发送所述第一数据流的应用的标识。
本申请实施例提供的网络安全设备通过与终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
第四方面,提供了一种网络流量中的应用信息的识别系统,其特征在于,包括网络安全设备和终端设备,其中:
所述网络安全设备,用于接收第一数据流,并获取所述第一数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;根据所述第一数据流的标识中的源地址或目的地址,向所述终端设备发送所述数据流的标识,所述终端设备的地址为所述第一数据流的标识中的源地址或目的地址;接收所述终端设备发送的应用的标识,确定接收到的所述应用的标识为发送所述第一数据流的应用的标识;
所述终端设备,存储有第一对应表和第二对应表,所述第一对应表保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,
所述终端设备用于接收网络安全设备发送的第一数据流的标识;在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;向所述网络安全设备发送所述应用的标识。
本申请实施例提供的网络流量中的应用信息的识别系统中,网络安全设备根据终端设备的反馈,确定数据流的应用识别结果。相比于现有技术,上述系统通过网络安全设备和终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
为了提高网络安全设备中后续数据流的识别成功率,网络安全设备还可以根据终端的反馈生成新的关联规制,
可选地,所述网络安全设备,还用于生成第一关联识别规则和第二关联识别规则,所述第一关联识别规则包含所述应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包含所述应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组;
接收第二数据流,获取所述第二数据流的目的三元组和源三元组中的至少一个,所述第二数据流的目的三元组为由所述第二数据流的目的地址、目的端口和协议号组成的三元组,所述第二数据流的源三元组为所述第二数据流的源地址、源端口和协议号组成的三元组;
如果所述获取的三元组与所述第一关联识别规则和所述第二关联识别规则中任意一个关联识别规则包含的三元组一致,则确定发送所述第二数据流的应用的标识为所述任意一个关联识别规则包含的应用的标识。
第五方面,提供了一种网络流量中的应用信息的识别方法,包括:
接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识与所述应用创建的进程的标识,也就是说通过对应表中的记录保存应用的标识与进程的标识之间的对应关系;
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;
如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。
本申请实施例提供的网络流量中的应用信息的识别方法,数据处理设备通过比较终端设备和网络安全设备的识别记录,能够识别出现有技术难以发现的网络安全设备的错误识别记录,改善了网络流量的识别效果。
可选地,如果不存在所述第一关联记录,所述方法还包括:
向所述终端设备发送所述第二识别记录中包含的进程的标识,以使所述终端设备为所述进程的标识设置报文采集标识,所述报文采集标识于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
在发现错误识别记录后,为了避免后续由于关联规则造成相同的错误识别记录,数据处理设备还可以通知网络安全设备删除造成错误识别的关联识别规则。
可选地,所述第一识别记录中还包含识别方式的标识,所述识别方式包括关联识别、特征识别和启发式识别;
如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,所述方法还包括:
向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
在发现错误识别记录后,为了提高后续识别的成功率,数据处理设备还可以通知网络安全设备生成正确的关联识别规则。
可选地,如果不存在所述第一关联记录,所述方法还包括:
在所述对应表中查询是否存在第二关联记录,所述第二关联记录中保存有第二识别记录中包含的进程的标识,以及与之相应的应用的标识;
如果存在所述第二关联记录,生成第三关联规则和第四关联规则,所述第三关联规则包括所述第二关联记录中的应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第四关联规则包括第二关联记录中的应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组;
向所述网络安全设备发送所述第三关联识别规则和第四关联识别规则。
可选地,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第二关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,则生成第五关联识别规则和第六关联识别规则,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第六关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组;
向所述网络安全设备发送所述第五关联识别规则和第六关联识别规则。
可选地,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
第六方面,提供了一种网络流量中的应用信息的识别方法,包括:
接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识、应用的标识和识别方式的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,所述识别方式包括关联识别、特征识别和启发式识别;
接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识与所述应用创建的进程的标识的对应关系;
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;
如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
本申请实施例提供的网络流量中的应用信息的识别方法,数据处理设备在发现错误识别记录后,为了避免后续由于关联规则造成相同的错误识别记录,数据处理设备还可以通知网络安全设备删除造成错误识别的关联识别规则。
第七方面,提供了一种数据处理设备,所述处理设备包括存储器、处理器和网络接口,所述存储器、处理器和网络接口通过总线相互通信;
所述存储器存储程序代码;
所述网络接口,用于接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识;
所述处理器读取所述存储器中存储的程序代码,执行:
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;
如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。
可选地,所述第一识别纪录中还包含识别方式的标识,所述识别方式包括关联识别、特征识别和启发式识别;
所述网络接口,还用于如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
可选地,所述网络接口,还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
所述处理器,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,则在所述对应表中查询是否存在第二关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,则生成第五关联识别规则和第六关联识别规则,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第六关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组;
所述网络接口,还用于向所述网络安全设备发送所述第五关联识别规则和第六关联识别规则。
可选地,所述网络接口,还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
所述处理器,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
所述网络接口,还用于如果所述处理器确定存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
本申请实施例提供的数据处理设备通过比较终端设备和网络安全设备的识别记录,能够识别出现有技术难以发现的网络安全设备的错误识别记录,改善了网络流量的识别效果。
第八方面,提供了一种网络流量中的应用信息的识别系统,包括数据处理设备、终端设备和网络安全设备,其中:
所述网络安全设备,用于接收第一数据流,确定发送所述第一数据流的应用的标识后,生成第一识别记录,所述第一识别记录包含所述第一数据流的标识和所述应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,向所述数据处理设备发送所述第一识别记录;
所述终端设备,用于获取所述终端设备上的进程的标识以及所述进程创建的第二数据流的标识,生成第二识别记录,所述第二识别记录包含第二数据流的标识和进程的标识;以及获取所述对应表,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识;向所述数据处理设备发送所述第二识别记录和对应表;
所述数据处理设备,用于接收来自于所述网络安全设备的第一识别记录;接收来自于所述终端设备的第二识别记录和对应表;如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;如果不存在所述第一关联记录,则确定所述第一识别记录为错误识别记录。
本申请实施例提供的网络流量中的应用信息的识别系统中数据处理设备通过比较终端设备和网络安全设备的识别记录,能够识别出现有技术难以发现的网络安全设备的错误识别记录,改善了网络流量的识别效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本申请实施例提供的一种网络流量中的应用信息的识别系统的示意图;
图1B为本申请实施例提供的另一种网络流量中的应用信息的识别系统的示意图;
图2为本申请实施例提供的网络流量中的应用信息的识别方法的流程图;
图3A为本申请实施例提供的获取第一对应表的流程图;
图3B为本申请实施例提供的更新第一对应表的流程图;
图4为本申请实施例提供的获取完整数据流的流程图;
图5A为本申请实施例提供的一种终端设备的结构示意图;
图5B为本申请实施例提供的另一种终端设备的结构示意图;
图6A为本申请实施例提供的一种网络安全设备的结构示意图;
图6B为本申请实施例提供的另一种网络安全设备的结构示意图;
图7为本申请实施例提供的另一种网络流量中的应用信息的识别系统的示意图;
图8A为本申请实施例提供的一种网络流量中的应用信息的识别方法的交互图;
图8B为本申请实施例提供的另一种网络流量中的应用信息的识别方法的交互图;
图9A为本申请实施例提供的一种数据处理设备的结构示意图;
图9B为本申请实施例提供的另一种数据处理设备的结构示意图。
具体实施方式
本申请中的“数据流”是指由源地址、源端口、目的地址、目的端口和协议类型确定出的两个终端设备之间在一定时间段内传输的一系列报文。本申请中的终端设备可以是便携式计算机、服务器、移动终端等具有网络接入功能和运行应用软件能力的设备。数据流的标识是指由源地址、源端口、目的地址、目的端口和协议组成的五元组。
应用识别技术是指网络安全设备确定一条数据流是由终端设备中的哪个应用软件发送的。
本申请实施例提供的网络流量中的应用信息的识别方法,通过网络安全设备与终端设备之间的交互,能够识别出一些现有应用识别技术无法识别出的数据流,从而降低无法识别的网络流量在总网络流量中所占的比例,提高应用识别的成功率;或者识别出一些错误的识别结果,从而降低误报率,提高应用识别的准确性。
实施例一
附图1A和1B是本申请实施例提供的网络流量中的应用信息的识别系统的示意图。该系统中包括终端设备110和网络安全设备120。
网络安全设备120有两种部署方式。第一种是如附图1A所示的直路部署方式,网络安全设备120是一种具有报文转发功能的设备,例如终端设备110可以是位于局域网中的个人计算机或服务器,网络安全设备120是局域网中的防火墙设备。终端设备110也可以是位于互联网中的个人计算机或服务器,网络安全设备120是安全网关。在这种部署方式中,网络安全设备120得到流经该网络安全设备120的数据流后,确定发送该数据流的终端设备中的应用。在本申请后续描述中,这一过程也被简称为网络安全设备120对流经该网络安全设备120的数据流的应用进行识别。进一步地,网络安全设备120中存储有安全策略,当网络安全设备120获得数据流的应用识别结果后,根据安全策略决定对数据流的后续处理方式,例如阻断数据流还是转发数据流。详细过程将在后面的实施例中结合实例进行介绍。
第二种是如附图1B所示的旁路部署方式,网络安全设备120是一个具有流量统计功能的旁路设备,用于对各种应用的流量在总流量中的比例进行统计,并可以进一步得到各种应用的排名信息。网络安全设备120接收报文转发设备发送的镜像数据流,对镜像数据流的应用进行识别,根据识别结果更新统计记录,定期输出统计结果。
无论是附图1A所示的直路部署方式,还是附图1B所示的旁路部署方式,网络安全设备120都需要与终端设备110进行消息交互。下面就网络安全设备120和终端设备110的功能进行介绍。网络安全设备120和终端设备110的功能可以是分别由网络安全设备120和终端设备110中的一个软件模块来实现的,例如网络安全设备120的下述功能是由网络安全设备120中的应用识别模块实现的,终端设备110的功能是由终端设备110中的代理(Agent)实现的。
网络安全设备120,用于接收第一数据流,并获取所述第一数据流的标识,根据所述第一数据流的标识中的源地址或目的地址,向终端设备110发送所述数据流的标识,其中终端设备110的地址为所述第一数据流的标识中的源地址或目的地址。接收终端设备110发送的应用的标识,确定接收到的所述应用的标识为发送第一数据流的应用的标识。
可选地,网络安全设备120中存储有安全策略,安全策略包含允许转发的应用的标识。例如,安全策略允许转发网络浏览器发送的数据流,即允许转发的应用标识是网络浏览器的标识WB,那么当网络安全设备120接收到一个数据流后,如果识别出发送数据流的应用的标识是WB时,转发该数据流,如果识别出发送数据流的应用的标识是P2P客户端的标识P2P,不是WB,阻断该数据流。
网络安全设备120在接收到的第一数据流中的报文时,先采用基于特征的识别技术、启发式识别技术,或关联识别技术等现有应用识别技术对第一数据流进行识别。
如果能够得到识别结果,则判断安全策略是否包含识别出的应用的标识,如果包含识别出的应用的标识,则转发所述第一数据流中的报文,否则阻断所述第一数据流中的报文。网络安全设备120如果根据上述现有的应用识别技术无法得到识别结果,即无法确定发送所述第一数据流的应用的标识,则获取第一数据流的标识,向第一数据流的标识中的源地址所标识的终端设备发送第一数据流的标识,或者向第一数据流的标识中的目的地址所标识的终端设备发送第一数据流的标识,以便通过与终端设备的交互,得到终端设备返回的应用的标识,从而确定发送所述第一数据流的应用的标识为终端设备返回的应用的标识。
需要指出的是,网络安全设备不仅仅可以在无法得到识别结果时,向第一数据流的标识中的源地址所标识的终端设备发送第一数据流的标识,或者向第一数据流的标识中的目的地址所标识的终端设备发送第一数据流的标识。网络安全设备还可以为了提高识别的准确性,例如当采用关联识别技术进行应用识别时,当一条关联识别规则第一次被匹配到时,为了确认该关联识别规则的准确性,向终端设备发送第一数据流的标识,将终端设备后续返回的应用的标识与根据关联识别规则得到的识别结果进行比较,如果相同,则确认该关联识别规则是准确的。
终端设备110,用于获取第一对应表和第二对应表,所述第一对应表中的每条记录保存终端设备110中运行的一个进程的标识和所述进程建立的数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组。
所述第二对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识。在本实施例中,一个应用是指应用软件,OS运行一个应用之后,会创建至少一个进程,每个进程完成一个相对独立的功能。也就是说,一个应用对应至少一个进程。通常而言,一个进程只能被一个应用所创建和使用,只有极少数的系统进程会被多个应用使用,本申请不考虑这种情况,这样的进程不被收录到第一对应表和第二对应表中。
例如,一种名为“搜狗输入法”的应用运行之后,会创建一个名为“SogouCloud.exe”的进程和一个名为“SogouSmartInfo.exe”的进程,其中名为“SogouCloud.exe”的进程用于从网络服务器获得更新的字体库,显示栏图标等信息,名为“SogouSmartInfo.exe”用于从网络服务器获得智能联想规则,用于根据用户已拼写出的词预测用户将要拼写的词,提升输入效率。
每个进程运行后,根据程序代码的设计,有可能不创建数据流,也可能创建一个或多个数据流。也就是说,一个进程可以对应一个数据流或多个数据流。
终端设备110接收网络安全设备发送的第一数据流的标识。在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;终端设备在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;向所述网络安全设备发送所述应用的标识。
下面将参照附图2结合一个具体实例,对本发明提供的网络流量中的应用信息的识别方法进行描述。本实施例中的网络安全设备可以是附图1A或附图1B中的网络安全设备120。
步骤201,网络安全设备发现一条未识别的数据流。具体地,网络安全设备在对数据流进行应用识别时,接收该数据流的至少一个报文。对于其中的每个报文,在根据规则选择性缓存其中的特征之后,将该报文转发出去。当接收到表示数据流即将结束的最后一个报文时,例如报文状态标识为FIN的报文时,或者接收并转发一个数据流中设定数量的报文后,还无法通过现有应用识别技术识别出发送该数据流的应用,则确定该数据流为未识别数据流。
步骤202,网络安全设备获取上述未识别数据流的标识。网络安全设备通过解析已缓存的未识别数据流的报文,获得报文的五元组,即源IP地址,源端口,目的IP地址,目的端口和协议类型,将该五元组作为未识别数据流的标识。例如获得的五元组信息为“tcp192.168.1.211:3020-201.6.8.30:6682”。
步骤203,网络安全设备将数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”封装在一个报文P1中,向所述终端设备发送报文P1。
可选地,网络安全设备可以将数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”发送给IP地址为192.168.1.211的终端设备,也可以将数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”发送给IP地址为201.6.8.30的终端设备,或者将数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”发送给IP地址为192.168.1.211的终端设备和IP地址为201.6.8.30的终端设备。
由于IP地址为192.168.1.211的终端设备和IP地址为201.6.8.30的终端设备可以执行类似的处理步骤,为了简明起见,本实施例后续仅以IP地址为192.168.1.211的终端设备为例进行说明。
步骤204,终端设备接收网络安全设备发送的报文P1,对报文P1进行解析,得到报文P1携带的数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”。
步骤205,终端设备在第一对应表中,查找保存有数据流的标识“tcp192.168.1.211:3020-201.6.8.30:6682”的记录,如果查找到,执行步骤206,如果没有查找到,终止处理。
步骤206,终端设备从查找到的保存有数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”的记录中,获取与该数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”对应的进程的标识SogouCloud.exe。
终端设备中保存有两个对应表,其中第一对应表中的每条记录保存所述终端设备中运行的一个进程的标识和所述进程建立的数据流的标识。第二对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识。显然,终端设备也可以用一个对应表来存储应用的标识、应用创建的进程的标识、以及进程建立的数据流的标识三者的对应关系。本申请仅仅是为了后续描述上的简便,将进程的标识和进程建立的数据流的标识的对应关系保存在第一对应表中,将应用的标识和应用创建的进程的标识的对应关系保存在第二对应表中。当使用一个汇总的对应表保存上述对应关系时,将应用的标识保存在第一列,应用创建的进程的标识保存在第二列,进程建立的数据流的标识保存在第三列。本申请后续实施例中查找第一对应表的过程,相当于在汇总的对应表中的第一列和第二列中查找,后续实施例中查找第二对应表的过程,相当于在汇总的对应表的第二列和第三列中查找。
终端设备中保存的第一对应表如表1所示。终端设备获得第一对应表的过程将在后面结合流程图进行详细描述。
表1
Figure BDA0000893209420000121
终端设备在表1中查找到包含数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”的记录是第1行记录,进而获得第1行记录中的进程的标识SogouCloud.exe。
步骤207,终端设备在第二对应表中,查找保存有进程的标识SogouCloud.exe的记录,如果查找到,执行步骤208,如果没有查找到,终止处理。
步骤208,终端设备从查找到的保存有进程的标识SogouCloud.exe的记录中获取与进程标识SogouCloud.exe对应的应用的标识。在本实施例中,标识可以是该应用的名称“搜狗输入法”。
终端设备中保存的第二对应表如表2所示。第二对应表可以由Agent的软件厂商来收集,研发设计人员可以通过对应用软件的安装包或应用软件运行后进程列表的变化来知晓应用软件运行后开启了哪些进程,从而得到应用标识和进程标识的对应关系。事实上,为了减少终端设备的存储空间,提高执行效率,软件厂商也不需要搜集所有应用标识和进程标识的对应关系,只需要收集常见的、网络流量的应用识别过程中易产生漏报和误报的应用开启了哪些进程的信息就可以了。终端设备中的Agent可以定期从软件厂商的升级网站中得到。
表2
Figure BDA0000893209420000122
终端设备在表2中查找到包含进程的标识SogouCloud.exe的记录是第1行记录,进而获得第1行记录中的应用的名称“搜狗输入法”。应用的标识可以有很多形式,为了描述地更加直观,本实施例中直接用应用的名称来代表应用的标识。在实际应用中,软件厂商为了便于维护,往往会按照预定的分配规则,给每个应用分配一个编号,用编号来代表应用的标识。
步骤209,终端设备将查找到的应用的名称“搜狗输入法”封装到一个报文P2中,向网络安全设备发送报文P2。
由于网络安全设备和终端设备之间有可能并发地进行多次交互,用以对多个不同数据流的应用进行识别,为了网络安全设备处理简便起见,终端设备可以将数据流的标识和针对该数据流确定出的应用的标识封装在同一个报文中发送给网络安全设备,在本实例中终端设备将数据流的标识“tcp192.168.1.211:3020-201.6.8.30:6682”和应用的名称“搜狗输入法”封装到报文P2中,发送给网络安全设备。
步骤210,网络安全设备接收终端设备发送的报文P2,对报文P2进行解析,得到报文P2携带的数据流的标识“tcp 192.168.1.211:3020-201.6.8.30:6682”和应用的名称“搜狗输入法”。
步骤211,网络安全设备根据P2中携带的数据流的标识,在流表中找到相应的记录,将P2中携带的应用的名称作为识别结果填入表中。
网络安全设备会维护一个流表,流表中的每条记录对应一条数据流,记录了数据流的相关信息,例如状态、识别结果等等。在本步骤中,网络安全设备得到了一条识别记录“tcp192.168.1.211:3020-201.6.8.30:6682搜狗输入法”。
可选地,在步骤211网络安全设备得到识别记录之后,为了减少后续网络安全设备与终端设备为同一标识的数据流进行的多次交互,网络安全设备可以生成关联识别规则。
步骤212,网络安全设备生成第一关联识别规则和第二关联识别规则,所述第一关联识别规则包含所述应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包含所述应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组。
后续网络安全设备接收到另一数据流时,例如第二数据流。如果所述第二数据流的目的三元组和源三元组中的至少一个与所述第一关联识别规则和所述第二关联识别规则中任意一个关联识别规则包含的三元组一致,则确定发送所述第二数据流的应用的标识为所述任意一个关联识别规则包含的应用的标识。
本实施例中,第一关联规则为“tcp 201.6.8.30:6682搜狗输入法”,第二关联规则为“tcp192.168.1.211:3020搜狗输入法”。
后续另一终端设备发送了第二数据流,网络安全设备在接收到第二数据流中的报文P3时,根据报文P3提取第二数据流的标识为“tcp 192.168.1.100:3020-201.6.8.30:6682”,第二数据流的目的三元组是“tcp201.6.8.30:6682”。由于第二数据流的目的三元组与第一关联规则中的三元组相同,则网络安全设备可以直接根据第一关联规则确定第二数据流的应用为“搜狗输入法”,无需与终端设备再次进行交互。
本申请实施例提供的网络流量中的应用信息的识别系统中,网络安全设备在接收到一个数据流时,获取该数据流的标识,向所述终端设备发送该数据流的标识。终端设备在存储的第一对应表中,查询到所述未识别数据流的标识对应的进程的标识;在所述第二对应表中查询到应用标识,所述应用标识与所述未识别数据流的标识对应的进程的标识对应;向所述网络安全设备发送所述查询到的应用标识。网络安全设备根据终端设备的反馈,确定上述数据流的应用识别结果。相比于现有技术,上述系统通过网络安全设备和终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
参照附图3A,上述实施例中的终端设备可以通过以下方式来获得表1所示的第一对应表:
步骤31,终端设备获得进程列表。
终端设备通过终端设备上运行的操作系统(operating system,OS)提供的接口,获得终端设备上运行的进程列表。本申请中的“进程”是指正在运行的程序的实例,是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是OS动态执行的基本单元,在传统的OS中,进程既是基本的资源分配单元,也是基本的执行单元。
大多数OS都会提供应用编程接口(Application Programming Interface,API)或命令行命令供应用程序或操作人员得到终端设备上运行的进程列表,例如通过调用Linux操作系统中的“ps”命令可以得到正在运行的进程列表,通过调用Windows操作系统中的EnumProcesses函数可以得到正在运行的进程列表。
步骤32,终端设备获得每个进程创建的数据流的标识。
对于进程列表中的每一个进程,终端设备通过OS提供的接口,获得该进程通过开启端口所建立的当前活动的连接。例如,在Linux操作系统中可以通过“/proc”虚拟文件系统遍历进程打开的连接。在Windows操作系统中通过GetExtendedTcpTable函数可以获取到所有TCP数据流与进程的对应关系,通过GetExtendedUdpTable函数可以获取到所有UDP数据流与进程的对应关系。
将每个当前活动的连接作为一条数据流,将活动的连接的五元组作为数据流的标识。
步骤33,终端设备针对获得的每个进程的标识,生成一个包含所述进程的标识与所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。从而得到第一对应表。
可选地,由于OS系统根据用户的使用情况,随时可能创建进程或退出进程,为了实时更新和维护第一对应表,从而提高终端设备根据网络安全设备发生的未识别的数据流的标识,查找到对应的应用的概率,终端设备通过钩子函数来监控进程的状态,从而更新第一对应表中的记录。附图3B是本实施例提供的第一对应表更新过程的流程图。
附图3B中的步骤31~步骤33与附图3A类似,为了简明起见,在这里不再展开描述。
步骤34,终端设备通过钩子函数获得所述操作系统创建进程的事件。
钩子函数是Windows消息处理机制的一部分,通过设置“钩子”,Agent或其他应用程序可以在系统级对所有消息、事件进行过滤,访问在正常情况下无法访问的消息。钩子函数的本质是一段用以处理系统消息的程序,通过系统调用,把钩子函数挂入系统。
步骤35,终端设备从创建进程的事件中获得新创建的进程的标识。终端设备通过OS提供的接口,获得该新创建的进程通过开启端口所建立的当前活动的连接。将每个当前活动的连接作为一条数据流,将活动的连接的五元组作为数据流的标识。
步骤36,终端设备获得该新创建进程创建的数据流的标识,生成一个包含所述新创建进程的标识和所述新创建进程创建的所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。
步骤37,终端设备通过钩子函数获得所述操作系统退出进程的事件。
步骤38,终端设备从退出进程的事件中获得退出进程的标识,从所述第一对应表中删除包含所述退出进程的标识的记录。
可选地,为了实时更新和维护第一对应表,终端设备还可以通过钩子函数来监控网络报文,从而更新第一对应表中的记录,在每条记录中增加数据流的建立时间和最后活动时间信息。从本实施例后面的步骤可以看出,数据流的最后活动时间可以用于对第一对应表中的记录进行老化,数据流的建立时间可以用于其他目的的分析。如步骤39~步骤315所示。
步骤39,终端设备通过钩子函数获得传输的报文,具体的传输的报文可以是发送的报文或接收的报文。为了进一步减少后续数据处理量,可以只捕获协议类型为传输控制协议(Transmission Control Protocol,TCP)或用户数据报协议(User DatagramProtocol,UDP)的报文。
步骤310,终端设备从获得的报文中解析得到报文状态标识和报文所属数据流的标识。具体地,本实施例中状态标识是指四层协议的状态标识,四层协议可以从报文的IP头的protocol字段获取,例如TCP、UDP。TCP的状态标识可以从报文的TCP头的flags字段获得,状态标识可以为FIN、RST等。更详细的报文状态标识的说明可以参考RFC文档,例如RFC793。
终端设备从获得的报文中提取五元组,将提取的五元组作为报文所属数据流的标识。
步骤311,终端设备判断报文的报文状态标识是否为FIN,如果为FIN,则执行步骤312,如果报文状态标识不是FIN,则执行步骤313。
步骤312,如果所述报文状态标识为FIN,则将所述第一对应表中包含所述报文所属数据流的标识的记录删除,处理结束。
步骤313,终端设备根据获得的数据流的标识,在表1所示的第一对应表中查找包含该数据流的标识的记录。如果查找到记录,说明是该报文属于一条已建立的数据流,执行步骤314,如果未查找到记录,说明该报文属于一条新建立的数据流,执行步骤315。
步骤314,终端设备将查找到的记录中,数据流的最后活动时间更新为当前时间。
事实上,根据数据流的最后活动时间来进行删除过期记录,以及根据报文状态标识FIN来删除记录是两种可以并存的、可选择性的记录删除方式。
例如,通过钩子函数获得了一个TCP报文P4,从报文P4中提取的五元组是“tcp192.168.1.211:6122-168.3.56.120:1138”。在表1中查找到包含五元组“tcp192.168.1.211:6122-168.3.56.120:1138”的记录是第9条记录,将第9条记录中的最后活动时间更新为当前时间21:00:3456,更新后的第一对应表如表3所示。
表3
Figure BDA0000893209420000151
步骤315,终端设备刷新第一对应表,在刷新后的第一对应表中查找到包含步骤310中获得的数据流的标识的记录,将该记录中的数据流的建立时间和最后活动时间设置为当前时间。
对于大多数OS而言,无法根据一个五元组直接查找到创建该五元组所标识的数据流的进程,这时OS系统需要重新刷新进程列表,针对刷新后的进程列表中的每个进程,重新获得该进程建立的所有连接,从而得到刷新后的第一对应表,然后根据步骤310中获得的数据流的标识,在刷新后的第一对应表中查找到包含步骤310中获得的数据流的标识的记录。
例如,终端设备通过钩子函数获得了一个TCP报文P5,从报文P5中提取的五元组是“tcp192.168.1.211:6123-168.3.56.120:1138”。在表1中未查找到包含五元组“tcp192.168.1.211:6123-168.3.56.120:1138”的记录,刷新第一对应表,如表4所示,在表4中查找到包含五元组“tcp 192.168.1.211:6123-168.3.56.120:1138”的是第10条记录,将第10条记录中的建立时间和最后活动时间均设置为当前时间21:01:3456,更新后的第一对应表如表4所示。
表4
Figure BDA0000893209420000161
可选地,为了节约中的终端设备中第一对应表占用的存储空间,终端设备可以定时根据第一对应表中的数据流的最后活动时间,删除过期记录,过期记录是指最后活动时间和当前时间之间的时间间隔超过预定时间的数据流对应的记录,即长时间没有活动的数据流,对应的记录:
终端设备判断根据检测周期确定的预定时间是否到达,若到达则执行定时清除任务,即针对如表4所示第一对应表中的每条记录,判断数据流的最后活动时间与当前时间之间的时间间隔是否超过设定阈值,若超过,则删除该条记录;若未到达,则返回执行步骤301。
需要说明的是,附图3B中步骤31~步骤33组成的第一子流程,步骤34~步骤36组成的第二子流程,步骤37~步骤38组成的第三子流程,步骤39~步骤315组成的第四子流程之间是相互无依赖关系的、可以选择性执行的。例如可以只执行第一子流程和第二子流程,也可以只执行第一子流程和第三子流程。
可选地,虽然采用本实施例提供的方案,通过网络安全设备与终端设备之间的交互,可以大大降低无法识别的流量在总流量中所占的比例。但是本实施例提供的方案需要网络安全设备和终端设备之间进行交互,与现有技术网络安全设备根据本地存储的规则进行应用识别的方式相比,所需要的延时较长,也需要消耗一定的网络传输资源。如果能够得到发送网络安全设备无法识别的数据流的进程发送的多个完整的数据流,那么就有可能可以通过人工分析得到规则。对于通过人工分析获得基于特征的识别规则,或启发式识别规则而言,获得同一个应用发送的多个完整的数据流至关重要,完整的数据流是指从连接建立协商阶段通信双方发送的第一个报文,直至连接断开发送的最后一个报文之间的所有数据包。然而现有网络安全设备出于存储空间和性能的考虑,并不能缓存数据流的多个报文,例如现有的基于特征的识别技术或启发式识别技术,往往也只是从接收到的报文中提取特征后,对提取的特征进行缓存,而对报文进行转发。现有终端设备上的抓包技术抓取一个完整的未识别数据流是相对困难的,因为无法确定要抓取哪一个数据流,以及难以准确定位一个未识别数据流的开始和结束。如果为了抓取一个未识别数据流,保存终端设备相当长时间内发送和接收的所有报文,将极大占用终端设备的存储资源和处理资源。而如果采用抽样抓包的技术,虽然节省了资源,但是会漏掉数据流中的大部分数据包,造成规则提取困难或不准确。对于这个问题,本申请提供了附图4所示的一种方案,能够有针对性的抓取一个进程发送的数据流的全部报文,同时不会占用终端设备中的大量资源。
可选地,附图4在附图2的基础上,在步骤206,终端设备接收到网络设备发送的报文P1,并确定创建标识为“tcp 192.168.1.211:3020-201.6.8.30:6682”的数据流的进程的标识是SogouCloud.exe之后,还包括:
步骤401,终端设备在表1所示第一对应表中为进程SogouCloud.exe设置报文采集标识。报文采集标识用于所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。后面将结合具体例子,对报文采集标识的作用进行说明。设置报文采集标识之后的第一对应表如表5所示。
表5
Figure BDA0000893209420000171
在本实施例中,以报文采集标识为“1”进行举例说明。在具体实施过程中,可以在最初生成第一对应表时,为所有进程标识对应的设置报文采集标识为“0”,在步骤206之后,将查找到的记录中的进程标识对应的报文采集标识更新为“1”。当然也可以采用其他的设置方式,总之只要能够在步骤206之后,为查找到的记录中的进程标识设置与此前不同的标识进行区分即可。
步骤49,终端设备通过钩子函数获得传输的报文,具体的传输的报文可以是发送的报文或接收的报文。该步骤与附图3B中的步骤39类似,在这里不再赘述。
步骤410,终端设备从获得的报文中提取数据流标识。具体地,终端设备从获得的报文中提取五元组。
步骤411,终端设备根据获得的数据流的标识,在表5所示的第一对应表中查找包含该数据流的标识的记录。如果查找到,可以如附图3B中的步骤314所示更新记录。如果未查找到记录,说明该报文属于一条新建立的数据流,终端设备刷新第一对应表,在刷新后的第一对应表中查找到包含步骤310中获得的数据流的标识的记录。
例如,终端设备通过钩子函数获得了一个TCP报文P6,从报文P6中提取的五元组是“tcp192.168.1.211:3011-201.6.8.30:6682”。在表5中未查找到包含五元组“tcp192.168.1.211:3011-168.3.56.120:1138的记录”,刷新第一对应表,如表6所示,在表6中查找到包含五元组“tcp 192.168.1.211:3011-201.6.8.30:6682”的是第1条记录。
表6
Figure BDA0000893209420000172
Figure BDA0000893209420000181
无论是否在第一对应表中查找到包含该数据流的标识的记录,在步骤411之后,都可以得到一条包含有该数据流的标识的记录,从该记录中获取包含的进程的标识,在本实施例中,获取的进程标识是SogouCloud.exe。
步骤420,终端设备判断第1条记录中的进程标识SogouCloud.exe是否被设置了报文采集标识。若设置了报文采集标识,则执行步骤421。若未设置报文采集标识,则结束。
步骤421,终端设备清除报文采集标识,并开始针对标识为SogouCloud.exe的进程进行抓包。
在本实施例中终端设备清除表6中的报文采集标识,得到表7,清除报文采集标识的目的是为了避免针对一个进程进行长时间抓包。
表7
Figure BDA0000893209420000182
可选地,为了进一步避免长时间的对同一个进程进行抓包,可以设置一个抓包时间间隔,在执行步骤421之前终端设备判断距离上一次针对同一个进程进行抓包的动作是否超过了设定的抓包时间间隔,若超过,则进行抓包,若未超过则跳过本步骤,即暂不清除抓包标记且暂不执行抓包,结束本次处理。
步骤422,终端设备保存抓包结果,以便后续进行人工分析。终端设备在具体实施针对一个特定进程抓包时,可以根据预设的抓包策略进行抓包,例如,捕获该进程在预定时间段内传输的数据包后结束抓包,或者捕获该进程传输的数据包达到预定的数据量后结束抓包。
在这里需要说明的是附图3B所示的第一对应表的更新方法和附图4所示的抓包方法可以单独执行,也可以相结合执行。
本实施例提供的上述抓包方法,能够在终端设备中获得关于特定进程的多个完整的数据流,以供后续通过人工分析得到基于特征的识别规则,或启发式识别规则,将得到的规则应用于网络安全设备后,可以改善应用识别的效果。
本申请实施例还提供了一种终端设备,如附图5A所示,该终端设备包括存储器510、处理器520和网络接口530,所述存储器510、处理器520和网络接口530通过总线540相互通信。
存储器510包括但不限于是随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、或便携式只读存储器(CD-ROM)。
处理器520可以是一个或多个中央处理器(Central Processing Unit,简称CPU),在处理器520是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
网络接口530可以是有线接口,例如光纤分布式数据接口(Fiber DistributedData Interface,简称FDDI)、千兆以太网(Gigabit Ethernet,简称GE)接口;网络接口530也可以是无线接口。如果终端设备是个人计算机,网络接口530可以是上述有线接口也可以是基于IEEE 802.11b的无线局域网(Wireless Fidelity,WiFi)模块。如果终端设备是手机等移动终端,网络接口530可以是由基带芯片和射频天线组成的硬件模块。
存储器510用于存储程序代码、第一对应表和第二对应表。第一对应表和第二对应表的定义请参见上述实施例中的描述,这里不再重复。
网络接口530,用于接收网络安全设备发送的第一数据流的标识。
所述处理器520读取所述存储器510中存储的程序代码,执行:
在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识。
所述网络接口530,还用于向网络安全设备发送处理器520获取的应用的标识。
可选地,处理器520可以采用上述附图3A、3B及相关描述的方法来获得第一对应表,以及更新第一对应表。
可选地,处理器520可以采用附图4及相关描述的方法来获得完整数据流的报文。
本申请实施例还提供了一种终端设备,如附图5B所示。该终端设备包括存储模块560、接收模块570、处理模块580和发送模块590。需要说明的是这些模块为功能相对独立的逻辑模块,既可以是终端设备中的CPU读取存储中的软件代码并运行后生成的,也可以是由硬件组件来实现的。具体地:
存储模块560,用于存储第一对应表和第二对应表,第一对应表保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组。
接收模块570,用于接收网络安全设备发送的第一数据流的标识。
处理模块580,用于在存储模块560存储的所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识。
发送模块590,用于向所述网络安全设备发送所述应用的标识。
可选地,处理模块580可以采用上述附图3A、3B及相关描述的方法来获得第一对应表,以及更新第一对应表。
可选地,处理模块580可以采用附图4及相关描述的方法来获得完整数据流的报文。
附图5A和5B所提供的终端设备可以作为附图1A或1B中的终端设备110。
本申请实施例提供的终端设备接收到网络安全设备发送的数据流的标识后,根据终端设备保存的第一对应表和第二对应表,查找到应用的标识,将查找到的应用的标识发送给网络安全设备。通过网络安全设备和终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
本申请实施例还提供了一种网络安全设备,如附图6A所示,该网络安全设备包括存储器610、处理器620和网络接口630,所述存储器610、处理器620和网络接口630通过总线640相互通信。
存储器610包括但不限于是随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、或便携式只读存储器(CD-ROM)。
处理器620可以是一个或多个中央处理器(Central Processing Unit,简称CPU),在处理器520是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
网络接口630可以是有线接口,例如光纤分布式数据接口(Fiber DistributedData Interface,简称FDDI)、千兆以太网(Gigabit Ethernet,简称GE)接口;网络接口630也可以是无线接口。
网络接口630,用于接收第一数据流。
处理器620,用于获取第一数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组。
网络接口630,还用于根据第一数据流的标识中的源地址或目的地址,向终端设备发送所述数据流的标识,所述终端设备的地址为所述第一数据流的标识中的源地址或目的地址。
可选地,处理器620在采用现有应用识别技术无法识别出发送第一数据流的应用时,指示网络接口630向所述终端设备发送所述数据流的标识。
所述网络接口630,还用于接收终端设备发送的应用的标识。
处理器620,还用于确定网络接口630接收到的所述应用的标识为发送所述第一数据流的应用的标识,从而得到第一数据流的应用识别结果。
本申请实施例还提供了一种网络安全设备,如附图6B所示。该网络安全设备包括接收模块660、处理模块670、和发送模块680。需要说明的是这些模块为功能相对独立的逻辑模块,既可以是终端设备中的CPU读取存储中的软件代码并运行后生成的,也可以是由硬件组件来实现的。具体地:
接收模块660,用于接收第一数据流。
处理模块670,用于获取第一数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组。
发送模块680,用于根据第一数据流的标识中的源地址或目的地址,向终端设备发送所述数据流的标识,所述终端设备的地址为所述第一数据流的标识中的源地址或目的地址。
可选地,处理模块670在采用现有应用识别技术无法识别出发送所述第一数据流的应用时,指示发送模块680向终端设备发送所述数据流的标识。
接收模块660,还用于收终端设备发送的应用的标识。
处理模块670,还用于确定网络接口660接收到的应用的标识为发送所述第一数据流的应用的标识,从而得到第一数据流的应用识别结果。
附图6A和6B所提供的网络安全设备可以作为附图1A或1B中的网络安全设备120。附图6A和6B所提供的网络安全设备与终端设备的交互过程请参照附图2及相关描述。
本申请实施例提供的网络安全设备在采用现有应用识别技术无法识别出发送数据流的应用时,向终端设备发送数据流的标识,接收终端设备发送的应用的标识,将接收到的所述应用的标识作为发送数据流的应用的标识,从而得到数据流的应用识别结果。通过网络安全设备和终端设备之间的交互,能够识别出更多的应用,从而降低了未识别流量在总流量中所占的比例,改善了网络流量的识别效果。
实施例二
附图7是本申请实施例提供的网络流量中的应用信息的识别系统的示意图。该系统中包括终端设备710、网络安全设备720和数据处理设备730。与附图1A和附图1B所示的识别系统相比,增加了一个数据处理设备730。数据处理设备730可以作为一个逻辑模块,集成于网络安全设备720或终端设备710中,也可以作为一个独立的实体设备单独部署,只要保证能够分别与终端设备710和网络安全设备720进行通信即可。
现有技术要实现发现网络安全设备错误识别结果这一目的,只能使用仅包含待识别应用产生的、没有混杂其他应用的流量,对网络安全设备对该待识别应用的识别效果进行测试。而且无法估算混杂流量情况下的识别效果。
本实施例中增加数据处理设备730的主要目的在于通过对来自于终端设备710的信息和来自于网络安全设备720的信息进行综合分析,从而识别出网络安全设备720的错误识别结果。
首先需要说明的是,终端设备710与实施例一中的终端设备110有一定类似之处,网络安全设备720与实施一中的网络安全设备120也有一定类似之处,为了简明起见,在本实施例中着重对与实施例一中的不同之处进行详述,对于可以参照实施例一中类似的内容简单描述。
在附图7所示的识别系统中,网络安全设备720,用于接收第一数据流,确定发送第一数据流的应用的标识后,生成第一识别记录,所述第一识别记录包含所述第一数据流的标识与所述应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,向所述处理设备发送所述第一识别记录。其中,网络安全设备720可以采用基于特征的识别技术、启发式识别技术,或关联识别技术等现有应用识别技术对第一数据流进行识别,从而确定发送第一数据流的应用的标识。
所述终端设备710,用于获取本终端设备上的进程的标识以及所述进程创建的第二数据流的标识,生成第二识别记录,所述第二识别记录包含第二数据流的标识与进程的标识;以及获取对应表,所述对应表中的每条记录保存一个应用的标识与所述应用创建的进程的标识;向所述数据处理设备发送所述第二识别记录和对应表。容易理解,本实施例中的对应表即为实施例一中的第二对应表。在本实施例中为了保持与实施例一中各对应表命名的一致性,仍保留第二对应表的名称。
本实施例中的第二识别记录可以是实施例一中第一对应表中的一条记录,终端设备710获得第一对应表的过程请参见实施例一中的相关内容,终端设备710可以在获得第一对应表后,将第一对应表作为一个文件整体发送给数据处理设备730,也可以选择性地将第一对应表中的一条记录或多条记录发送给数据处理设备730,在这里不进行限制。
数据处理设备730,用于接收来自于网络安全设备720的第一识别记录;接收来自于终端设备710的第二识别记录和对应表。如果第一识别记录中包含的第一数据流的标识与第二识别记录中包含的第二数据流的标识相同,在对应表中查询是否存在第一关联记录,第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识。如果不存在第一关联记录,则确定第一识别记录为错误识别记录。
可选地,在数据处理设备730确定第一识别记录为错误识别记录之后,还可以向终端设备710发送所述第二识别记录中包含的进程的标识,以便终端设备710为该进程的标识设置抓包标记,后续抓取该进程的标识所代表的进程发送的多个完整的数据流,进行人工分析。具体抓包过程请参考实施例一附图4及相关描述,在这里不再重复。
可选地,为了减少后续网络安全设备因为同一关联识别规则导致重复地向数据处理设备发送相同的错误识别记录,造成占用数据处理设备与网络安全设备之间的传输资源,可以网络安全设备可以在发送给数据处理设备的第一识别记录中增加识别方式的标识,数据处理设备当确认错误识别结果是由于关联识别规则导致的之后,通知网络安全设备删除相应的关联识别规则,从而避免后续出现相同原因造成的错误识别结果。具体地:
来自于网络安全设备720的第一识别记录还包含识别方式的标识,所述识别方式包括关联识别、特征识别和启发式识别。
关联识别方式是指网络安全设备720根据报文的IP地址、端口号与应用的对应关系,对发送报文的应用进行识别。例如,网络安全设备720通过对FTP控制通道中的控制报文进行解析,可以得到即将建立的数据通道所使用的IP地址和端口号,在关联表中添加获得的IP地址和端口号与FTP客户端名称,例如FileZilla的对应关系。接收到后续报文后,在关联表中查询是否存在该报文携带的IP地址和端口号,如果关联表中存在该报文携带的IP地址和端口号,则将关联表中该报文携带的IP地址和端口号对应的FileZilla作为发送该报文的应用。
在第一识别记录还包含识别方式的标识的情况下,在数据处理设备730确定第一识别记录为错误设备记录之后,还可以如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则,所述第一关联识别规则包含所述第一识别记录包含的第一数据流的标识。
在本申请实施例提供的网络流量中的应用信息的识别系统中,数据处理设备接收来自于网络安全设备的第一识别记录和来自于终端设备的第二识别记录和对应表,如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识,如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。数据处理设备通过比较终端设备和网络安全设备的识别记录,能够识别出现有技术难以发现的网络安全设备的错误识别记录,改善了网络流量的识别效果。
下面将参照附图8A和附图8B结合一个具体实例,对本实施例提供的网络流量中的应用信息的识别方法进行描述。本实施例中的终端设备可以是附图7中的终端设备710,网络安全设备可以是附图7中的网络安全设备720,数据处理设备可以是附图7中的数据处理设备730。
附图8A以详细时序交互图的方式对本实施例提供的识别方法进行描述。
步骤801,网络安全设备接收到第一数据流中的报文P10后,基于关联识别技术对第一数据流进行应用识别,得到识别结果,即第一识别记录“tcp 192.168.1.211:3020-201.6.8.30:6682暴风影音A”。
第一识别记录可以是网络安全设备接收到第一数据流后,采用基于特征的识别技术、启发式等识别技术、或关联识别技术得到的规则对第一数据流进行识别后得到的。网络安全设备可以依次采用各种现有识别技术对报文进行识别,直到能够得到识别结果,例如网络安全设备先采用基于特征的规则对报文进行识别,当无法得到识别结果时,即报文中的特征与任何一个基于特征的规则中的规则均不一致时,采用启发式规则对报文进行识别,当无法得到匹配结果时,再次尝试利用关联识别规则对报文进行识别。当然,如果网络安全设备先采用基于特征的规则对报文进行识别,就能够得到匹配结果,则生成识别记录,处理结束。网络安全设备选择识别技术时的顺序没有特别限定。
在本实施例中,第一识别记录是网络安全设备根据第一关联识别规则识别出的,第一关联识别规则为“tcp 201.6.8.30:6682暴风影音”。网络安全设备在接收到报文P10后,从报文中获得目的三元组和源三元组,将目的三元组或源三元组与第一关联识别规则匹配,如果目的三元组或源三元组中的任意一个与第一关联识别规则中的三元组一致,则确定报文P10所属的第一数据流是终端设备中的暴风影音发送的。
本实施例中,关联识别方式的标识是A,基于特征的识别方式的标识是B、启发式识别技术的标识是C。
步骤802,网络安全设备将第一识别记录“tcp 192.168.1.211:3020-201.6.8.30:6682暴风影音A”携带在报文P11中,向数据处理设备发送P11。
步骤803,数据处理设备接收到报文P11后对报文P11进行解析,得到报文P11携带的第一识别记录“tcp 192.168.1.211:3020-201.6.8.30:6682暴风影音A”。
步骤804,数据处理设备接收来自于终端设备的第二识别记录“tcp192.168.1.211:3020-201.6.8.30:6682SogouCloud.exe”和第二对应表。
需要说明的是,第二识别记录和第二对应表可以是分别发送的。例如,第二对应表是在终端设备中的Agent初始化完成之后发送的,或者终端设备中的Agent检测到实施例一中表2所示的第二对应表发生变化后发送的。
如果终端设备被配置为定期将维护的实施例一中表1所示的第一对应表作为一个整体文件包发送给数据处理设备,第二识别记录可以是终端设备发送的第一对应表中的一条记录。
数据处理设备也可以在接收到来自于网络安全设备的第一识别记录后,提取其中的五元组,将五元组发送给终端设备,指示终端设备将包含该五元组的第一对应表中的记录返回给数据处理设备。
终端设备向数据处理设备发送第二识别记录的具体方式在这里不进行限定。
步骤805,数据处理设备确定所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同。
具体地,如果终端设备被配置为定期将维护的实施例一中表1所示的第一对应表作为一个整体文件包发送给数据处理设备,则数据处理设备根据第一识别记录中的五元组,从整体文件包中查询到一个包含五元组tcp 192.168.1.211:3020-201.6.8.30:6682的记录作为第二识别记录。
如果终端设备单独发送第二识别记录,则数据处理设备接收到网络安全设备发送的第一识别记录后,与此前预定时间段内接收到的来自于终端设备的至少一个识别记录进行比较,确定存在一个识别记录,其携带的数据流的标识与第一识别记录中包含的数据流的标识相同,则将该识别记录作为第二识别记录。
步骤806,数据处理设备在第二对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识。
如果存在,说明第一识别记录是正确的识别记录,继续处理网络安全设备发送的下一条识别记录;否则说明第一识别记录是错误的识别记录。
具体地,数据处理设备确定第二对应表中是否存在一条关联记录,该关联记录中保存有第一识别记录中的应用标识“暴风影音”与第二识别记录中的进程标识“SogouCloud.exe”的关联记录,在本实施例中,表2所示的第二关联表中并不存在同时包含“暴风影音”和“SogouCloud.exe”的记录。
如果数据处理设备确定出一条来自于网络安全设备的识别记录是错误的识别记录,可以执行步骤807,810或步骤808~步骤809组成的子流程中的至少一个。换句话说,步骤807,810或步骤808~步骤809组成的子流程均是可选地,而且在执行顺序上也没有特别限定。
步骤807,数据处理设备向终端设备发送携带有所述第二识别记录中包含的进程的标识SogouCloud.exe的报文P12,以便终端设备为该进程的标识设置抓包标记,后续抓取该进程的标识所代表的进程发送的多个完整的数据流,进行人工分析。具体抓包过程请参照附图4中步骤49至步骤422的描述。
步骤808,数据处理设备判断第一识别记录中携带的识别方式的标识是否为关联识别方式的标识,如果第一识别记录中携带的识别方式的标识是关联识别方式的标识,则执行步骤809,否则结束本次处理。
步骤809,数据处理设备向所述网络安全设备发送通知消息P13,所述通知消息用于通知所述网络安全设备删除第一关联识别规则“tcp 201.6.8.30:6682暴风影音”。
具体地,通知消息中可以携带第一识别记录中的数据流的标识和一个删除指令,例如“201.6.8.30:6682D”,其中D为删除指令。
步骤810,数据处理设备还统计错误识别记录的次数,在每次确定出一次错误识别记录后,对当前错误识别记录的次数加1。
可选地,数据处理设备在步骤806中确定是正确的识别记录的情况下,也可以对当前正确识别记录的次数加1。这样根据错误识别记录的次数和正确识别记录的次数,就可以计算出预定时间段内的误报率。
数据处理设备还可以通过输出接口,例如显示器,或打印机,定期将错误识别记录和误报率输出,以供管理人员分析。
步骤811,网络安全设备接收到通知消息P13后,删除第一关联识别规则“tcp201.6.8.30:6682暴风影音”或第二关联规则“tcp 192.168.1.211:3020暴风影音”。
可选地,在步骤806,数据处理设备确定第一识别记录是错误的识别记录之后,还可以为网络安全设备生成正确的关联识别规则。以便于提高网络安全设备后续识别的效果,具体地,
812,数据处理设备在所述对应表中查询是否存在第二关联记录,所述第二关联记录中保存有第二识别记录中包含的进程的标识。如果存在第二关联记录,执行步骤813,否则处理结束。
步骤813,数据处理设备生成第三关联规则或第四关联规则,所述第三关联规则包括所述第二关联记录中的应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第四关联规则包括第二关联记录中的应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组。
在本实例中,表2所示的第二对应表中的第1行记录包括“SogouCloud.exe”,第1行记录中包含的应用的标识是“搜狗输入法”。
生成的第三关联规则是“tcp 201.6.8.30:6682搜狗输入法”,第四关联规则是“tcp 192.168.1.211:3020搜狗输入法”。
步骤814,数据处理设备向所述网络安全设备发送所述第三关联识别规则或第四关联识别规则。
附图8B描述的是数据处理设备执行的识别方法的另一流程图。可以理解在附图8A的基础上,附图8B中的步骤821~步骤829是数据处理设备针对网络安全设备和终端设备发送的另外两条识别记录进行的描述。
步骤821,网络安全设备接收到第三数据流中的报文P20后,基于现有基于特征的识别技术对第三数据流进行应用识别,无法得到识别结果,则生成第三识别记录“tcp192.168.1.211:6120-168.3.56.120:1138Unidentified”,其中Unidentified是未识别标识,用于表征所述网络安全设备未识别出发送所述第三数据流的应用。
步骤822,网络安全设备将第三识别记录“tcp 192.168.1.211:6120-168.3.56.120:1138Unidentified”携带在报文P21中,向数据处理设备发送P21。
步骤823,数据处理设备接收到报文P21,从报文P21中获取携带的第三识别记录“tcp192.168.1.211:6120-168.3.56.120:1138Unidentified”。
步骤824,数据处理设备接收来自于终端设备的第四识别记录“tcp192.168.1.211:6120-168.3.56.120:1138kxescore.exe”。
这里假设如表2所示的第二对应表已保存在数据处理设备中。
步骤825,数据处理设备确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同。
步骤826,数据处理设备在第二对应表中查询是否存在第三关联记录,所述第三关联记录中保存有第四识别记录中包含的进程的标识。
如果存在第二关联记录,可以择一选择执行步骤827~步骤828组成的子流程,或者步骤829~步骤830组成的子流程。
在本实施例中,表2中的第3条记录包含“kxescore.exe”。
步骤827,数据处理设备生成第五关联识别规则或第六关联识别规则,所述第五关联识别规则包含所述第六关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组。
在本实施例中,第五关联识别规则为“tcp 168.3.56.120:1138华为安全卫士”,第六关联识别规则为“tcp 192.168.1.211:6120华为安全卫士”。
步骤828,数据处理设备向网络安全设备发送第五关联识别规则或第六关联识别规则。
步骤829,数据处理设备将所述第三数据流的标识和所述第三关联记录中包含的应用的标识携带在报文P22中发送给所述网络安全设备。
步骤830,网络安全设备接收到报文P22后,根据报文P22生成第五关联识别规则或第六关联识别规则。
所述第五关联识别规则包含报文P22中携带的应用的标识和由报文P122中携带的第三数据流的目的地址、目的端口和协议号组成的三元组。第六关联识别规则包含报文P22携带的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组。
这里需要指出的是,如实施例一中附图2中步骤212,以及实施例二中附图8A步骤813,附图8B中步骤827~步骤828,或步骤829~步骤830所示的根据识别记录生成新的关联识别规则的方式,在具体实施时为了减少后续因为关联规则生成的误识别的几率,可以根据多条存在共性的识别记录生成关联识别规则,而不是得到一条识别记录就立即生成关联识别规则。
举例来说,数据处理设备在步骤826确定出一条正确的识别记录时,生成临时关联识别规则并存储,并为每条临时关联识别规则设置一个计数值,如表8所示。
表8
序号 临时关联识别规则 计数值
1 tcp 168.3.56.120:1138华为安全卫士 1
2 tcp 192.168.1.211:6120华为安全卫士 1
3 …… ……
当后续数据处理设备再次执行附图8B所示的流程,生成其他临时关联识别规则时,在表8中存储临时关联识别规则时,先查找表8中是否已存在相同的临时关联识别规则,若存在,则将该临时关联识别规则对应的计数值加1,如果不存在,则在表8中新添加一条记录,将计数值设置为1。
数据处理设备设置一个阈值,例如10,当表8中的一条记录的计数值超过该阈值后,表明该临时关联识别规则具有普遍性,再将该临时关联识别规则作为可以用于网络安全设备对后续接收到的数据流进行应用识别的正式的关联识别规则。
在本申请实施例提供的网络流量中的应用信息的识别方法中,数据处理设备接收来自于网络安全设备的第一识别记录和来自于终端设备的第二识别记录和对应表,如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识的关联记录,如果不存在,确定所述第一识别记录为错误识别记录。通过上述过程,能够发现网络安全设备的错误识别记录,改善应用识别的效果。
本申请实施例还提供了一种数据处理设备,如附图9A所示,该数据处理设备包括存储器910、处理器920和网络接口930,所述存储器910、处理器920和网络接口930通过总线940相互通信。
存储器910包括但不限于是随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、或便携式只读存储器(CD-ROM)。
处理器920可以是一个或多个中央处理器(Central Processing Unit,简称CPU),在处理器920是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
网络接口930可以是有线接口,例如光纤分布式数据接口(Fiber DistributedData Interface,简称FDDI)、千兆以太网(Gigabit Ethernet,简称GE)接口;网络接口930也可以是无线接口。
网络接口930,用于接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识。接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识。
所述处理器920读取所述存储器910中存储的程序代码,执行:
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。
可选地,所述网络接口930还用于如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
数据处理设备还可以与网络安全设备和终端设备交互,识别出现有技术无法识别出的流量,可选地,所述网络接口930还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识。
所述处理器920,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
所述网络接口930,还用于如果所述处理器确定存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
本申请实施例还提供了一种数据处理设备,如附图9B所示。该终端设备包括接收模块970、处理模块980。需要说明的是这些模块为功能相对独立的逻辑模块,既可以是终端设备中的CPU读取存储中的软件代码并运行后生成的,也可以是由硬件组件来实现的。
具体地:
接收模块970,用于接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识。接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识。
处理模块980,用于如果接收模块970接收的第一识别记录中包含的第一数据流的标识与第二识别记录中包含的第二数据流的标识相同,在对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;如果不存在第一关联记录,确定第一识别记录为错误识别记录。
可选地,附图9B所示的数据处理设备还包括发送模块990,用于如果所述第一识别纪录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
数据处理设备还可以与网络安全设备和终端设备交互,识别出现有技术无法识别出的流量,可选地,接收模块970还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识。
所述处理模块980,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识。
所述发送模块990,还用于如果处理模块980确定存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
附图9A和9B所提供的数据处理设备可以作为附图7中的数据处理设备730。
数据处理设备的其他附加功能,以及与网络安全设备和终端设备的详细交互过程请参照附图8A、8B以及相关描述,在这里不再重复。
本申请实施例提供的数据处理设备接收来自于网络安全设备的第一识别记录和来自于终端设备的第二识别记录和对应表,如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识的关联记录,如果不存在,确定所述第一识别记录为错误识别记录。通过上述过程,能够发现网络安全设备的错误识别记录,改善应用识别的效果。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (31)

1.一种网络流量中的应用信息的识别方法,所述方法由终端设备执行,其特征在于,所述终端设备中的第一对应表以记录的方式保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表以记录的方式保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,
所述方法包括:
接收网络安全设备发送的第一数据流的标识;
在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;
在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;
向所述网络安全设备发送所述应用的标识。
2.根据权利要求1所述的方法,其特征在于,所述终端设备通过以下步骤获得所述第一对应表:
所述终端设备通过操作系统提供的接口,获得所述终端设备中运行的至少一个进程的标识;
针对获得的每个进程的标识,所述终端设备获得该进程创建的数据流的标识,生成一个包含所述进程的标识和所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。
3.根据权利要求2所述的方法,其特征在于,所述终端设备通过以下步骤获得所述第一对应表:
所述终端设备通过钩子函数获得所述操作系统创建进程的事件;
从所述创建进程的事件中获得新创建的进程的标识;
获得该新创建进程创建的数据流的标识,生成一个包含所述新创建进程的标识和所述新创建进程创建的所述数据流的标识的记录;并将所述记录保存在所述第一对应表中;
所述终端设备获取第一对应表,还包括:
所述终端设备通过钩子函数获得所述操作系统退出进程的事件;
从所述退出进程的事件中获得退出进程的标识,从所述第一对应表中删除包含所述退出进程的标识的记录。
4.根据权利要求1至3任一所述的方法,其特征在于,所述第一对应表中的记录还包含数据流的最后活动时间;所述方法还包括:
所述终端设备确定所述第一对应表中的过期记录,所述过期记录是指包括的数据流的最后活动时间和当前时间之间的时间间隔超过预定时间间隔的记录;
删除所述过期记录。
5.根据权利要求4所述的方法,其特征在于,所述终端设备获取所述第一对应表之后,还包括:
所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文所属数据流的标识;
将所述第一对应表中包含所述报文所属数据流的标识的记录中数据流的最后活动时间更新为当前时间。
6.根据权利要求1至3任一所述的方法,其特征在于,所述终端设备获取所述第一对应表之后,还包括:
所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文状态标识和报文所属数据流的标识;
如果所述报文状态标识为FIN,则删除所述第一对应表中包含所述报文所属数据流的标识的记录。
7.根据权利要求1至3中任一所述的方法,其特征在于,所述获取所述第一记录中的进程的标识之后,还包括:
为所述进程的标识设置报文采集标识,所述报文采集标识用于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
8.根据权利要求4所述的方法,其特征在于,所述获取所述第一记录中的进程的标识之后,还包括:
为所述进程的标识设置报文采集标识,所述报文采集标识用于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
9.根据权利要求5所述的方法,其特征在于,所述获取所述第一记录中的进程的标识之后,还包括:
为所述进程的标识设置报文采集标识,所述报文采集标识用于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
10.根据权利要求6所述的方法,其特征在于,所述获取所述第一记录中的进程的标识之后,还包括:
为所述进程的标识设置报文采集标识,所述报文采集标识用于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
11.一种终端设备,其特征在于,所述终端设备包括存储器、处理器和网络接口,所述存储器、处理器和网络接口通过总线相互通信;
所述存储器用于存储程序代码、第一对应表和第二对应表,所述第一对应表以记录的方式保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表以记录的方式保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
所述网络接口,用于接收网络安全设备发送的第一数据流的标识;
所述处理器读取所述存储器中存储的程序代码,执行:
在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;
所述网络接口,还用于向所述网络安全设备发送所述处理器获取的应用的标识。
12.根据权利要求11所述的终端设备,其特征在于,
所述处理器,还用于通过以下操作获得所述第一对应表:通过操作系统提供的接口,获得所述终端设备中运行的至少一个进程的标识;针对获得的每个进程的标识,所述终端设备获得该进程创建的数据流的标识,生成一个包含所述进程的标识和所述数据流的标识的记录;并将所述记录保存在所述第一对应表中。
13.根据权利要求12所述的终端设备,其特征在于,
所述处理器,还用于通过以下操作获得所述第一对应表:
通过钩子函数获得所述操作系统创建进程的事件;从所述创建进程的事件中获得新创建的进程的标识;获得该新创建进程创建的数据流的标识,生成一个包含所述新创建进程的标识和所述新创建进程创建的所述数据流的标识的记录;并将所述记录保存在所述第一对应表中;以及
通过钩子函数获得所述操作系统退出进程的事件;从所述退出进程的事件中获得退出进程的标识,从所述第一对应表中删除包含所述退出进程的标识的记录。
14.根据权利要求11至13中任一所述的终端设备,其特征在于,所述第一对应表中的记录还包含数据流的最后活动时间;
所述处理器,还用于确定所述第一对应表中的过期记录,所述过期记录是指包括的数据流的最后活动时间和当前时间之间的时间间隔超过预定时间间隔的记录;删除所述过期记录。
15.根据权利要求14所述的终端设备,其特征在于,
所述处理器,还用于获取所述第一对应表之后,所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文所属数据流的标识;
将所述第一对应表中包含所述报文所属数据流的标识的记录中数据流的最后活动时间更新为当前时间。
16.根据权利要求根据权利要求11至13中任一所述的终端设备,其特征在于,
所述处理器,还用于获取所述第一对应表之后,所述终端设备通过钩子函数获得所述终端设备传输的报文;
从获得的报文中获得报文状态标识和报文所属数据流的标识;
如果所述报文状态标识为FIN,则删除所述第一对应表中包含所述报文所属数据流的标识的记录。
17.一种网络流量中的应用信息的识别系统,其特征在于,包括网络安全设备和终端设备,其中:
所述网络安全设备,用于接收第一数据流,并获取所述第一数据流的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;根据所述第一数据流的标识中的源地址或目的地址,向所述终端设备发送所述数据流的标识,所述终端设备的地址为所述第一数据流的标识中的源地址或目的地址;接收所述终端设备发送的应用的标识,确定接收到的所述应用的标识为发送所述第一数据流的应用的标识;
所述终端设备,存储有第一对应表和第二对应表,所述第一对应表以记录的方式保存有所述终端中运行的进程的标识和所述进程建立的数据流的标识的对应关系,第二对应表以记录的方式保存有应用的标识和所述应用创建的进程的标识的第二对应关系,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,
所述终端设备用于接收网络安全设备发送的第一数据流的标识;在所述第一对应表中,查找到保存有所述第一数据流的标识的第一记录,获取所述第一记录中的进程的标识;在所述第二对应表中,查找到保存有所述第一记录中的进程的标识的第二记录,从所述第二记录中获取应用的标识;向所述网络安全设备发送所述应用的标识。
18.根据权利要求17所述的识别系统,其特征在于,
所述网络安全设备,还用于生成第一关联识别规则和第二关联识别规则,所述第一关联识别规则包含所述应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包含所述应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组;
接收第二数据流,获取所述第二数据流的目的三元组和源三元组中的至少一个,所述第二数据流的目的三元组为由所述第二数据流的目的地址、目的端口和协议号组成的三元组,所述第二数据流的源三元组为所述第二数据流的源地址、源端口和协议号组成的三元组;
如果所述获取的三元组与所述第一关联识别规则和所述第二关联识别规则中任意一个关联识别规则包含的三元组一致,则确定发送所述第二数据流的应用的标识为所述任意一个关联识别规则包含的应用的标识。
19.一种网络流量中的应用信息的识别方法,其特征在于,包括:
接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识与所述应用创建的进程的标识;
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;
如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。
20.根据权利要求19所述的识别方法,其特征在于,如果不存在所述第一关联记录,所述方法还包括:
向所述终端设备发送所述第二识别记录中包含的进程的标识,以使所述终端设备为所述进程的标识设置报文采集标识,所述报文采集标识于指示所述终端设备在通过操作系统的接口捕获所述进程传输的报文后,获得并存储所述进程后续传输的完整数据流。
21.根据权利要求19或20所述的识别方法,其特征在于,所述第一识别记录中还包含识别方式的标识,所述识别方式包括关联识别、特征识别和启发式识别;
如果所述第一识别记录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,所述方法还包括:
向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联识别规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
22.根据权利要求19所述的识别方法,其特征在于,如果不存在所述第一关联记录,所述方法还包括:
在所述对应表中查询是否存在第二关联记录,所述第二关联记录中保存有第二识别记录中包含的进程的标识,以及与之相应的应用的标识;
如果存在所述第二关联记录,生成第三关联识别规则和第四关联识别规则,所述第三关联识别规则包括所述第二关联记录中的应用的标识和由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第四关联识别规则包括第二关联记录中的应用的标识和由所述第一数据流的源地址、源端口和协议号组成的三元组;
向所述网络安全设备发送所述第三关联识别规则和第四关联识别规则。
23.根据权利要求19、20或22所述的识别方法,其特征在于,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,则生成第五关联识别规则和第六关联识别规则,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第六关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组;
向所述网络安全设备发送所述第五关联识别规则和第六关联识别规则。
24.根据权利要求21所述的识别方法,其特征在于,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,则生成第五关联识别规则和第六关联识别规则,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第六关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组;
向所述网络安全设备发送所述第五关联识别规则和第六关联识别规则。
25.根据权利要求19、20或22所述的识别方法,其特征在于,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
26.根据权利要求21所述的识别方法,其特征在于,还包括:
接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
27.一种数据处理设备,其特征在于,所述处理设备包括存储器、处理器和网络接口,所述存储器、处理器和网络接口通过总线相互通信;
所述存储器存储程序代码;
所述网络接口,用于接收来自于网络安全设备的第一识别记录,所述第一识别记录包含第一数据流的标识和应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组;
接收来自于终端设备的第二识别记录和对应表,所述第二识别记录包含第二数据流的标识和进程的标识,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识;
所述处理器读取所述存储器中存储的程序代码,执行:
如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;
如果不存在所述第一关联记录,确定所述第一识别记录为错误识别记录。
28.根据权利要求27所述的数据处理设备,其特征在于,
所述第一识别记录中还包含识别方式的标识,所述识别方式包括关联识别、特征识别和启发式识别;
所述网络接口,还用于如果所述第一识别记录中识别方式的标识为关联识别方式的标识,则在不存在所述第一关联记录时,向所述网络安全设备发送通知消息,所述通知消息用于通知所述网络安全设备删除第一关联识别规则或第二关联识别规则,所述第一关联识别规则包括由所述第一数据流的目的地址、目的端口和协议号组成的三元组,所述第二关联识别规则包括由所述第一数据流的源地址、源端口和协议号组成的三元组。
29.根据权利要求27所述的数据处理设备,其特征在于,
所述网络接口,还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
所述处理器,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
如果存在所述第三关联记录,则生成第五关联识别规则和第六关联识别规则,所述第五关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的目的地址、目的端口和协议号组成的三元组,所述第六关联识别规则包含所述第三关联记录中包含的应用的标识和由所述第三数据流的源地址、源端口和协议号组成的三元组;
所述网络接口,还用于向所述网络安全设备发送所述第五关联识别规则和第六关联识别规则。
30.根据权利要求27所述的数据处理设备,其特征在于,
所述网络接口,还用于接收来自于网络安全设备的第三识别记录,所述第三识别记录包含第三数据流的标识和未识别标识,所述未识别标识用于表征所述网络安全设备未识别出发送所述第三数据流的应用;
接收来自于终端设备的第四识别记录,所述第四识别记录包含第四数据流的标识和进程的标识;
所述处理器,还用于确定所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识是否相同,如果所述第三识别记录中包含的第三数据流的标识与所述第四识别记录中包含的第四数据流的标识相同,则在所述对应表中查询是否存在第三关联记录,所述第三关联记录中保存有所述第四识别记录中包含的进程的标识;
所述网络接口,还用于如果所述处理器确定存在所述第三关联记录,将所述第三关联记录中包含的应用的标识和所述第三数据流的标识发送给所述网络安全设备。
31.一种网络流量中的应用信息的识别系统,其特征在于,包括数据处理设备、终端设备和网络安全设备,其中:
所述网络安全设备,用于接收第一数据流,确定发送所述第一数据流的应用的标识后,生成第一识别记录,所述第一识别记录包含所述第一数据流的标识和所述应用的标识,所述数据流的标识为由源地址、源端口、目的地址、目的端口和协议标识组成的五元组,向所述数据处理设备发送所述第一识别记录;
所述终端设备,用于获取所述终端设备上的进程的标识以及所述进程创建的第二数据流的标识,生成第二识别记录,所述第二识别记录包含第二数据流的标识和进程的标识;以及获取对应表,所述对应表中的每条记录保存一个应用的标识和所述应用创建的进程的标识;向所述数据处理设备发送所述第二识别记录和对应表;
所述数据处理设备,用于接收来自于所述网络安全设备的第一识别记录;接收来自于所述终端设备的第二识别记录和所述对应表;如果所述第一识别记录中包含的第一数据流的标识与所述第二识别记录中包含的第二数据流的标识相同,在所述对应表中查询是否存在第一关联记录,所述第一关联记录中保存有第一识别记录中应用的标识和第二识别记录中包含的进程的标识;如果不存在所述第一关联记录,则确定所述第一识别记录为错误识别记录。
CN201511000809.5A 2015-12-28 2015-12-28 网络流量中的应用信息的识别方法和装置 Active CN106921637B (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CN201511000809.5A CN106921637B (zh) 2015-12-28 2015-12-28 网络流量中的应用信息的识别方法和装置
EP16880693.3A EP3297213B1 (en) 2015-12-28 2016-09-23 Method and apparatus for identifying application information in network traffic
JP2018502243A JP6599538B2 (ja) 2015-12-28 2016-09-23 ネットワークトラフィックにおけるアプリケーション情報を識別するための方法および装置
ES18200601T ES2880369T3 (es) 2015-12-28 2016-09-23 Método para identificar información de aplicación en el tráfico de red, y aparato
EP18200601.5A EP3496338B1 (en) 2015-12-28 2016-09-23 Method for identifying application information in network traffic, and apparatus
PCT/CN2016/099891 WO2017113900A1 (zh) 2015-12-28 2016-09-23 网络流量中的应用信息的识别方法和装置
ES16880693T ES2746351T3 (es) 2015-12-28 2016-09-23 Método y aparato para identificar información de aplicación en tráfico de red
US15/839,329 US11582188B2 (en) 2015-12-28 2017-12-12 Method for identifying application information in network traffic, and apparatus
US16/737,373 US11855967B2 (en) 2015-12-28 2020-01-08 Method for identifying application information in network traffic, and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511000809.5A CN106921637B (zh) 2015-12-28 2015-12-28 网络流量中的应用信息的识别方法和装置

Publications (2)

Publication Number Publication Date
CN106921637A CN106921637A (zh) 2017-07-04
CN106921637B true CN106921637B (zh) 2020-02-14

Family

ID=59224582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511000809.5A Active CN106921637B (zh) 2015-12-28 2015-12-28 网络流量中的应用信息的识别方法和装置

Country Status (6)

Country Link
US (2) US11582188B2 (zh)
EP (2) EP3297213B1 (zh)
JP (1) JP6599538B2 (zh)
CN (1) CN106921637B (zh)
ES (2) ES2880369T3 (zh)
WO (1) WO2017113900A1 (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US9891940B2 (en) 2014-12-29 2018-02-13 Nicira, Inc. Introspection method and apparatus for network access filtering
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
CN106921637B (zh) 2015-12-28 2020-02-14 华为技术有限公司 网络流量中的应用信息的识别方法和装置
US10938837B2 (en) 2016-08-30 2021-03-02 Nicira, Inc. Isolated network stack to manage security for virtual machines
US10609160B2 (en) 2016-12-06 2020-03-31 Nicira, Inc. Performing context-rich attribute-based services on a host
US10803173B2 (en) * 2016-12-22 2020-10-13 Nicira, Inc. Performing context-rich attribute-based process control services on a host
US10812451B2 (en) * 2016-12-22 2020-10-20 Nicira, Inc. Performing appID based firewall services on a host
US11032246B2 (en) 2016-12-22 2021-06-08 Nicira, Inc. Context based firewall services for data message flows for multiple concurrent users on one machine
US10581960B2 (en) 2016-12-22 2020-03-03 Nicira, Inc. Performing context-rich attribute-based load balancing on a host
US10805332B2 (en) 2017-07-25 2020-10-13 Nicira, Inc. Context engine model
US10802857B2 (en) * 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
CN107483411B (zh) * 2017-07-25 2020-01-31 中国联合网络通信集团有限公司 业务识别方法及系统
US10778651B2 (en) 2017-11-15 2020-09-15 Nicira, Inc. Performing context-rich attribute-based encryption on a host
CN108282414B (zh) * 2017-12-29 2020-05-29 网宿科技股份有限公司 一种数据流的引导方法、服务器和系统
US10958622B2 (en) * 2018-01-10 2021-03-23 Cisco Technology, Inc. Hierarchical security group identifiers
US10802893B2 (en) 2018-01-26 2020-10-13 Nicira, Inc. Performing process control services on endpoint machines
US10862773B2 (en) 2018-01-26 2020-12-08 Nicira, Inc. Performing services on data messages associated with endpoint machines
CN108400909B (zh) * 2018-02-12 2020-10-02 腾讯科技(深圳)有限公司 一种流量统计方法、装置、终端设备和存储介质
US10635346B2 (en) * 2018-06-11 2020-04-28 Western Digital Technologies, Inc. Self-trimming of data stored in non-volatile memory using data storage controller
CN108900430B (zh) * 2018-06-15 2021-12-24 杭州迪普科技股份有限公司 一种网络流量阻断的方法及装置
CN109005227A (zh) * 2018-07-28 2018-12-14 安徽捷兴信息安全技术有限公司 一种手机网络包与手机应用的对应方法及装置
CN109194756A (zh) * 2018-09-12 2019-01-11 网宿科技股份有限公司 应用程序特征信息提取方法及装置
US11552874B1 (en) * 2019-01-18 2023-01-10 Keysight Technologies, Inc. Methods, systems and computer readable media for proactive network testing
CN110096363B (zh) * 2019-04-29 2021-11-30 亚信科技(成都)有限公司 一种网络事件与进程的关联方法及装置
US11023896B2 (en) * 2019-06-20 2021-06-01 Coupang, Corp. Systems and methods for real-time processing of data streams
CN110347047B (zh) * 2019-06-21 2022-09-09 深圳绿米联创科技有限公司 设备删除的方法、装置、系统、电子设备以及存储介质
CN112583767A (zh) * 2019-09-29 2021-03-30 北京安云世纪科技有限公司 流量统计方法及装置
CN110891025B (zh) * 2019-10-31 2022-04-05 上海众链科技有限公司 获取应用程序对端目的地址的系统和方法
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
CN111147523A (zh) * 2020-02-09 2020-05-12 福建奇点时空数字科技有限公司 一种基于服务伪装探测技术的综合性应用协议识别方法
US11985045B2 (en) * 2020-03-31 2024-05-14 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for subscribing change notification of network function
CN113660174B (zh) * 2020-05-12 2024-01-09 华为技术有限公司 一种业务类型确定方法及相关设备
CN111786964B (zh) * 2020-06-12 2022-09-30 深信服科技股份有限公司 网络安全检测方法、终端及网络安全设备
US11108728B1 (en) 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
CN111988320B (zh) * 2020-08-21 2023-05-12 深信服科技股份有限公司 一种应用识别方法、装置、系统、设备和介质
US11336541B2 (en) * 2020-09-14 2022-05-17 Charter Communications Operating, Llc Real-time enrichment for deep packet inspection
WO2022083509A1 (zh) * 2020-10-19 2022-04-28 华为技术有限公司 一种数据流识别方法以及装置
CN113746692A (zh) * 2021-07-21 2021-12-03 网宿科技股份有限公司 网络流量统计的方法、电子设备及存储介质
CN113923013A (zh) * 2021-09-30 2022-01-11 深信服科技股份有限公司 一种应用识别管理方法及系统
CN115277502B (zh) * 2022-06-17 2023-10-10 广州根链国际网络研究院有限公司 一种针对APP应用的自动化测量IPv6流量的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102026151A (zh) * 2009-09-16 2011-04-20 中国移动通信集团公司 一种基于进程监测的服务推送方法、装置和系统
CN102195816A (zh) * 2011-05-24 2011-09-21 北京网康科技有限公司 一种未识别流量信息反馈的方法及其设备
US8612612B1 (en) * 2011-09-28 2013-12-17 Juniper Networks, Inc. Dynamic policy control for application flow processing in a network device
WO2015165296A1 (zh) * 2014-04-29 2015-11-05 华为技术有限公司 协议类型的识别方法和装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9240945B2 (en) * 2008-03-19 2016-01-19 Citrix Systems, Inc. Access, priority and bandwidth management based on application identity
US8606911B2 (en) * 2009-03-02 2013-12-10 Headwater Partners I Llc Flow tagging for service policy implementation
CN102098272B (zh) * 2009-12-10 2014-02-19 华为技术有限公司 一种协议识别的方法、装置和系统
US8190564B2 (en) * 2010-02-25 2012-05-29 Ebay, Inc. Temporary session data storage
US8520538B2 (en) * 2010-02-25 2013-08-27 Clearwire Ip Holdings Llc Method and system for managing traffic in a wireless communication system
CN101873640B (zh) * 2010-05-27 2013-04-24 华为终端有限公司 流量处理方法、装置和移动终端
CN102201982A (zh) * 2011-04-29 2011-09-28 北京网康科技有限公司 一种应用识别方法及其设备
CN103384213B (zh) * 2011-12-31 2017-07-21 华为数字技术(成都)有限公司 一种检测规则优化配置方法及设备
US20130238782A1 (en) * 2012-03-09 2013-09-12 Alcatel-Lucent Usa Inc. Method and apparatus for identifying an application associated with an ip flow using dns data
US9258313B1 (en) * 2012-09-28 2016-02-09 Juniper Networks, Inc. Distributed application awareness
CN103095604A (zh) * 2013-01-04 2013-05-08 海信集团有限公司 识别家庭网络具体应用的系统及方法
US9185015B2 (en) * 2013-02-19 2015-11-10 Broadcom Corporation Application aware elephant flow identification
US10015102B2 (en) * 2013-04-11 2018-07-03 Qualcomm Incorporated Application traffic pairing
CN103746768B (zh) * 2013-10-08 2017-06-23 北京神州绿盟信息安全科技股份有限公司 一种数据包的识别方法及设备
JP6081386B2 (ja) * 2014-01-30 2017-02-15 日本電信電話株式会社 情報共有装置、情報共有方法、および、情報共有プログラム
JP6783501B2 (ja) * 2014-01-31 2020-11-11 国立大学法人 東京大学 情報伝送システム、情報通信装置、情報伝送装置、及びプログラム
US10033747B1 (en) * 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
CN106921637B (zh) 2015-12-28 2020-02-14 华为技术有限公司 网络流量中的应用信息的识别方法和装置
CN105812188A (zh) * 2016-04-25 2016-07-27 北京网康科技有限公司 流量识别方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102026151A (zh) * 2009-09-16 2011-04-20 中国移动通信集团公司 一种基于进程监测的服务推送方法、装置和系统
CN102195816A (zh) * 2011-05-24 2011-09-21 北京网康科技有限公司 一种未识别流量信息反馈的方法及其设备
US8612612B1 (en) * 2011-09-28 2013-12-17 Juniper Networks, Inc. Dynamic policy control for application flow processing in a network device
WO2015165296A1 (zh) * 2014-04-29 2015-11-05 华为技术有限公司 协议类型的识别方法和装置

Also Published As

Publication number Publication date
CN106921637A (zh) 2017-07-04
EP3496338A1 (en) 2019-06-12
ES2880369T3 (es) 2021-11-24
WO2017113900A1 (zh) 2017-07-06
EP3496338B1 (en) 2021-05-26
US11855967B2 (en) 2023-12-26
US20180103011A1 (en) 2018-04-12
JP2018531527A (ja) 2018-10-25
US11582188B2 (en) 2023-02-14
EP3297213A1 (en) 2018-03-21
ES2746351T3 (es) 2020-03-05
US20200145380A1 (en) 2020-05-07
EP3297213B1 (en) 2019-07-17
JP6599538B2 (ja) 2019-10-30
EP3297213A4 (en) 2018-05-30

Similar Documents

Publication Publication Date Title
CN106921637B (zh) 网络流量中的应用信息的识别方法和装置
JP2018531527A6 (ja) ネットワークトラフィックにおけるアプリケーション情報を識別するための方法および装置
USRE49126E1 (en) Real-time adaptive processing of network data packets for analysis
CN106815112B (zh) 一种基于深度包检测的海量数据监控系统及方法
JP5727106B2 (ja) 無線リソース最適化方法、無線リソース最適化装置、及び無線リソース最適化システム
CN109600258B (zh) 工业协议报文记录装置及方法
CN105939231B (zh) 共享接入检测方法和共享接入检测装置
CN111371639B (zh) 网络延时分析方法、装置、存储介质和计算机设备
CN102307123A (zh) 基于传输层流量特征的nat流量识别方法
CN106941493A (zh) 一种网络安全态势感知结果输出方法及装置
CN112468410B (zh) 一种增强网络流量特征准确率的方法和装置
CN114143385B (zh) 一种网络流量数据的识别方法、装置、设备和介质
CN109429296B (zh) 用于终端与上网信息关联的方法、装置及存储介质
WO2017193814A1 (zh) 一种业务链生成方法及系统
CN110430098B (zh) 数据处理系统
CN112822075A (zh) 一种业务链路追踪方法及相关装置
CN110708208B (zh) 监控数据的采集方法及装置、存储介质、终端
KR101223597B1 (ko) 운영체제 시그니처 생성 장치 및 방법
CN115941525A (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
GR01 Patent grant
GR01 Patent grant