CN114064905A - 网络攻击检测方法、装置、终端设备、芯片及存储介质 - Google Patents

网络攻击检测方法、装置、终端设备、芯片及存储介质 Download PDF

Info

Publication number
CN114064905A
CN114064905A CN202111434757.8A CN202111434757A CN114064905A CN 114064905 A CN114064905 A CN 114064905A CN 202111434757 A CN202111434757 A CN 202111434757A CN 114064905 A CN114064905 A CN 114064905A
Authority
CN
China
Prior art keywords
text
detected
characters
attack
word
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.)
Pending
Application number
CN202111434757.8A
Other languages
English (en)
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.)
Shenzhen Zhongke Mingwang Communication Software Co ltd
Original Assignee
Shenzhen Zhongke Mingwang Communication Software 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 Shenzhen Zhongke Mingwang Communication Software Co ltd filed Critical Shenzhen Zhongke Mingwang Communication Software Co ltd
Priority to CN202111434757.8A priority Critical patent/CN114064905A/zh
Publication of CN114064905A publication Critical patent/CN114064905A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Machine Translation (AREA)

Abstract

本申请适用于互联网技术领域,提供了一种网络攻击检测方法、装置、终端设备、芯片及存储介质。所述网络攻击检测方法包括:获取待检测文本中所有字符的Embedding向量;按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。通过本申请可实现对待检测文本的网络攻击检测。

Description

