CN111092880B - 一种网络流量数据提取方法及装置 - Google Patents

一种网络流量数据提取方法及装置 Download PDF

Info

Publication number
CN111092880B
CN111092880B CN201911281052.XA CN201911281052A CN111092880B CN 111092880 B CN111092880 B CN 111092880B CN 201911281052 A CN201911281052 A CN 201911281052A CN 111092880 B CN111092880 B CN 111092880B
Authority
CN
China
Prior art keywords
data item
meaning
type data
network traffic
content
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
CN201911281052.XA
Other languages
English (en)
Other versions
CN111092880A (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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN201911281052.XA priority Critical patent/CN111092880B/zh
Publication of CN111092880A publication Critical patent/CN111092880A/zh
Application granted granted Critical
Publication of CN111092880B publication Critical patent/CN111092880B/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/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
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

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)
  • Evolutionary Computation (AREA)
  • Technology Law (AREA)
  • Telephonic Communication Services (AREA)

Abstract

公开了一种网络流量数据提取方法及装置。一种网络流量数据提取方法,其特征在于,该方法包括:获取至少一条网络流量;针对所述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;所述结构化数据记录中包含固定数量的数据项;根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义;根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。通过本说明书实施例所提供的方案,能够准确地从网络流量中提取出符合条件的数据,如隐私数据,再结合安全多方计算技术,能够高效地分析数据输出行为。

Description