网络攻击检测方法、装置、终端设备、芯片及存储介质
技术领域
本申请属于互联网技术领域,尤其涉及一种网络攻击检测方法、装置、终端设备、芯片及存储介质。
背景技术
网络攻击是指针对计算机信息系统、基础设施、计算机网络或个人计算设备的任何类型的进攻动作。随着互联网技术的不断发展,网络攻击形式层出不穷,网络安全问题日益突出,造成的社会影响和经济损失越来越大。因此,如何进行网络攻击检测是亟待解决的技术问题。
发明内容
本申请实施例提供了一种网络攻击检测方法、装置、终端设备、芯片及存储介质,以实现对待检测文本的网络攻击检测。
第一方面,本申请实施例提供了一种网络攻击检测方法,包括:
获取待检测文本中所有字符的Embedding向量;
按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;
将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。
在本申请实施例中,通过获取待检测文本中所有字符的Embedding向量,并按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,可以得到第一特征图,通过将第一特征图输入载荷定位网络,可以对待检测文本中的攻击载荷进行定位,得到攻击载荷在待检测文本中的位置,从而实现对待检测文本的网络攻击检测。
第二方面,本申请实施例提供了一种网络攻击检测装置,包括:
向量获取模块,用于获取待检测文本中所有字符的Embedding向量;
向量拼接模块,用于按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;
攻击定位模块,用于将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的网络攻击检测方法的步骤。
第四方面,本申请实施例提供了一种芯片,包括处理器,所述处理器用于读取并执行存储器中存储的计算机程序,以执行如上述第一方面所述的网络攻击检测方法的步骤。
可选地,所述存储器与所述处理器通过电路或电线连接。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的网络攻击检测方法的步骤。
第六方面,本申请实施例提供了一种计算机程序产品,当所述计算机程序产品在终端设备上运行时,使得所述电子设备执行如上述第一方面所述的网络攻击检测方法的步骤。
可以理解地,上述提供的第二方面、第三方面、第四方面、第五方面和第六方面均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可以参考上文所提供的对应的方法中的有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的网络攻击检测方法的实现流程示意图;
图2是本申请另一实施例提供的网络攻击检测方法的实现流程示意图;
图3是定位和检测网络的特征图处理示例图;
图4是本申请再一实施例提供的网络攻击检测方法的实现流程示意图;
图5是字符级语言模型的结构和训练过程的示例图;
图6是本申请一实施例提供的网络攻击检测装置的结构示意图;
图7是本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
待检测文本可以是指需要进行网络攻击检测的文本。例如,在接收到外部发送的网络请求(例如Web请求)时,将该网络请求作为待检测文本,通过对该网络请求进行网络攻击检测,可以识别该网络请求中是否携带有攻击载荷,并在该网络请求中携带有攻击载荷时,得到攻击载荷在该网络请求中的位置。
Embedding向量也可以称之为稠密向量。一个字符的Embedding向量可以通过对该字符进行Embedding编码得到。
Embedding编码是一种将离散变量转换为连续向量表示的方式,其可以减少离散变量的空间维数,从而减少计算量。
对一个字符进行Embedding编码可以是指对该字符进行转换,使得该字符转换为向量(即通过向量表示该字符)。
攻击载荷是指用户希望对目标系统攻击成功之后执行的代码。例如,创建一个Meterpreter链接或者通过绑定一个监听接口,获取Shell交互。也可以利用攻击载荷在目标系统上执行一些命令,如添加账号等。
攻击载荷对应的攻击类别包括但不限于跨站脚本(Cross Site Scripting,XSS)攻击、跨站请求伪造(Cross site request forgery,CSRF)攻击、网络劫持攻击、控制台注入代码、钓鱼攻击等。
为了方便理解,本实施例以Web请求为例进行描述,但这并不构成对待检测文本的类型的限定。
现有的关于Web请求的网络应用防火墙(Web Application Firewall,WAF)通常采用规则匹配和正则引擎的方式进行网络攻击检测。具体地,在接收到Web请求之后,对Web请求进行参数解码,得到该Web请求的请求行,对请求行中的统一资源定位符(UniformResource Locator,URL)的query结构进行正则解析,将其解析和切分为<参数名,参数值>的形式,然后对所有的参数值进行基于正则引擎的检测。但上述解析过程需要进行大量的规则匹配,当URL比较长或者参数数量较多时,此过程将消耗大量的时间,影响网络攻击检测的效率。另外,上述基于正则引擎的检测过程也会消耗大量的时间,而WAF的检测要求在毫秒级别内完成,因此,在实际检测时通常需要丢掉大量的参数,而只检测优先级比较高的参数,影响网络攻击检测的准确性。
对于Web请求中的Cookie、UserAgent等不存在<参数名,参数值>结构的部分,可以直接将其视作一个文本串,而攻击载荷则隐藏在其中。当使用正则引擎的方式进行检测时,需要进行从前向后的遍历匹配,当文本串较长时,在有限时间可能无法检测出攻击载荷,影响网络攻击检测的效率和准确性。
为了提高网络攻击检测的效率和准确性,本申请实施例提供了一种网络攻击检测方法,通过将待检测文本视作字符序列进行处理,可以忽略待检测文本的内部结构,无需对待检测文本进行参数解析,减少了解析耗时,提高了网络攻击检测的效率。通过获取待检测文本中所有字符的Embedding向量,并按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,可以得到第一特征图,通过将第一特征图输入载荷定位网络,可以对待检测文本中的攻击载荷进行定位,得到攻击载荷在待检测文本中的位置,从而实现对待检测文本的网络攻击检测,而无需丢掉待检测文本中的参数,也无需进行字符串的遍历匹配,提高了网络攻击检测的准确性。
应理解,本实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
参见图1,是本申请一实施例提供的网络攻击检测方法的实现流程示意图,该网络攻击检测方法应用于终端设备。如图1所示,该网络攻击检测方法可以包括以下步骤:
步骤101,获取待检测文本中所有字符的Embedding向量。
在对待检测文本进行网络攻击检测时,通过将待检测文本视作字符序列进行处理,可以无需对待检测文本进行参数解析,减少了参数解析所消耗的时间,提高了网络攻击检测效率。
获取待检测文本中所有字符的Embedding向量,是将待检测文本转换为可以计算的Embedding向量,基于此,可通过载荷定位网络实现对攻击载荷的定位。
在获取待检测文本中所有字符的Embedding向量之前,可以先对待检测文本进行分字,得到待检测文本中包含的所有字符。例如待检测文本为“language”,通过对“language”进行分字,得到的所有字符包括{l,a,n,g,u,a,g,e},共八个字符,可以分别获取这八个字符各自的Embedding向量。
需要说明的是,所有字符的Embedding向量的维度相同,但不对Embedding向量的维度的具体数值进行限定。例如,待检测文本中所有字符的Embedding向量的维度可以为15、100、256、300等多种数值中的任一数值。
步骤102,按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图。
在对待检测文本中所有字符的Embedding向量进行拼接时,待检测文本中所有字符的Embedding向量在第一特征图中的顺序与待检测文本中所有字符在待检测文本中的顺序相同,以在第一特征图中保持各字符之间的位置关系,从而确保基于第一特征图能够较为准确地对待检测文本实现网络攻击检测。
假设待检测文本中所有字符的Embedding向量的维度为P,待检测文本中字符的数量为M,那么对待检测文本中的M个字符的Embedding向量进行拼接,得到的第一特征图为M*P的矩阵。
示例性的,待检测文本为“language”,“l”的Embedding向量为[-0.2,0.35,0.03,-0.4],“a”的Embedding向量为[-0.1,0.3,0.23,-0.15],“n”的Embedding向量为[0.28,0.46,-0.02,0.14],“g”的Embedding向量为[0.24,0.06,0.39,-0.67],“u”的Embedding向量为[0.34,0.08,-0.42,0.09],“e”的Embedding向量为[-0.23,0.21,0.37,-0.48],“language”中八个字符的顺序为{l,a,n,g,u,a,g,e},对这八个字符的Embedding向量进行拼接,得到的第一特征图如下:
Figure BDA0003381242510000071
步骤103,将第一特征图输入载荷定位网络,在待检测文本中存在攻击载荷的情况下,得到攻击载荷在待检测文本中的位置。
其中,载荷定位网络可以基于第一特征图检测待检测文本中是否存在攻击载荷,并在待检测文本中存在攻击载荷时,输出攻击载荷在待检测文本中的位置。
可选地,在待检测文本中不存在攻击载荷时,载荷定位网络可以输出特定值,以通过该特定值指示待检测文本中不存在攻击载荷。本申请不对特定值的具体内容进行限定。例如,特定值可以为0、Flase等。
攻击载荷在待检测文本中的位置可以是指攻击载荷在待检测文本中的片段。
本申请实施例通过获取待检测文本中所有字符的Embedding向量,并按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,可以得到第一特征图,通过将第一特征图输入载荷定位网络,可以对待检测文本中的攻击载荷进行定位,得到攻击载荷在待检测文本中的位置,从而实现对待检测文本的网络攻击检测。
参见图2,是本申请另一实施例提供的网络攻击检测方法的实现流程示意图,该网络攻击检测方法应用于终端设备。如图2所示,该网络攻击检测方法可以包括以下步骤:
步骤201,获取待检测文本中所有字符的Embedding向量。
该步骤与步骤101相同,具体可参见步骤101的相关描述,在此不再赘述。
步骤202,按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图。
该步骤与步骤102相同,具体可参见步骤102的相关描述,在此不再赘述。
步骤203,将第一特征图输入特征抽取器,以对第一特征图进行特征抽取,得到N层第二特征图。
其中,N为大于2的整数,N层第二特征图的尺寸不同。
特征抽取器用于对输入的第一特征图进行特征抽取,得到N层第二特征图。例如,通过特征抽取器得到五层第二特征图,这五层第二特征图的尺寸分别是第一特征图的尺寸的
Figure BDA0003381242510000081
为了在不损失特征抽取器的精度的前提下,减少特征抽取器的模型参数,可以选用轻量级的MobileNet或者ShuffleNet网络作为特征抽取器。
在特征抽取器中通过不断的卷积操作,可以实现特征图尺寸的不断减小,从而得到N层不同尺寸的第二特征图。
步骤204,将N层第二特征图作为候选特征图,或者从N层第二特征图中选取L层候选特征图。
其中,L层候选特征图的尺寸小于剩余特征图的尺寸,剩余特征图是指N层第二特征图中除L层候选特征图之外的特征图,L为大于1且小于N的整数。
在一实施例中,可以直接将N层第二特征图作为候选特征图输入特征金字塔网络。例如,共有五层第二特征图,分别称之为第二特征图1、第二特征图2、第二特征图3、第二特征图4和第二特征图5,第二特征图1的尺寸是第一特征图的尺寸的
Figure BDA0003381242510000091
第二特征图2的尺寸是第一特征图的尺寸的
Figure BDA0003381242510000092
第二特征图3的尺寸是第一特征图的尺寸的
Figure BDA0003381242510000093
第二特征图4的尺寸是第一特征图的尺寸的
Figure BDA0003381242510000094
第二特征图5是第一特征图的尺寸的
Figure BDA0003381242510000095
可以将上述五层第二特征图均作为候选特征图输入特征金字塔网络。
在另一实施例中,由于高层的特征图更关注语义信息,更能表达不同字符之间的相关性,故可以从N层第二特征图中选取L层高层的第二特征图作为候选特征图输入特征金字塔网络。一个第二特征图的尺寸越小其层次越高。例如,从上述五层第二特征图中选取三层第二特征图作为候选特征图,由于尺寸越小层次越高,那么这三层候选特征图分别是第二特征图3、第二特征图4和第二特征图5。
步骤205,将所有候选特征图输入特征金字塔网络,以对所有候选特征图进行特征融合,得到所有候选特征图各自对应的第三特征图。
其中,上述特征金字塔网络可以采用先从高层到低层,再从低层到高层的双向融合,使得每一层的第二特征图都能融合到各个层次的语义信息。第三特征图的尺寸与对应的候选特征图的尺寸相同。
在一实施例中,如果是将N层第二特征图均作为候选特征图,那么将N层第二特征图输入特征金字塔网络,可以对这N层第二特征图进行特征融合,得到N层第三特征图,N层第三特征图的尺寸与N层第二特征图的尺寸相同。
在另一实施例中,如果是从N层第二特征图中选取L层第二特征图作为候选特征图,那么将选取的L层第二特征图输入特征金字塔网络,可以对这L层第二特征图进行特征融合,得到L层第三特征图,任一层第三特征图的尺寸与对应的第二特征图的尺寸相同。
步骤206,将所有第三特征图输入第一检测头,以对所有第三特征图进行攻击载荷的位置回归,在待检测文本中存在攻击载荷的情况下,得到攻击载荷在对应的第三特征图中的位置。
在对各个层的第三特征图进行攻击载荷的位置回归时,各个层的第三特征图可以共享一个第一检测头,共享一个第一检测头能够减小第一检测头的参数数量,保证第一检测头进行位置回归时的效率。其中,本申请不对第一检测头的网络结构进行限定。例如,上述第一检测头可以由两层的1*1卷积层构成。
步骤207,基于攻击载荷在对应的第三特征图中的位置,确定攻击载荷在待检测文本中的位置。
由于预先控制了第一特征图的降维比例(例如
Figure BDA0003381242510000101
),那么第三特征图的尺寸是已知的,在此基础上,可以确定第三特征图中每个点在第一特征图中对应的区域,由于第一特征图是通过对待检测文本中所有字符的Embedding向量进行拼接得到的,那么可以确定第一特征图中对应的区域在待检测文本中对应的字符,从而得到攻击载荷在待检测文本中的位置。
可选地,在得到攻击载荷在对应的第三特征图中的位置之后,还包括:
将目标特征图输入第二检测头,以对攻击载荷进行攻击分类,得到攻击载荷对应的攻击类型,目标特征图是指攻击载荷在对应的第三特征图中的位置处的特征图。
目标特征图的数量与检测到攻击载荷的第三特征图的数量相同,如果各个层的第三特征图均检测到攻击载荷,那么可以将各个层的第三特征图对应的目标特征图共享一个第二检测头,共享一个第二检测头能够减小第二检测头的参数数量,保证第二检测头进行攻击分类时的效率。其中,本申请不对第二检测头的网络结构进行限定。例如,上述第二检测头可以由两层的1*1卷积层构成。
通过先对攻击载荷进行定位,再识别攻击载荷对应的攻击类型,能够排除待检测文本中正常片段(即不包含攻击载荷的片段)的干扰,提高攻击类型的识别准确性,也无需重复多次地扫描和编码样本文本,避免了特征的重复计算。
其中,上述载荷定位网络和第二检测头可以构成定位和检测网络,通过定位和检测网络可以实现攻击载荷的定位和分类。
如图3所示是定位和检测网络的特征图处理示例图,在特征抽取器中通过不断地对第一特征图进行卷积操作,可以得到第二特征图1、第二特征图2、第二特征图3、第二特征图4和第二特征图5等五层第二特征图,将上述五层第二特征图中的第二特征图3、第二特征图4和第二特征图5输入特征金字塔网络,在特征金字塔网络中对这三层第二特征图进行特征融合,输出第三特征图1、第三特征图2和第三特征图3等三层第三特征图,第三特征图1是第二特征图3通过特征融合得到的融合了第二特征图4和第二特征图5的语义信息的第三特征图,第三特征图2是第二特征图4通过特征融合得到的融合了第二特征图3和第二特征图5的语义信息的第三特征图,第三特征图3是第二特征图5通过特征融合得到的融合了第二特征图3和第二特征图4的语义信息的第三特征图,将这三层第三特征图输入检测头(包括第一检测头和第二检测头),通过检测头对这三层第三特征图进行攻击载荷的定位和分类。
本申请实施例通过将第一特征图依次输入定位和检测网络中的特征抽取器、特征金字塔网络、第一检测头和第二检测头,可以实现对待检测文本中攻击载荷的定位和分类。
参见图4,是本申请再一实施例提供的网络攻击检测方法的实现流程示意图,该网络攻击检测方法应用于终端设备。如图4所示,该网络攻击检测方法可以包括以下步骤:
步骤401,获取第一字符向量字典。
其中,第一字符向量字典至少包括待检测文本中所有字符的Embedding向量。
终端设备可以从其他设备中获取第一字符向量字典,也可以基于字符级语言模型确定第一字符向量。其中,上述其他设备可以是指除上述终端设备之外的设备。
在一可选实施例中,其他设备中存储有第一字符向量字典,终端设备在对待检测文本进行网络攻击检测时,可以向其他设备发送针对第一字符向量字典的请求信息,其他设备在接收到该请求信息之后,可以向终端设备反馈第一字符向量字典。
在另一可选实施例中,获取样本文本;对样本文本进行分字,得到样本文本中所有字符,样本文本中所有字符至少包括待检测文本中所有字符;针对样本文本中所有字符,构建第二字符向量字典,第二字符向量字典包括样本文本中所有字符的Embedding向量;基于样本文本,通过更新第二字符向量字典和字符级语言模型的模型参数训练字符级语言模型;确定字符级语言模型训练完成后对应的第二字符向量字典为第一字符向量字典。
其中,样本文本可以是指用于训练字符级语言模型的文本。样本文本的数量为至少一个。
第二字符向量字典是初始化的字符向量字典,其所包含的字符的Embedding向量是预先设置的。通过训练字符级语言模型,可以更新第二字符向量字典中的字符的Embedding向量。
在一可选实施例中,可以基于连续词袋(Continuous Bag-of-Words,CBOW)模型设计字符级语言模型的训练任务。CBOW模型是通过上下文的词预测一个当前词。其具体的实现方案如下:
对样本文本进行分词,得到样本文本中所有词;
从第二字符向量字典中查找每个词中所有字符的Embedding向量;
按照每个词中所有字符在该词中的顺序,对该词中所有字符的Embedding向量进行拼接,得到该词对应的第四特征图;将目标词对应的第四特征图输入字符级语言模型,得到当前词的预测概率;在当前词存在上文词和下文词时,目标词是指上文词和下文词;在当前词存在上文词且不存在下文词时,目标词是指上文词;在当前词不存在上文词且存在下文词时,目标词是指下文词;上文词是指样本文本中位于当前词之前的词;下文词是指样本文本中位于当前词之后的词;
基于所述当前词的预测概率,通过反向传播更新第二字符向量字典和模型参数,以训练字符级语言模型。
基于当前词的预测概率,可以计算字符级语言模型的损失值,基于该损失值,通过反向传播更新第二字符向量字典中字符的Embedding向量和字符级语言模型的模型参数,可以训练字符级语言模型。其中,本申请对字符级语言模型的损失值对应的损失函数不作限定,例如可以是交叉熵损失函数。
示例性的,样本文本为“1–function()var d=newDate()”,对该样本文本进行分词,可以得到“1”、“–”、“function”、“()”、“var”、“d”、“=”、“newDate”、“()”等九个词,从第二字符向量字典中查找每个词中所有字符的Embedding向量,并对每个词中所有字符的Embedding向量进行拼接,可以得到上述九个词各自对应的第四特征图,以样本文本中的第四个词“()”为例,“()”的上文词为“1”、“–”以及“function”,“()”的下文词为“var”、“d”、“=”、“newDate”以及“()”,将“()”的上文词“1”、“–”以及“function”对应的第四特征图和“()”的下文词、“var”、“d”、“=”、“newDate”以及“()”对应的第四特征图输入字符级语言模型,可以得到样本文本中的第四个词“()”的预测概率。
如图5所示是字符级语言模型的结构和训练过程的示例图。以“function”为例描述Embedding向量的查找过程、拼接过程以及第四特征图在字符级语言模型中的处理过程。从第二字符向量字典中可以查找“function”中所有字符的Embedding向量,按照这些字符在“function”中的顺序,可以对“function”中所有字符的Embedding向量进行拼接,得到“function”对应的第四特征图,将“function”对应的第四特征图输入字符级语言模型之后,可以先在字符级语言模型中对“function”对应的第四特征图进行多组卷积操作。为了保证语义的一致性,卷积核的宽度与字符的Embedding向量的维度相同,每一组卷积操作可以包括多个相同的卷积操作,因此,每一个卷积操作完成后生成一个特征图,而一组n个相同的卷积操作(即位于一组的n个卷积操作的卷积核的尺寸相同、步长相同、填充相同)的结果进行拼接,可以得到该组卷积操作对应的特征图,即每一组卷积操作完成后都对应有一个特征图,对该特征图进行高度方向的最大池化操作,将多组卷积操作对应的最大池化结果进行拼接,可以得到“function”的初始Embedding向量,并通过一个高速网络层生成“function”的最终Embedding向量。按照上述方法,可以得到样本文本中每个词的最终Embedding向量。将样本文本中的第四个词“()”的目标词的最终Embedding向量输入长短期记忆(Long Short-Term Memory,LSTM)网络,通过LSTM网络进行隐含层编码,最终通过Softmax函数将LSTM网络的输出值转换为样本文本中的第四个词“()”的预测概率。其中,图5中的4*filter1(h=3,s=1)表示使用四个高度为3,步长为1的滤波器进行卷积操作;3*filter2(h=1,s=1)表示使用三个高度为1,步长为1的滤波器进行卷积操作;5*filter3(h=2,s=1)表示使用五个高度为2,步长为1的滤波器进行卷积操作。
其中,高速网络层主要是通过引入门机制,使得信息在字符级语言模型的各层之间传输更为通畅,从而改善字符级语言模型的训练。
在另一可选实施例中,为了得到表征能力更强的Embedding向量,可以基于攻击检测二分类任务(即判断样本文本是正文本或者负文本,正文本是指攻击载荷对应的文本,负文本是指不包含攻击载荷的文本)设计字符级语言模型的训练任务,将字符级语言模型的训练任务与攻击分类强相关。其具体的实现方案如下:
按照样本文本中所有字符在样本文本中的顺序,对样本文本中所有字符的Embedding向量进行拼接,得到第五特征图;
将第五特征图输入字符级语言模型,得到样本文本的预测概率,样本文本的预测概率包括样本文本为正文本的概率和样本文本为负文本的概率;
基于样本文本的预测概率,通过反向传播更新第二字符向量字典和模型参数,以训练字符级语言模型。
需要说明的是,在基于攻击检测二分类任务设计字符级语言模型的训练任务时,由于该训练任务是判断样本文本是为正文本还是负文本,并不存在长期依赖问题,故该字符级语言模型无需图5中的LSTM网络。
本实施例中的字符级语言模型的训练任务可以为离线的训练任务,离线训练并生成第一字符向量字典。
步骤402,从第一字符向量字典中查找待检测文本中所有字符的Embedding向量。
由于第一字符向量字典中至少包括待检测文本中所有字符的Embedding向量,故从第一字符向量字典中可以查找到待检测文本中所有字符的Embedding向量。
步骤403,按照待检测文本中所有字符在待检测文本中的顺序,对待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图。
该步骤与步骤102相同,具体可参见步骤102的相关描述,在此不再赘述。
本实施例通过将待检测文本转换为第一特征图,避免了手动特征提取过程,将特征提取的过程隐式地转移到字符级语言模型的训练任务以及定位和检测网络的特征提取中,从而实现自动提取特征。
步骤404,将第一特征图输入特征抽取器,以对第一特征图进行特征抽取,得到N层第二特征图。
该步骤与步骤203相同,具体可参见步骤203的相关描述,在此不再赘述。
步骤405,将N层第二特征图作为候选特征图,或者从N层第二特征图中选取L层候选特征图。
该步骤与步骤204相同,具体可参见步骤204的相关描述,在此不再赘述。
步骤406,将所有候选特征图输入特征金字塔网络,以对所有候选特征图进行特征融合,得到所有候选特征图各自对应的第三特征图。
该步骤与步骤205相同,具体可参见步骤205的相关描述,在此不再赘述。
步骤407,将所有第三特征图输入第一检测头,以对所有第三特征图进行攻击载荷的位置回归,在待检测文本中存在攻击载荷的情况下,得到攻击载荷在对应的第三特征图中的位置。
该步骤与步骤206相同,具体可参见步骤206的相关描述,在此不再赘述。
步骤408,基于攻击载荷在对应的第三特征图中的位置,确定攻击载荷在待检测文本中的位置。
该步骤与步骤207相同,具体可参见步骤207的相关描述,在此不再赘述。
步骤409,将目标特征图输入第二检测头,以对攻击载荷进行攻击分类,得到攻击载荷对应的攻击类型,目标特征图是指攻击载荷在对应的第三特征图中的位置处的特征图。
该步骤已在上一方法实施例中进行描述,在此不再赘述。
本申请实施例通过获取第一字符向量字典,可以从第一字符向量字典中查找到待检测文本中所有字符的Embedding向量,对所有字符的Embedding向量进行拼接可得到第一特征图,将第一特征图依次输入定位和检测网络中的特征抽取器、特征金字塔网络、第一检测头和第二检测头,可以实现对待检测文本中攻击载荷的定位和分类。
参见图6,是本申请一实施例提供的网络攻击检测装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
上述网络攻击检测装置包括:
向量获取模块61,用于获取待检测文本中所有字符的Embedding向量;
向量拼接模块62,用于按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;
攻击定位模块63,用于将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。
可选地,所述载荷定位网络包括特征抽取器、特征金字塔网络和第一检测头;上述攻击定位模块63具体用于:
将所述第一特征图输入所述特征抽取器,以对所述第一特征图进行特征抽取,得到N层第二特征图,N为大于2的整数,所述N层第二特征图的尺寸不同;
将所述N层第二特征图作为候选特征图,或者从所述N层第二特征图中选取L层候选特征图,且所述L层候选特征图的尺寸小于剩余特征图的尺寸,所述剩余特征图是指所述N层第二特征图中除所述L层候选特征图之外的特征图,L为大于1且小于N的整数;
将所有候选特征图输入所述特征金字塔网络,以对所述所有候选特征图进行特征融合,得到所述所有候选特征图各自对应的第三特征图,所述第三特征图的尺寸与对应的候选特征图的尺寸相同;
将所有第三特征图输入所述第一检测头,以对所述所有第三特征图进行所述攻击载荷的位置回归,在所述待检测文本中存在所述攻击载荷的情况下,得到所述攻击载荷在对应的第三特征图中的位置;
基于所述攻击载荷在对应的第三特征图中的位置,确定所述攻击载荷在所述待检测文本中的位置。
可选地,上述网络攻击检测装置还包括:
攻击分类模块,用于将目标特征图输入第二检测头,以对所述攻击载荷进行攻击分类,得到所述攻击载荷对应的攻击类型,所述目标特征图是指所述攻击载荷在对应的第三特征图中的位置处的特征图。
可选地,上述网络攻击检测装置还包括:
字典获取模块,用于获取第一字符向量字典,所述第一字符向量字典至少包括所述待检测文本中所有字符的Embedding向量;
上述向量获取模块61具体用于:
从所述第一字符向量字典中查找所述待检测文本中所有字符的Embedding向量。
可选地,上述字典获取模块包括:
样本获取单元,用于获取样本文本;
样本分字单元,用于对所述样本文本进行分字,得到所述样本文本中所有字符,所述样本文本中所有字符至少包括所述待检测文本中所有字符;
字典构建单元,用于针对所述样本文本中所有字符,构建第二字符向量字典,所述第二字符向量字典包括所述样本文本中所有字符的Embedding向量;
模型训练单元,用于基于所述样本文本,通过更新所述第二字符向量字典和字符级语言模型的模型参数训练所述字符级语言模型;
字典确定单元,用于确定所述字符级语言模型训练完成后对应的所述第二字符向量字典为所述第一字符向量字典。
可选地,上述模型训练单元具体用于:
对所述样本文本进行分词,得到所述样本文本中所有词;
从所述第二字符向量字典中查找每个词中所有字符的Embedding向量;
按照所述每个词中所有字符在该词中的顺序,对该词中所有字符的Embedding向量进行拼接,得到该词对应的第四特征图;
将目标词对应的第四特征图输入所述字符级语言模型,得到当前词的预测概率;在所述当前词存在上文词和下文词时,所述目标词是指所述上文词和所述下文词;在所述当前词存在所述上文词且不存在所述下文词时,所述目标词是指所述上文词;在所述当前词不存在所述上文词且存在所述下文词时,所述目标词是指所述下文词;所述上文词是指所述样本文本中位于所述当前词之前的词;所述下文词是指所述样本文本中位于所述当前词之后的词;
基于所述当前词的预测概率,通过反向传播更新所述第二字符向量字典和所述模型参数,以训练所述字符级语言模型。
可选地,所述样本文本为正文本或者负文本,所述正文本是指所述攻击载荷对应的文本,所述负文本是指不包含所述攻击载荷的文本;上述模型训练单元具体用于:
按照所述样本文本中所有字符在所述样本文本中的顺序,对所述样本文本中所有字符的Embedding向量进行拼接,得到第五特征图;
将所述第五特征图输入所述字符级语言模型,得到所述样本文本的预测概率,所述样本文本的预测概率包括所述样本文本为所述正文本的概率和所述样本文本为所述负文本的概率;
基于所述样本文本的预测概率,通过反向传播更新所述第二字符向量字典和所述模型参数,以训练所述字符级语言模型。
本申请实施例提供的网络攻击检测装置可以应用在前述方法实施例中,详情参见上述方法实施例的描述,在此不再赘述。
图7是本申请一实施例提供的终端设备的结构示意图。如图7所示,该实施例的终端设备7包括:一个或多个处理器70(图中仅示出一个)、存储器71以及存储在所述存储器71中并可在所述至少一个处理器70上运行的计算机程序72。所述处理器70执行所述计算机程序72时实现上述各个网络攻击检测方法实施例中的步骤。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例还提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (11)