一种网络流量数据提取方法及装置
技术领域
本说明书实施例涉及信息安全技术领域,尤其涉及一种网络流量数据提取方法及装置。
背景技术
保护用户数据是企业重要的责任,为了更好地保护用户数据,企业通常会解析网络流量获取其中包含的数据,以此监控、分析数据输出行为。
但是网络流量所包含的数据往往并非标准的结构化的数据,难以直接从中获取可用于分析的有价值的数据。目前虽然可以单纯地通过正则表示式引擎来解析网络流量,但这种方式能解析的网络流量类型较少、解析准确性较低而且无法解析脱敏后的数据,所以通过这种方式得到的解析结果无法作为分析数据输出行为的可靠依据。
发明内容
针对上述技术问题,本说明书实施例提供一种网络流量数据提取方法及装置,技术方案如下:
根据本说明书实施例的第一方面,提供一种网络流量数据提取方法,该方法包括:
获取至少一条网络流量;
针对上述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;上述结构化数据记录中包含固定数量的数据项;
根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义;
根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。
根据本说明书实施例的第二方面,提供一种网络流量数据提取装置,该装置包括:
获取模块,用于获取至少一条网络流量;
解析模块,用于针对上述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;上述结构化数据记录中包含固定数量的数据项;
含义确定模块,用于根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义;
存储模块,用于根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。
本说明书实施例所提供的技术方案根据网络流量的传输格式选择结构化解析器来将其解析为结构化数据记录,并确定出得到的数据记录中的数据项内容的业务含义,然后筛选出符合条件的数据项内容,将其与网络流量的唯一标识关联存储,由此能够准确提取出网络流量中符合条件的数据,在此基础上还可结合安全多方计算技术,从而高效地分析数据输出行为,更好地保护用户的个人信息。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的网络流量数据提取方法的流程示意图;
图2是本说明书实施例提供的步骤103的实现流程图;
图3是本说明书实施例提供的步骤202选择业务含义的实现流程图;
图4是本说明书实施例提供的步骤103的另一实现流程图;
图5是本说明书实施例提供的网络流量数据提取装置的结构示意图;
图6是本说明书实施例提供的异常行为识别装置的结构示意图;
图7是本说明书实施例提供的异常行为识别系统的结构示意图;
图8是本说明书实施例提供的一种计算设备硬件结构示意图。
具体实施方式
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
对于掌握有用户数据的企业,保护用户隐私数据是其重要的法律责任。由于通过网络流量输出用户隐私数据是一种常见的泄漏用户隐私数据的方式,企业通常会获取大量的网络流量,对网络流量中传输的数据进行分析,由此确定网络流量中包含的数据输出行为。
根据确定出的数据输出行为,企业可以确定用户隐私数据泄露的原因,以及可能会泄漏用户隐私数据的异常数据输出行为,例如可以确定出输出未脱敏的用户隐私数据、输出超出阈值数量的用户隐私数据等可能会泄漏用户隐私数据的异常数据输出行为。由此可以及时找出用户隐私数据泄漏的原因,阻止用户隐私数据继续泄漏,也可以防患于未然,及时对可能泄漏用户隐私数据的异常数据输出行为采取相应的措施,如警告该行为的发起者等。从而更好地保护用户隐私数据。
在实际应用时,可通过在网络流量的发送方与接收方之间设置用于采集网络流量的设备等方式来获取发送方与接收方交互的网络流量。在获取到网络流量后,为了高效准确地对网络流量进行分析,需要从网络流量所包含的大量数据中提取出进行后续分析所需的指定数据。更准确地提取出网络流量中的指定数据,就能更高效地分析网络流量中的数据输出行为,从而更好地保护用户数据。
但由于网络流量中包含的数据往往并非易于分析的结构化数据,单纯的通过正则表达式搜索方法来直接解析网络流量,可以解析的网络流量类型较少,而且解析结果可能不够准确,得到的解析结果无法作为分析数据输出行为的可靠依据。
针对上述问题,本说明书实施例提供一种网络流量数据提取方法,能够将网络流量解析为结构化数据,并确定出得到的结构化数据记录中的数据项内容的业务含义,然后筛选出符合条件的数据项内容,将其与网络流量的唯一标识关联存储,由此实现从网络流量中准确提取出符合条件的数据,为分析数据输出行为提供了可靠的依据。
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
参照图1,图1是本说明书实施例提供的网络流量数据提取方法的流程示意图。如图1所示,该流程可包括以下步骤:
步骤101,获取至少一条网络流量。
在实际应用时,可设置专门用于获取网络流量的设备来获取网络流量的发送方与接收方之间传输的网络流量。例如可以针对某种信息源,如某个应用、某个数据库,获取该信息源接收和发送的网络流量。本说明书实施例对网络流量的具体获取方式并不进行限制。
步骤102,针对上述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;上述结构化数据记录中包含固定数量的数据项。
本步骤102中,可以对获取到的每一条网络流量,根据该条网络流量的传输格式选择对应的结构化解析器将其解析为结构化数据;也可以根据实际需要,从获取到的多条网络流量中选择一部分网络流量,将其解析为结构化数据。
例如可根据网络流量的发送方和接收方进行选择,如选择由指定的发送方发送的网络流量,或者发送给指定接收方的网络流量;或者可根据网络流量的传输协议进行选择,如选择以http协议传输的网络流量等。本说明书对此并不进行限定。
在具体实现时,本步骤102有多种实现方式,下文举例说明,在此暂不赘述。
步骤103,根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义。
在通过步骤102将获取到的网络流量转化为结构化数据后,为了便于后续对数据进行分析,需要确定结构化数据中数据项的业务含义。以某个内容为11位数字的数据项为例,11位数字只是单纯的字符串,不具有实际意义,而确定这11位数字的业务含义为手机号后,就可以将其作为手机号用于后续分析数据输出行为。
在确定数据项内容所对应的业务含义时,可以确定出解析得到的数据记录中所有数据项内容的业务含义,也可根据实际需要选择部分数据项内容。
例如若解析得到的数据记录以键值对方式存储,该数据记录中包含键类型数据项和值类型数据项,则可以选择所有键类型数据项或某些特定的键类型数据项确定其内容的业务含义,也可以选择所有值类型数据项或某些特定的值类型数据项确定其内容的业务含义,也可以选择某键类型数据项及其对应的任一值类型数据项内容的业务含义,等等。本说明书对此并不具体限定。
在具体实现时,本步骤103有多种实现方式,下文结合图2、图3、图4举例说明,在此暂不赘述。
步骤104,根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。
由于解析网络流量得到的结构化数据记录中的数据项中,通常并非所有的数据项内容都可用于分析数据输出行为,部分数据项内容是分析数据输出行为不需要的。比如对于用户隐私数据输出行为的分析来说,不属于隐私数据的用户数据就可以视为不需要的数据,如用户所使用的头像等。
通过本步骤104,可以筛选出用于分析数据输出行为的数据,从而可以更高效地分析数据输出行为。
本步骤104中,筛选规则可根据实际需要进行设置。假如需要提取出网络流量中包含的特定的用户隐私数据,如手机号,则可以设置筛选规则为:业务含义为手机号的数据项内容。则当某一数据项内容为手机号时,就可以确定该数据项内容与预设的筛选规则匹配,将该数据项内容与该数据项对应的网络流量标识进行关联存储。
这里的网络流量标识可以包括:网络流量本身的标识、网络流量的发送方标识、网络流量的接收方标识等能够标识网络流量的数据。
表1简单示出一种数据项内容与该数据项对应的网络流量标识关联存储的形式:
手机号 地址 发送方标识
139****0021 北京市某区 ××:××:××:××:××:××
…… …… ……
表1
表1只是为了便于理解本步骤104而做出的示例,本说明书对如何将数据项内容与该数据项对应的网络流量标识进行关联存储并不做限制。
至此,完成图1所示流程。
通过图1所示流程,本说明书实施例实现了将获取到的网络流量解析为结构化数据记录,并确定得到的数据记录中的数据项内容的业务含义,然后筛选出符合条件的数据项内容,将其与网络流量的唯一标识关联存储。由此准确提取出了网络流量中符合条件的数据,根据提取出的数据能够高效地分析数据输出行为,从而更好地保护用户信息。
下面对上述步骤102的具体实现方式进行描述:
由于获取到的网络流量可能具有不同的传输格式,如xml格式、json格式等,如果对所有的网络流量都采用同一种结构化解析器来进行解析,则可能导致解析结果不准确甚至无法解析。因此,对于获取到的网络流量中任一条网络流量,可以确定该条网络流量的传输格式,并根据该传输格式选择对应的解析器来解析该网络流量。
网络流量可进一步分为请求体类型和返回体类型,这两种类型的网络流量的传输格式并不相同,所以在确定网络流量的传输格式时,可以首先确定网络流量是请求体类型还是返回体类型。通常在获取网络流量时会确定该网络流量是请求体类型还是返回体类型,并在存储时进行一定的区分。
如果所获取的网络流量为请求体类型,由于请求体通常遵循固定的传输格式,因此可将该条网络流量的传输格式确定为请求体的统一传输格式。
如果所获取的网络流量为返回体类型,由于返回体类型的网络流量的情况较为复杂,不同的业务系统所使用的传输格式可能并不相同,所以可以进一步确定该返回体类型的网络流量的传输格式。
作为一个实施例,可以检查返回体类型的网络流量中包含的格式标记,将该格式标记所标识的传输格式确定为该条网络流量的传输格式。
使用某种传输格式的网络流量,通常包含只有该传输格式才会使用的格式标记。
比如对于以xml格式传输的网络流量,该网络流量中通常会包含xml格式的格式标记,如“<?xml>”等,而xml格式以外的其他传输格式的网络流量不包含该格式标记。所以当检查某条网络流量包含xml格式的格式标记“<?xml>”时,可将该条网络流量的传输格式确定为xml格式。
又如对于以json格式传输的网络流量,该网络流量中通常会包含json格式的格式标记,如“{}”等,而json格式以外的其他传输格式的网络流量不包含该格式标记。所以当检查某条网络流量包含json格式的格式标记“{}”时,可将该条网络流量的传输格式确定为json格式。
在具体实现时,可预先设置格式标记与传输格式的对应关系,对于任一条网络流量,检查该网络流量中所包含的该对应关系中记载的格式标记,将该格式标记对应的传输格式确定为该网络流量的传输格式。
在检查网络流量中包含的格式标记时,还可以确定出由指定格式标记所标识的网络流量明文片段的起始坐标和终止坐标,以便于后续利用结构化解析器来对该网络流量进行解析。
在确定出网络流量的传输格式后,可根据该传输格式,选择用于解析该传输格式的网络流量的结构化解析器。
例如,确定某条网络流量的传输格式为请求体的统一传输格式后,可以选择用于解析该传输格式的网络流量的结构化解析器,如正则表达式引擎等。
又如,确定某条网络流量的传输格式为xml格式后,可选择用于解析xml格式的网络流量的结构化解析器,如SAXparser解析器等。
又如,确定某条网络流量的传输格式为json格式后,可选择用于解析json格式的网络流量的结构化解析器,如Fastjson解析器、DOM4J解析器等;
又如,确定某条网络流量的传输格式为JavaScript格式后,可选择用于解析JavaScript格式的网络流量的结构化解析器,如Lex解析器、Yacc解析器等
又如,确定某条网络流量的传输格式为自然语言格式后,可选择用于解析自然语言格式的网络流量的结构化解析器,如BERT解析器等。
以上各例中给出的结构化解析器只是一种举例,实际选择的解析器可以是现有的结构化解析器,也可以是在现有的结构化解析器的基础上做出进一步的改进,以得到所需的解析结果的结构化解析器,还可以是与现有解析器不同的,针对任一传输格式创建的结构化解析器等。本说明书对于结构化解析器的选择并不进行限制。
为了更快速、准确地解析网络流量,在利用结构化解析器对网络流量进行解析前,还可以对网络流量做一些预处理。例如,网络流量中可能会包含转义字符,如“/n”、“/r”等,这些转义字符可能会影响结构化解析器的正常解析工作,所以在利用结构化解析器对网络流量进行解析前,可对其中的转义字符做预处理。这里的预处理可以是直接删除转义字符,也可以是将转义字符转化为其他不影响结构化解析器正常工作的其他字符等。
除转义字符外,网络流量中还可能存在其他影响结构化解析器的正常工作的特殊字符等数据,也可对这些数据进行预处理以确保结构化解析器的正常工作,预处理方式可参考上述对转义字符的预处理方式,本说明书实施例对预处理的具体方式并不做具体限制。
在选择结构化解析器对某条网络流量进行解析后,通常会得到至少一条包含固定数量的数据项的结构化数据记录。可将多条网络流量解析得到的结构化数据记录存储起来,如存储在Key-Value数据库或关系型数据库中。
在存储结构化数据记录时,可将所有传输格式的网络流量的解析结果存储在同一数据表中,也可按照网络流量的传输格式,将不同传输格式的网络流量的解析结果分别存储在不同的数据表中,还可按照网络流量的其他属性,将网络流量的解析结果存储在不同的数据表中。本说明书实施例并不限制网络流量的具体存储方式。
至此,完成对步骤102的具体实现方式的描述。步骤102按照网络流量的传输格式选取不同的结构化解析器来解析网络流量,能够准确地获取不同传输格式的网络流量的解析结果。
在通过步骤102将网络流量解析为结构化数据记录后,需要通过步骤103确定该结构化数据记录中的数据项的业务含义。下面对步骤103的具体实现方式举例描述:
以通过步骤102解析得到的结构化数据记录存储在Key-Value数据库中为例,即将解析得到的结构化数据以键值对方式存储,该结构化数据中的数据项包括:键类型数据项和值类型数据项。
为便于理解,下文通过表2举例示出存储在Key-Value数据库中的结构化数据。
orderID user_mobile address
10000000021 139****0042 北京市某区
10000000042 152****0063 河北省某市某县
10000000063 180****0021
表2
表2第一行的数据项,即内容为“orderID”“user_mobile”“address”的三个数据项即为键类型数据项,其余数据项为值类型数据项。表1的第二行及第二行以下的每一行都表示一条数据记录。
与某键类型数据项属于同一列的值类型数据项,为该键类型数据项对应的值类型数据项。由于网络流量的内容多种多样,实际解析网络流量得到的结构化数据中,可能存在某些键类型数据项的内容为空,也可能存在某些值类型数据项的内容为空。
在确定解析得到的结构化数据记录中至少一个数据项内容所对应的业务含义时,由于在对网络流量包含的数据进行分析时使用的主要为值类型数据项内容,所以可重点确定值类型数据项内容的业务含义。
由于键类型数据项内容通常可以指示与其对应的值类型数据项内容的业务含义,例如表2中内容为“address”的键类型数据项可指示与其对应的值类型数据项内容的业务含义为“地址”,内容为“orderID”的键类型数据项可指示与其对应的值类型数据项内容的业务含义为“订单号”。
因此可针对解析得到的数据记录中的任一键类型数据项,检查该键类型数据项内容中包含的关键词,将该关键词的业务含义确定为该键类型数据项对应的值类型数据项内容的业务含义。为了便于与其他确定数据项内容的业务含义的方式进行区分,将这种确定方式记为关键词法。
为了快速准确地通过关键词法确定业务含义,可预先设置关键词与业务含义的对应关系,如可以根据常用的业务含义和与该业务含义对应的键类型数据项内容的常见内容进行设置。以业务含义为手机号的键类型数据项内容为例,由于其内容中通常包含“mobile”一词,因此可设置关键词“mobile”对应的业务含义为“手机号”。在使用时,比如在检查上述内容为“user_mobile”的键类型数据项包含的关键词时,由于其显然包含关键词“mobile”,因此可将关键词“mobile”对应的业务含义“手机号”确定为该键类型数据项对应的值类型数据项内容的业务含义。
由于具有相同业务含义的值类型数据项内容通常具有相同的特征,如具有相同的结构组成等。例如业务含义为“手机号”的值类型数据项内容通常包括11位数字,且开头数字为1;业务含义为“地址”的值类型数据项内容通常符合特定的格式等等。
因此可根据值类型数据项内容的特征直接确定其业务含义。但实际中由于业务含义和值类型数据项内容的多样性,虽然具有相同业务含义的值类型数据项内容通常具有相同的特征,但具有相同特征的值类型数据项内容实际可能会对应不同的业务含义。
以表2所示结构化数据为例,可以发现,表2中包含11位数字,且开头数字为2的值类型数据项内容的业务含义可能为手机号,也可能为订单号。
也就是说,仅根据某一值类型数据项内容的特征确定出的业务含义可能不够准确。由于具有相同键类型数据项所对应的值类型数据项的业务含义实际通常相同,如都是手机号、都是地址等,因此可对于对应相同键类型数据项的多个值类型数据项,根据其内容的特征分别确定每个类型数据项的业务含义,然后统计确定出的业务含义,选出一个业务含义作于该键类型数据项对应的值类型数据项的业务含义。
为了便于与其他确定数据项内容的业务含义的方式进行区分,将这种确定方式记为统计法。下面结合图2对统计法进行描述。
参见图2,图2是本说明书实施例提供的步骤103的实现流程图。该流程中,解析网络流量得到的解析结果中包括至少两条结构化数据记录。如图2所示,该流程可以包括以下步骤:
步骤201,针对解析结果中至少两条结构化数据记录中相同键类型数据项对应的任一值类型数据项,根据预设的含义判定规则,确定该值类型数据项内容的业务含义。
在确定业务含义时,可以确定相同键类型数据项对应的每一值类型数据项内容的业务含义,也可确定相同键类型数据项对应的部分值类型数据项内容的业务含义。例如可选择一个小时内获取到的值类型数据项、选择一天内获取到的值类型数据项、选择一天内每个小时中前五分钟获取到的值类型数据项等等;也可以根据值类型数据项的其他属性来进行选择,本说明书实施例对此并不进行限定。
对于任一值类型数据项,根据预设含义判定规则来确定该值类型数据项内容的业务含义。含义判定规则可以根据具有相同业务含义的值类型数据项内容通常具有的相同特征,如都具有特定的结构组成等来预先设置。
举一个简单的例子,例如可设置含义判定规则为:将内容为11位数字,且开头数字为1的数据项内容的业务含义确定为手机号。
在实际应用中,本步骤201中还可以采用自然语言处理等方式来确定值类型数据项内容的业务含义。
根据实际需要,本步骤201还可以通过人工打标来确定值类型数据项内容的业务含义。
依然以表2所示结构化数据为例,可对表2中的3条结构化数据记录中,内容为“user_mobile”的键类型数据项对应的每一值类型数据项,确定该值类型数据项内容的业务含义。假设根据预设的含义判定规则,确定出值类型数据项内容的业务含义分别为:
“139****0042”的业务含义为“手机号”;
“152****0063”的业务含义为“订单号”;
“180****0021”的业务含义为“手机号”。
则可根据后续步骤202进一步确定内容为“user_mobile”的键类型数据项对应的值类型数据项的业务含义。
步骤202,按照预设的选择规则,从确定出的业务含义中选择一种业务含义,将其确定为该键类型数据项所对应的值类型数据项内容的业务含义。
通过上述步骤201已确定出对应相同键类型数据项的多个值类型数据项内容的业务含义。这时可以按照预设的选择规则,从确定出的至少一种业务含义中选择一种,作为该键类型数据项对应的值类型数据项内容的统一的业务含义。
在具体实现时,本步骤202中按照预设的选择规则,从确定出的业务含义中选择一种业务含义有多种实现方式,下文结合图3举例描述,在此不做赘述。
如果通过步骤201确定出对应相同键类型数据项的多个值类型数据项内容的业务含义相同,都为第一类业务含义,则可直接确定该键类型数据项对应的值类型数据项内容的业务含义就是第一类业务含义。
例如确定出的内容为“user_mobile”的键类型数据项对应的值类型数据项内容的业务含义分别为:
“139****0042”的业务含义为“手机号”;
“152****0063”的业务含义为“手机号”;
“180****0021”的业务含义为“手机号”。
则可直接确定内容为“user_mobile”的键类型数据项对应的值类型数据项内容的业务含义为手机号。
至此,完成图2所示流程。
图2所示流程通过确定至少两条结构化数据记录中相同键类型数据项对应的任一值类型数据项的业务含义,从确定出的业务含义中选择一种作为该键类型数据项对应的值类型数据项的业务含义,实现了对数据项内容的业务含义的确定。需要注意的是,图2所示流程只是对步骤103的实现方式的举例,而并非具体限定。
下面结合图3对上述步骤202中按照预设的选择规则,从确定出的业务含义中选择一种业务含义的具体实现方式进行举例描述:
参见图3,图3是本说明书实施例提供的步骤202选择业务含义的实现流程图。如图3所示,该流程可以包括以下步骤:
步骤301,对确定出的每种业务含义,统计被确定为该业务含义的值类型数据项的数量。
这里确定出的业务含义,是指根据上述步骤201确定出的值类型数据项内容的业务含义。所以依然以上述步骤201中的例子为例,即确定出内容为“user_mobile”的键类型数据项对应的值类型数据项内容的业务含义分别为:
“139****0042”的业务含义为“手机号”;
“152****0063”的业务含义为“订单号”;
“180****0021”的业务含义为“手机号”。
可以看出,共确定出了两种业务含义,分别为手机号和订单号。其中,内容被确定为手机号的值类型数据项的数量为2;内容被确定为订单号的值类型数据项的数量为1。
步骤302,当统计结果满足预设的取值条件时,选择统计结果中数量的最大值对应的业务含义。
本步骤302中确定统计结果满足预设的取值条件有多种实现方式,例如当统计结果中只存在一个数量的最大值时,可直接选择统计结果中数量的最大值对应的业务含义。例如,对于步骤301中所举的例子,只存在一个数量最大值“2”,所以可选择该最大值对应的业务含义,即“手机号”。
又如,可以针对确定出的每种业务含义,计算内容被确定为该业务含义的值类型数据项的数量占被确定了业务含义的值类型数据项总数的比例,当计算出的比例中,存在某一比例超过阈值,则选择该比例所对应的业务含义。为了避免出现多个超过阈值的比例,可将阈值设置为大于50%的比例值,比如可以设置为60%。
在实际应用时,为了使选择的结果尽量可靠,还可以计算各业务含义的分布情况。这里的“可靠”是指选出的业务含义是相同键类型数据项对应的值类型数据项的真实业务含义的概率比较高。一般来说,业务含义的种类越少,各种类业务含义对应的值类型数据项的数量值差距越大,即业务含义分布情况越简单,分布越集中,选择数量的最大值对应的业务含义就越可靠。
例如,共确定出“手机号”和“订单号”两种业务含义,则针对以下两种情况:
情况1:被确定为“手机号”的值类型数据项所占比例为90%,内容被确定为“订单号”的值类型数据项所占比例为10%;
情况2:被确定为“手机号”的值类型数据项所占比例为55%,内容被确定为“订单号”的值类型数据项所占比例为45%。
显然在情况1下选择数量的最大值对应的业务含义,即“手机号”这一业务含义更为可靠,也就是“手机号”是该键类型数据项对应的值类型数据项的真实业务含义的概率更高。
因此,可在业务含义的分布情况满足预设的条件时,选择统计结果中数量的最大值对应的业务含义;在业务含义的分布情况不满足预设的条件时,即选择统计结果中数量的最大值对应的业务含义不够可靠时,可通过其他方式选择业务含义,如上报给工作人员进行处理等。
实际应用时,可通过信息熵来表示业务含义的分布情况,则从确定出的至少一种业务含义中选择一种业务含义的选择方法可包括如下步骤:
步骤a1,对确定出的每种业务含义,计算被确定为该业务含义的值类型数据项的数量占被确定了业务含义的值类型数据项总数的比例,将其作为相同键类型数据项所对应的值类型数据项内容的业务含义为该业务含义的概率。
依然以上述表2所示结构化数据为例,其中的内容为“user_mobile”的键类型数据项对应的值类型数据项内容的业务含义分别为:
“139****0042”的业务含义为“手机号”;
“152****0063”的业务含义为“订单号”;
“180****0021”的业务含义为“手机号”。
则可以计算出内容被确定为“手机号”的值类型数据项的数量占被确定了业务含义的值类型数据项总数的比例为2/3,将2/3作为键类型数据项“user_mobile”所对应的值类型数据项内容的业务含义为手机号的概率。
同理,可以计算出键类型数据项“user_mobile”所对应的值类型数据项内容的业务含义为订单号的概率为1/3。
步骤a2,利用通过步骤a1计算得到的概率,计算相同键类型数据项所对应的值类型数据项内容的业务含义的信息熵。
本步骤a2可利用如下公式来计算信息熵:
Figure BDA0002316751700000161
其中n表示共存在n种基本事件,xi表示第i种基本事件,p(xi)表示取值为第i种基本事件发生的概率。
本步骤a2中,上述公式中的基本事件指上述键类型数据项所对应的值类型数据项内容的业务含义为确定出的业务含义中的某种业务含义。
将a1计算得到的概率带入上述信息熵公式,得到相同键类型数据项所对应的值类型数据项内容的业务含义的信息熵。
继续以上述步骤a1中所举的例子为例,即以键类型数据项“user_mobile”所对应的值类型数据项内容的业务含义为手机号的概率是2/3,为订单号的概率是1/3为例。则可将n=2,p(x1)=2/3,p(x2)=1/3代入上述信息熵公式,计算得到键类型数据项“user_mobile”所对应的值类型数据项内容的业务含义的信息熵。
在实际应用时,还可通过其他方式来确定统计结果满足预设的取值条件,在此不一一列举。以上描述的确定统计结果满足预设的取值条件的方式还可以组合使用,由此产生的各种组合方式都应视为在本说明书实施例的保护范围内。
步骤a3,若通过步骤a2计算出的信息熵低于阈值,则选择通过步骤a1计算出的最大概率对应的业务含义。
信息熵低于阈值,说明业务含义的分布情况满足预设条件,此时可认为选择最大概率对应的业务含义作为上述键类型数据项所对应的值类型数据项内容的业务含义是可靠的。
至此,完成图3所示流程。
通过图3所示实现了上述步骤202中按照预设的选择规则,从确定出的业务含义中选择一种业务含义。但需要注意的是,图3所示流程只是对步骤202的实现方式的举例,并非用于具体限定。
至此完成通过统计法确定数据项的业务含义的描述。
在实际应用时,不同的数据项之间还可能具有一定的关联关系,对于具有确定的关联数据项的目标数据项,还可以根据其关联数据项的业务含义确定该目标数据项的业务含义。为了便于与其他确定数据项内容的业务含义的方式进行区分,将这种业务含义确定方式记为关联确定法。下面结合图4对关联确定法进行举例描述。
参见图4,图4是本说明书实施例提供的步骤103的另一实现流程图。图4所示流程中,解析网络流量得到的结构化数据记录可以键值对方式存储,也可以其他方式存储在数据库中。如图4所示,该流程可以包括以下步骤:
步骤401,针对解析网络流量得到的数据记录中的任一目标数据项,确定该目标数据项的关联数据项。
网络流量为了确保传输准确的信息,通常会为某些数据项设置关联数据项来解释其业务含义,所以可通过关联数据项来确定这些数据项内容的业务含义。
步骤402,检查该关联数据项内容中包含的关键词,将该关键词的业务含义确定为该目标数据项内容的业务含义。
为便于理解图4所示流程,下面以解析网络流量得到的结构化数据记录以键值对方式存储为例进行描述:
假设解析网络流量得到的结构化数据记录如表3所示:
Figure BDA0002316751700000171
Figure BDA0002316751700000181
表3
其中,键类型数据项“param1”对应的值类型数据项分别为键类型数据项“value”对应的值类型数据项的关联数据项,即值类型数据项“151****0021”的关联数据项为值类型数据项“phone”;值类型数据项“北京市某区”的关联数据项为值类型数据项“address”,以此类推。
根据上述步骤401,当目标数据项为值类型数据项“151****0021”时,可以确定出其关联数据项是值类型数据项“phone”。然后根据上述步骤402,确定内容“phone”中包含的关键词,将该关键词的业务含义确定为该目标数据项的内容“151****0021”的业务含义。
假如检查发现,目标数据项“151****0021”的关联数据项“phone”的内容中不包含关键词,则可继续确定出得到的结构化数据记录中,键类型数据项“param1”下具有相同内容“phone”的数据项对应的多个目标数据项内容的业务含义,从中选取一种业务含义作为内容为“phone”的数据项对应的目标数据项内容的业务含义。这一过程与上述统计法确定业务含义的过程类似,在此不详细描述。
在实际应用时,一个目标数据项可能对应有不止一个关联数据项。以表3所示结构化数据记录为例,假设键类型数据项“param1”对应的值类型数据项分别是键类型数据项“value”对应的值类型数据项的第一关联数据项,键类型数据项“param2”对应的值类型数据项分别是键类型数据项“value”对应的值类型数据项的第二关联数据项,即值类型数据项“北京市某区”的第一关联数据项为值类型数据项“address”,第二关联数据项为值类型数据项“shop_address”。
这种情况下,通常同一目标数据项对应的多个关联数据项间具有一定的关系,可进一步根据多个关联数据项间的关系来确定目标数据项的业务含义。
比如表3中,第二关联数据项“shop_address”的内容为第一关联数据项“address”的内容下的一个分类,即第二关联数据项“shop_address”的内容能够更精确地解释目标数据项“北京市某区”的业务含义。
因此在确定目标数据项“北京市某区”的业务含义时,可以直接将第二关联数据项“shop_address”的内容中包含的关键词的业务含义确定为该目标数据项的业务含义。
当某一目标数据项不存在第二关联数据项时,比如目标数据项“010-5******8”,则可将其第一关联数据项“phone”的内容中包含的关键词的业务含义确定为该目标数据项的业务含义。
假如同一目标数据项对应的多个关联数据项间不具有关系,则还可通过分别确定各关联数据项内容中包含的关键词,当各关联数据项内容中包含的关键词相同时,将该相同关键词的业务含义确定为目标数据项内容的业务含义等方式来确定目标数据项内容的业务含义。
至此,完成图4所示流程。
通过图4所示流程,实现了根据数据项之间的关联关系确定数据项内容的业务含义。
在实际应用时,为了保证确定出的数据项内容的业务含义的准确性,还可将数据项直接交由人工处理。
以上所描述的确定数据项内容的业务含义的方式可以单独使用,也可以组合使用。
在将上述方式组合使用时,作为一个实施例,可以首先采用上述关键词法,根据键类型数据项内容包含的关键词,确定该键类型数据项对应的值类型数据项内容的业务含义;对于不包含关键词的键类型数据项,可以通过上述统计法,根据该键类型数据项对应的多个值类型数据项内容的业务含义,确定该键类型数据项对应的值类型数据项内容的业务含义;对于通过统计法也无法确定业务含义的数据项内容,可将其上报给人工查看。由此可以准确、快速地确定以键值对方式存储的结构化数据记录中数据项内容的业务含义。
本实施例中,通过上述统计法确定出某键类型数据项对应的值类型数据项内容的业务含义后,还可将该键类型数据项的内容作为关键词,将该关键词与确定出的业务含义关联存储。由此增加了关键词法可用的关键词,在之后的业务含义的确定过程中,对于内容相同的键类型数据项,可直接通过关键词法确定该键类型数据项对应的值类型数据项的业务含义。
类似的,根据以上描述的确定数据项内容的业务含义的方式可以衍生出的多种组合方式,都应视为在本说明书实施例的保护范围内。
以上描述的确定数据项内容的业务含义的方式还可以同时使用,比如可同时使用关键词法和统计法确定某一键类型数据项对应的值类型数据项内容的业务含义,然后综合考虑多种方式确定出的结果,来确定数据项内容的业务含义。
例如可将通过这两种方式确定出的结果进行比较,若两种方式确定出的结果一致,则可确定该键类型数据项对应的值类型数据项内容的业务含义为通过这两种方式确定出的比较结果;若两种方式确定出的结果不一致,则还可通过判断这两种方式的优先级、转由人工查看等方式确定该键类型数据项对应的值类型数据项内容的业务含义等。
至此,完成对步骤103的具体实现方式的描述。
通过以上描述,能够确定出解析网络流量得到的解析结果中至少一个数据项内容的业务含义,为后续进行数据筛选和数据输出行为分析提供了可靠依据。
以上对网络流量数据提取方法进行了描述。在从网络流量中提取出符合条件的数据后,可以据此分析数据输出行为,如用户隐私数据输出行为、不合规数据输出行为等。在分析数据行为时,为了保证用户隐私数据的安全,还可结合安全多方计算技术,本说明书对具体的结合方式不做限制。
下面对本说明书实施例提供的基于上述方法提取出的网络流量数据的异常行为识别方法进行描述:
在将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储时,这里的网络流量标识可以包括:网络流量的发送方标识,和/或网络流量的接收方标识,本说明书实施例提供的异常行为识别方法包括:
针对任一发送方标识和/或接收方标识,若该标识所关联的数据项内容满足预设异常判定条件,则确定对应的发送方和/或接收方的行为异常。
这里的异常判定条件可以根据实际需要进行设置。
例如可针对数据项内容的业务含义设置异常判定条件,如可设置为若数据项内容的业务含义满足指定条件,则确定该数据项内容所关联的发送方和/或接收方的行为异常。
还可针对发送方标识和/或接收方标识所关联的数据项内容的数量来设置异常判定条件,例如可设置为当某一发送方标识所关联的数据项内容的数量达到第一阈值时,确定该发送方的行为异常;还可设置为当某一接收方标识所关联的数据项内容的数量达到第二阈值时,确定该接收方的行为异常;还可设置为当确定某一标识作为发送方标识所关联的数据项内容的数量达到第三阈值,作为接收方标识所关联的数据项内容的数量达到第四阈值时,确定该标识所表示的对象行为异常,等等。
还可针对数据项内容是否符合预设规定来设置异常判定条件,例如可设置为若某一数据项内容不符合预设规定,如没有加密、没有脱敏等,则确定该数据项内容所关联的发送方和/或接收方行为异常。
以上各异常判定条件的设置方式只是举例,还可以通过其他方式来设置异常判定条件。以上各异常判定条件的设置方式也可以组合使用,例如可设置为针对某一发送方标识,当该标识关联的业务含义满足指定条件的数据项内容的数量达到阈值时,确定该发送方的行为异常等。本说明书实施例并不具体限制异常判定条件的设置。
为便于理解本方法,下面结合实际情况举例描述:
例如,为了在数据泄漏时,可以及时确定泄漏原因,在确定某数据被泄漏后可将异常判定条件设置为:数据项内容与被泄漏的该数据相同,则由此能够确定与被泄漏的该数据相同的数据项内容对应的接收方和/或发送方行为异常。
当确定某数据项内容满足预设的判定条件时,还可以通过该数据项内容所关联的网络流量标识获取对应的网络流量。将获取到的网络流量上报给工作人员,由此工作人员可以快速获取包含对被泄漏数据的输出行为的网络流量,从而能够较为高效地分析被泄漏数据的泄漏原因。
作为一个实施例,在识别出异常行为后,还可以采取一些相应的措施,如警告异常行为的发起者、撤销异常行为的发起者对数据的访问权限等,从而一定程度上减少异常行为的出现,更好地保护用户数据。本说明书对识别出异常行为后可采取的措施并不进行限定。
至此,完成对本说明书实施例提供的异常行为识别方法的描述。
通过本说明书实施例提供的异常行为识别方法,能够根据上述网络流量数据提取方法所提取出的数据,高效地分析数据输出行为,更好地保护用户数据。
相应于上述方法实施例,本说明书实施例还提供一种网络流量数据提取装置,参见图5,图5是本说明书实施例提供的网络流量数据提取装置的结构示意图。如图5所示,该装置可以包括:获取模块501、解析模块502、含义确定模块503和存储模块504。
在一个例子中,获取模块501,用于获取至少一条网络流量;
解析模块502,用于针对上述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;上述结构化数据记录中包含固定数量的数据项;
含义确定模块503,用于根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义;
存储模块504,用于根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。
作为一个实施例,上述解析模块502具体用于:
若所获取的网络流量为请求体类型,则将该条网络流量的传输格式确定为请求体的统一传输格式。
作为一个实施例,上述解析模块502具体用于:
若所获取的网络流量为返回体类型,则进一步检查该条网络流量中包含的格式标记;将上述格式标记所标识的传输格式确定为该条网络流量的传输格式。
作为一个实施例,上述含义确定模块503,具体用于:
当解析得到的结构化数据记录以键值对方式存储,该数据记录包括的数据项包括键类型数据项和值类型数据项时,针对该数据记录中的任一键类型数据项,检查该键类型数据项内容中包含的关键词,将上述关键词的业务含义确定为该键类型数据项对应的值类型数据项内容的业务含义。
作为一个实施例,上述含义确定模块503,具体用于:
针对上述数据记录中的任一目标数据项,确定该目标数据项的关联数据项;
检查该关联数据项内容中包含的关键词,将上述关键词的业务含义确定为该目标数据项内容的业务含义。
作为一个实施例,上述含义确定模块503,具体用于:
当解析得到的结构化数据记录以键值对方式存储,该数据记录包括的数据项包括键类型数据项和值类型数据项,且该数据记录中包括至少两条结构化数据记录时,针对上述至少两条结构化数据记录中相同键类型数据项对应的任一值类型数据项,根据预设的含义判定规则,确定该值类型数据项内容的业务含义;
按照预设的选择规则,从确定出的业务含义中选择一种业务含义,将其确定为该键类型数据项所对应的值类型数据项内容的业务含义。
作为一个实施例,上述含义确定模块503具体用于通过以下方式来按照预设的选择规则,从确定出的业务含义中选择一种业务含义:
对确定出的每种业务含义,统计被确定为该业务含义的值类型数据项的数量;
当统计结果满足预设的取值条件时,选择统计结果中数量的最大值对应的业务含义。
本说明书实施例还提供一种基于通过上述网络流量数据提取方式提取出的数据的异常行为识别装置,提取出的数据中网络流量标识包括网络流量的发送方标识,和/或网络流量的接收方标识。该装置的结构参见图6,图6是本说明书实施例提供的异常行为识别装置的结构示意图。如图6所示,该装置包括:
判断模块601,用于针对任一发送方标识和/或接收方标识,判断该标识所关联的数据项内容是否满足预设异常判定条件;
异常确定模块602,用于在所述数据项内容满足预设异常判定条件时,确定对应的发送方和/或接收方的行为异常。
本说明书实施例还提供一种异常行为识别系统,该系统包括上述的网络流量数据提取装置以及异常行为识别装置。如图7所示,判断模块601利用存储模块504关联存储的数据进行异常行为判断。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行上述程序时实现前述的网络流量数据提取方法。该方法至少包括:
获取至少一条网络流量;
针对上述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;上述结构化数据记录中包含固定数量的数据项;
根据解析结果,确定数据记录中至少一个数据项内容所对应的业务含义;
根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储。
图8示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中,也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块,以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的网络流量数据提取方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。

Claims (14)

1.一种网络流量数据提取方法,所述方法包括:
获取至少一条网络流量;
针对所述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;所述结构化数据记录中包含固定数量的数据项;所述结构化数据以键值对方式存储,所述数据项包括键类型数据项和值类型数据项;
根据解析结果,针对所述数据记录中的任一目标值类型数据项,确定该目标值类型数据项预设的关联值类型数据项;
检查该关联值类型数据项内容中包含的关键词,将所述关键词的业务含义确定为该目标值类型数据项内容的业务含义;
根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储;所述筛选规则基于业务含义确定。
2.根据权利要求1所述的方法,所述确定该条网络流量的传输格式,包括:
若所获取的网络流量为请求体类型,则将该条网络流量的传输格式确定为请求体的统一传输格式。
3.根据权利要求1所述的方法,所述确定该条网络流量的传输格式,包括:
若所获取的网络流量为返回体类型,则进一步检查该条网络流量中包含的格式标记;
将所述格式标记所标识的传输格式确定为该条网络流量的传输格式。
4.根据权利要求1所述的方法,所述方法还包括:
针对所述数据记录中的任一键类型数据项,检查该键类型数据项内容中包含的关键词,将所述关键词的业务含义确定为该键类型数据项对应的值类型数据项内容的业务含义。
5.根据权利要求1所述的方法,所述解析结果中包括至少两条结构化数据记录;所述方法还包括:
针对所述至少两条结构化数据记录中相同键类型数据项对应的任一值类型数据项,根据预设的含义判定规则,确定该值类型数据项内容的业务含义;
按照预设的选择规则,从确定出的业务含义中选择一种业务含义,将其确定为该键类型数据项所对应的值类型数据项内容的业务含义。
6.根据权利要求5所述的方法,所述按照预设的选择规则,从确定出的业务含义中选择一种业务含义,包括:
对确定出的每种业务含义,统计被确定为该业务含义的值类型数据项的数量;
当统计结果满足预设的取值条件时,选择统计结果中数量的最大值对应的业务含义。
7.一种基于如权利要求1至6任一项所述网络流量数据的异常行为识别方法,所述网络流量标识包括:网络流量的发送方标识,和/或网络流量的接收方标识,该方法包括:
针对任一发送方标识和/或接收方标识,若该标识所关联的数据项内容满足预设异常判定条件,则确定对应的发送方和/或接收方的行为异常。
8.一种网络流量数据提取装置,所述装置包括:
获取模块,用于获取至少一条网络流量;
解析模块,用于针对所述获取的任一条网络流量,确定该条网络流量的传输格式,选择与该传输格式对应的结构化解析器将该条网络流量解析为至少一条结构化数据记录;所述结构化数据记录中包含固定数量的数据项;所述结构化数据以键值对方式存储,所述数据项包括键类型数据项和值类型数据项;
含义确定模块,用于根据解析结果,针对所述数据记录中的任一目标值类型数据项,确定该目标值类型数据项预设的关联值类型数据项;检查该关联值类型数据项内容中包含的关键词,将所述关键词的业务含义确定为该目标值类型数据项内容的业务含义;
存储模块,用于根据预设的筛选规则,将与筛选规则相匹配的数据项内容与该数据项对应的网络流量标识进行关联存储;所述筛选规则基于业务含义确定。
9.根据权利要求8所述的装置,所述解析模块具体用于:
若所获取的网络流量为请求体类型,则将该条网络流量的传输格式确定为请求体的统一传输格式;
若所获取的网络流量为返回体类型,则进一步检查该条网络流量中包含的格式标记;将所述格式标记所标识的传输格式确定为该条网络流量的传输格式。
10.根据权利要求8所述的装置,所述含义确定模块,具体用于:
针对所述数据记录中的任一键类型数据项,检查该键类型数据项内容中包含的关键词,将所述关键词的业务含义确定为该键类型数据项对应的值类型数据项内容的业务含义。
11.根据权利要求8所述的装置,所述解析结果中包括至少两条结构化数据记录;
所述含义确定模块,具体用于:
针对所述至少两条结构化数据记录中相同键类型数据项对应的任一值类型数据项,根据预设的含义判定规则,确定该值类型数据项内容的业务含义;
按照预设的选择规则,从确定出的业务含义中选择一种业务含义,将其确定为该键类型数据项所对应的值类型数据项内容的业务含义。
12.根据权利要求11所述的装置,所述含义确定模块,具体用于:
对确定出的每种业务含义,统计被确定为该业务含义的值类型数据项的数量;
当统计结果满足预设的取值条件时,选择统计结果中数量的最大值对应的业务含义。
13.一种基于如权利要求8至12任一项所述网络流量数据的异常行为识别装置,所述网络流量标识包括:网络流量的发送方标识,和/或网络流量的接收方标识,该装置包括:
判断模块,用于针对任一发送方标识和/或接收方标识,判断该标识所关联的数据项内容是否满足预设异常判定条件;
异常确定模块,用于在所述数据项内容满足预设异常判定条件时,确定对应的发送方和/或接收方的行为异常。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至6任一项所述的方法。
CN201911281052.XA 2019-12-13 2019-12-13 一种网络流量数据提取方法及装置 Active CN111092880B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911281052.XA CN111092880B (zh) 2019-12-13 2019-12-13 一种网络流量数据提取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911281052.XA CN111092880B (zh) 2019-12-13 2019-12-13 一种网络流量数据提取方法及装置