1.一种网络攻击检测方法,其特征在于,包括:
获取待检测文本中所有字符的Embedding向量;
按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;
将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。
2.根据权利要求1所述的网络攻击检测方法,其特征在于,所述载荷定位网络包括特征抽取器、特征金字塔网络和第一检测头;所述将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置,包括:
将所述第一特征图输入所述特征抽取器,以对所述第一特征图进行特征抽取,得到N层第二特征图,N为大于2的整数,所述N层第二特征图的尺寸不同;
将所述N层第二特征图作为候选特征图,或者从所述N层第二特征图中选取L层候选特征图,且所述L层候选特征图的尺寸小于剩余特征图的尺寸,所述剩余特征图是指所述N层第二特征图中除所述L层候选特征图之外的特征图,L为大于1且小于N的整数;
将所有候选特征图输入所述特征金字塔网络,以对所述所有候选特征图进行特征融合,得到所述所有候选特征图各自对应的第三特征图,所述第三特征图的尺寸与对应的候选特征图的尺寸相同;
将所有第三特征图输入所述第一检测头,以对所述所有第三特征图进行所述攻击载荷的位置回归,在所述待检测文本中存在所述攻击载荷的情况下,得到所述攻击载荷在对应的第三特征图中的位置;
基于所述攻击载荷在对应的第三特征图中的位置,确定所述攻击载荷在所述待检测文本中的位置。
3.根据权利要求2所述的网络攻击检测方法,其特征在于,在得到所述攻击载荷在对应的第三特征图中的位置之后,还包括:
将目标特征图输入第二检测头,以对所述攻击载荷进行攻击分类,得到所述攻击载荷对应的攻击类型,所述目标特征图是指所述攻击载荷在对应的第三特征图中的位置处的特征图。
4.根据权利要求1至3任一项所述的网络攻击检测方法,其特征在于,在获取待检测文本中所有字符的Embedding向量之前,还包括:
获取第一字符向量字典,所述第一字符向量字典至少包括所述待检测文本中所有字符的Embedding向量;
所述获取待检测文本中所有字符的Embedding向量,包括:
从所述第一字符向量字典中查找所述待检测文本中所有字符的Embedding向量。
5.根据权利要求4所述的网络攻击检测方法,其特征在于,所述获取第一字符向量字典,包括:
获取样本文本;
对所述样本文本进行分字,得到所述样本文本中所有字符,所述样本文本中所有字符至少包括所述待检测文本中所有字符;
针对所述样本文本中所有字符,构建第二字符向量字典,所述第二字符向量字典包括所述样本文本中所有字符的Embedding向量;
基于所述样本文本,通过更新所述第二字符向量字典和字符级语言模型的模型参数训练所述字符级语言模型;
确定所述字符级语言模型训练完成后对应的所述第二字符向量字典为所述第一字符向量字典。
6.根据权利要求5所述的网络攻击检测方法,其特征在于,所述基于所述样本文本,通过更新所述第二字符向量字典和字符级语言模型的模型参数训练所述字符级语言模型,包括:
对所述样本文本进行分词,得到所述样本文本中所有词;
从所述第二字符向量字典中查找每个词中所有字符的Embedding向量;
按照所述每个词中所有字符在该词中的顺序,对该词中所有字符的Embedding向量进行拼接,得到该词对应的第四特征图;
将目标词对应的第四特征图输入所述字符级语言模型,得到当前词的预测概率;在所述当前词存在上文词和下文词时,所述目标词是指所述上文词和所述下文词;在所述当前词存在所述上文词且不存在所述下文词时,所述目标词是指所述上文词;在所述当前词不存在所述上文词且存在所述下文词时,所述目标词是指所述下文词;所述上文词是指所述样本文本中位于所述当前词之前的词;所述下文词是指所述样本文本中位于所述当前词之后的词;
基于所述当前词的预测概率,通过反向传播更新所述第二字符向量字典和所述模型参数,以训练所述字符级语言模型。
7.根据权利要求5所述的网络攻击检测方法,其特征在于,所述样本文本为正文本或者负文本,所述正文本是指所述攻击载荷对应的文本,所述负文本是指不包含所述攻击载荷的文本;所述基于所述样本文本,通过更新所述第二字符向量字典和字符级语言模型的模型参数训练所述字符级语言模型,包括:
按照所述样本文本中所有字符在所述样本文本中的顺序,对所述样本文本中所有字符的Embedding向量进行拼接,得到第五特征图;
将所述第五特征图输入所述字符级语言模型,得到所述样本文本的预测概率,所述样本文本的预测概率包括所述样本文本为所述正文本的概率和所述样本文本为所述负文本的概率;
基于所述样本文本的预测概率,通过反向传播更新所述第二字符向量字典和所述模型参数,以训练所述字符级语言模型。
8.一种网络攻击检测装置,其特征在于,包括:
向量获取模块,用于获取待检测文本中所有字符的Embedding向量;
向量拼接模块,用于按照所述待检测文本中所有字符在所述待检测文本中的顺序,对所述待检测文本中所有字符的Embedding向量进行拼接,得到第一特征图;
攻击定位模块,用于将所述第一特征图输入载荷定位网络,在所述待检测文本中存在攻击载荷的情况下,得到所述攻击载荷在所述待检测文本中的位置。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的网络攻击检测方法的步骤。
10.一种芯片,包括处理器,其特征在于,所述处理器用于读取并执行存储器中存储的计算机程序,以执行如权利要求1至7任一项所述的网络攻击检测方法的步骤。
11.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的网络攻击检测方法的步骤。
CN202111434757.8A 2021-11-29 2021-11-29 网络攻击检测方法、装置、终端设备、芯片及存储介质 Pending CN114064905A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111434757.8A CN114064905A (zh) 2021-11-29 2021-11-29 网络攻击检测方法、装置、终端设备、芯片及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111434757.8A CN114064905A (zh) 2021-11-29 2021-11-29 网络攻击检测方法、装置、终端设备、芯片及存储介质

Publications (1)

Publication Number Publication Date
CN114064905A true CN114064905A (zh) 2022-02-18

Family

ID=80277292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111434757.8A Pending CN114064905A (zh) 2021-11-29 2021-11-29 网络攻击检测方法、装置、终端设备、芯片及存储介质

Country Status (1)

Country Link
CN (1) CN114064905A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745206A (zh) * 2022-06-10 2022-07-12 北京长亭未来科技有限公司 一种嵌套编码攻击载荷检测方法、系统、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745206A (zh) * 2022-06-10 2022-07-12 北京长亭未来科技有限公司 一种嵌套编码攻击载荷检测方法、系统、设备及存储介质
CN114745206B (zh) * 2022-06-10 2022-09-23 北京长亭未来科技有限公司 一种嵌套编码攻击载荷检测方法、系统、设备及存储介质

Similar Documents

Publication Publication Date Title
CN109918560B (zh) 一种基于搜索引擎的问答方法和装置
CN111275107A (zh) 一种基于迁移学习的多标签场景图像分类方法及装置
CN112989348B (zh) 攻击检测方法、模型训练方法、装置、服务器及存储介质
CN112131578A (zh) 攻击信息预测模型的训练方法、装置、电子设备及存储介质
CN111460783A (zh) 一种数据处理方法、装置、计算机设备及存储介质
CN113723426A (zh) 基于深度多流神经网络的图像分类方法及装置
CN116722992A (zh) 一种基于多模态融合的诈骗网站识别方法及装置
CN113297525B (zh) 网页分类方法、装置、电子设备、及存储介质
CN114064905A (zh) 网络攻击检测方法、装置、终端设备、芯片及存储介质
CN113449816A (zh) 网址分类模型训练、网址分类方法、装置、设备及介质
CN110390011A (zh) 数据分类的方法和装置
CN113568969B (zh) 信息抽取方法、装置、设备以及计算机可读存储介质
CN114090781A (zh) 基于文本数据的容斥事件检测方法和装置
CN115129885A (zh) 实体链指方法、装置、设备及存储介质
CN114547308A (zh) 文本处理的方法、装置、电子设备及存储介质
CN113434695A (zh) 金融事件抽取方法、装置、电子设备及存储介质
CN112364682A (zh) 一种案件搜索方法及装置
CN116775889B (zh) 基于自然语言处理的威胁情报自动提取方法、系统、设备和存储介质
Chang et al. Code Transform Model Producing High-Performance Program.
CN114422199B (zh) 一种cms识别方法及装置
CN112380974B (zh) 分类器优化方法、后门检测方法、装置和电子设备
CN117540306B (zh) 一种多媒体数据的标签分类方法、装置、设备及介质
CN116468046A (zh) 基于人工智能的语义提取方法、装置、计算机设备及介质
CN118013518A (zh) 网站类别的识别方法及装置、设备、存储介质
CN116977888A (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