Publications (2)

Publication Number Publication Date
CN111092880A CN111092880A (zh) 2020-05-01
CN111092880B true CN111092880B (zh) 2022-08-09

Family

ID=70395039

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911281052.XA Active CN111092880B (zh) 2019-12-13 2019-12-13 一种网络流量数据提取方法及装置

Country Status (1)

Country Link
CN (1) CN111092880B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055020A (zh) * 2020-09-04 2020-12-08 北京明朝万达科技股份有限公司 报文筛选方法、装置及数据传输系统
CN112565266A (zh) * 2020-12-07 2021-03-26 深信服科技股份有限公司 一种信息泄露攻击检测方法、装置、电子设备及存储介质
IL279405B2 (en) 2020-12-13 2024-01-01 Google Llc Using a secure multi-participant calculation to improve the integrity of the content selection process
CN115622764A (zh) * 2022-10-09 2023-01-17 深圳市君思科技有限公司 web网络流量中隐私数据发现与归类方法
CN115914050A (zh) * 2022-11-04 2023-04-04 杭州熙羚信息技术有限公司 一种基于策略下发的网络流量采集方法和系统
CN118227827A (zh) * 2022-12-19 2024-06-21 抖音视界有限公司 一种数据发现方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067218A (zh) * 2012-12-14 2013-04-24 华中科技大学 一种高速网络数据包内容分析装置
CN103281213A (zh) * 2013-04-18 2013-09-04 西安交通大学 一种网络流量内容提取和分析检索方法
CN107277006A (zh) * 2017-06-15 2017-10-20 中国银行股份有限公司 一种报文解析方法和装置
CN109257352A (zh) * 2018-09-25 2019-01-22 广州虎牙信息科技有限公司 数据包解析方法、装置、电子设备和存储介质
CN109889547A (zh) * 2019-03-29 2019-06-14 新华三信息安全技术有限公司 一种异常网络设备的检测方法及装置
CN109918678A (zh) * 2019-03-22 2019-06-21 阿里巴巴集团控股有限公司 一种字段含义识别方法和装置
CN109933712A (zh) * 2019-03-06 2019-06-25 北京思特奇信息技术股份有限公司 一种报文数据的提取方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9516145B2 (en) * 2014-06-19 2016-12-06 Cavium, Inc. Method of extracting data from packets and an apparatus thereof
US10334085B2 (en) * 2015-01-29 2019-06-25 Splunk Inc. Facilitating custom content extraction from network packets

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067218A (zh) * 2012-12-14 2013-04-24 华中科技大学 一种高速网络数据包内容分析装置
CN103281213A (zh) * 2013-04-18 2013-09-04 西安交通大学 一种网络流量内容提取和分析检索方法
CN107277006A (zh) * 2017-06-15 2017-10-20 中国银行股份有限公司 一种报文解析方法和装置
CN109257352A (zh) * 2018-09-25 2019-01-22 广州虎牙信息科技有限公司 数据包解析方法、装置、电子设备和存储介质
CN109933712A (zh) * 2019-03-06 2019-06-25 北京思特奇信息技术股份有限公司 一种报文数据的提取方法及系统
CN109918678A (zh) * 2019-03-22 2019-06-21 阿里巴巴集团控股有限公司 一种字段含义识别方法和装置
CN109889547A (zh) * 2019-03-29 2019-06-14 新华三信息安全技术有限公司 一种异常网络设备的检测方法及装置

Also Published As

Publication number Publication date
CN111092880A (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
CN111092880B (zh) 一种网络流量数据提取方法及装置
CN109816397B (zh) 一种欺诈判别方法、装置及存储介质
Leydesdorff et al. Integrated impact indicators compared with impact factors: An alternative research design with policy implications
CN110460587B (zh) 一种异常账号检测方法、装置及计算机存储介质
US8615516B2 (en) Grouping similar values for a specific attribute type of an entity to determine relevance and best values
US8412712B2 (en) Grouping methods for best-value determination from values for an attribute type of specific entity
CN109345417B (zh) 基于身份认证的业务人员的在线考核方法及终端设备
CN112181767B (zh) 软件系统异常的确定方法、装置和存储介质
EP3396558B1 (en) Method for user identifier processing, terminal and nonvolatile computer readable storage medium thereof
CN110737650A (zh) 数据质量检测方法及装置
CN109918678B (zh) 一种字段含义识别方法和装置
CN112286827B (zh) 一种软件测试方法、设备、电子设备及存储介质
CN111062490B (zh) 一种包含隐私数据的网络数据的处理、识别方法及装置
US10372702B2 (en) Methods and apparatus for detecting anomalies in electronic data
CN112085588B (zh) 规则模型的安全性的确定方法、装置和数据处理方法
CN112861142A (zh) 数据库的风险等级确定方法和装置、存储介质及电子装置
CN117609992A (zh) 一种数据泄密检测方法、装置及存储介质
CN117033552A (zh) 情报评价方法、装置、电子设备及存储介质
CN116089962A (zh) 一种高性能的Iast外部检测方法、装置、电子设备及介质
CN114817518B (zh) 基于大数据档案识别的证照办理方法、系统及介质
CN113220949B (zh) 一种隐私数据识别系统的构建方法及装置
CN111552703B (zh) 一种数据处理方法及装置
CN111291409B (zh) 一种数据监控方法及装置
CN114706899A (zh) 快递数据的敏感度计算方法、装置、存储介质及设备
CN111597235A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40029289

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant