CN112437099B - 网络攻击的检测方法和装置、存储介质及电子设备 - Google Patents

网络攻击的检测方法和装置、存储介质及电子设备 Download PDF

Info

Publication number
CN112437099B
CN112437099B CN202110107046.3A CN202110107046A CN112437099B CN 112437099 B CN112437099 B CN 112437099B CN 202110107046 A CN202110107046 A CN 202110107046A CN 112437099 B CN112437099 B CN 112437099B
Authority
CN
China
Prior art keywords
sample
attack
training
message
model
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
CN202110107046.3A
Other languages
English (en)
Other versions
CN112437099A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110107046.3A priority Critical patent/CN112437099B/zh
Publication of CN112437099A publication Critical patent/CN112437099A/zh
Application granted granted Critical
Publication of CN112437099B publication Critical patent/CN112437099B/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
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/045Combinations of 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种网络攻击的检测方法和装置、存储介质及电子设备。其中,该方法包括:获取抓取到的第一目标报文,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,进而,能够检测抓取到的第一目标报文是否为攻击报文,在用户进行防护时,提高网络攻击检测结果的准确率,有效保护用户的隐私和安全。本发明解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。

Description

网络攻击的检测方法和装置、存储介质及电子设备
技术领域
本发明涉及计算机领域,具体而言,涉及一种网络攻击的检测方法和装置、存储介质及电子设备。
背景技术
近年来,网络攻击依旧充斥于网络环境中,给用户的使用安全带来了威胁,例如,高级持续性威胁(Advanced Persistent Threat,APT)越来越多,APT是网络攻击中最难以防范的攻击手段之一。这类攻击往往带有十分明显的目的性,攻击者通过几乎不可抵挡的复杂入侵方式,隐蔽且长期地潜伏在目标***之内,最终实施破坏。
目前常用的与APT相关的检测方法包括:基于沙箱的恶意代码检测、基于异常流量检测、全包捕获与分析、主机恶意代码检测、社交网络安全事件挖掘等。上述方法只能应对部分攻击模式固定、时间跨度较短的APT攻击,适用范围很小,对于攻击规模庞大且攻击持续时间较长的 APT 攻击,样本数据采集成本较大,会存在攻击数据固化单一、样本攻击数据的数量稀少,此外, APT 攻击的时间跨度大,因此,相关技术中存在用户进行防护时,网络攻击的检测结果不够准确,难以有效保护用户的隐私和安全的技术问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种网络攻击的检测方法和装置、存储介质及电子设备,以至少解决相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
根据本发明实施例的一个方面,提供了一种网络攻击的检测方法,包括:获取抓取到的第一目标报文;将所述第一目标报文输入到第一目标判别模型,得到所述第一目标判别模型输出的第一目标判别结果,其中,所述第一目标判别结果用于表示所述第一目标报文是否为攻击报文,所述第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,所述第一样本攻击报文集合包括抓取到的一组样本攻击报文,所述第二样本攻击报文集合包括根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
在所述第一目标判别结果表示所述第一目标报文为攻击报文的情况下,将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文。
根据本发明实施例的另一方面,还提供了一种网络攻击的检测装置,包括:
获取模块,用于获取抓取到的第一目标报文;
第一输入模块,用于将所述第一目标报文输入到第一目标判别模型,得到所述第一目标判别模型输出的第一目标判别结果,其中,所述第一目标判别结果用于表示所述第一目标报文是否为攻击报文,所述第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,所述第一样本攻击报文集合包括抓取到的一组样本攻击报文,所述第二样本攻击报文集合包括根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
第二输入模块,用于在所述第一目标判别结果表示所述第一目标报文为攻击报文的情况下,将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文。
可选地,所述装置还用于:
使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型。
可选地,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型:
重复执行以下步骤,直到得到所述第一目标判别模型:
将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文,其中,所述第二样本攻击报文集合包括所述训练生成模型依次生成的M个样本攻击报文,每次输入到目标生成模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述训练生成模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的攻击报文,M为自然数;
使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练。
可选地,所述装置还用于通过如下方式使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练:
获取训练样本报文集合,其中,所述训练样本报文集合包括所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文以及获取到的正常报文集合;
重复执行以下步骤,直到训练结束:
在所述训练样本报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述第一训练判别模型,得到所述第一训练判别模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述第一训练判别模型的第一损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为攻击报文;
在所述第一损失函数的取值不满足预设的第一损失条件的情况下,对所述第一训练判别模型以及所述训练生成模型中的参数进行调整,或者,对所述第一训练判别模型中的参数进行调整;
在所述第一损失函数的取值满足所述第一损失条件的情况下,结束对所述第一训练判别模型进行的训练,其中,所述第一目标判别模型为结束训练时的所述第一训练判别模型。
可选地,所述装置还用于通过如下方式获取训练样本报文集合:
对所述第一样本攻击报文集合中的M个样本攻击报文、所述训练生成模型依次生成的M个样本攻击报文以及所述正常报文集合进行随机排序,得到所述训练样本报文集合。
可选地,所述装置还用于通过如下方式将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文:
在所述第一样本攻击报文集合包括N个第一样本攻击报文子集、且每个第一样本攻击报文子集包括同一个攻击类型的样本攻击报文的情况下,对于每个第一样本攻击报文子集,执行以下步骤,其中,N为大于1的自然数,在执行以下步骤,所述每个第一样本攻击报文子集被视为当前样本攻击报文子集,所述当前样本攻击报文子集中的样本攻击报文属于当前攻击类型:
将所述第一样本攻击报文子集中的M1个样本攻击报文以及所述样本随机噪声集合中的M1个样本随机噪声依次输入到与所述当前攻击类型对应的当前训练生成子模型,得到所述当前训练生成子模型依次生成的M1个样本攻击报文,其中,所述训练生成模型包括N个训练生成子模型,所述第二样本攻击报文集合包括N个第二攻击报文子集,所述第二样本攻击报文集合中与所述当前攻击类型对应的第二攻击报文子集包括所述当前训练生成子模型依次生成的M1个样本攻击报文,每次输入到所述当前训练生成子模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述当前训练生成子模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的、且类型为所述当前攻击类型的攻击报文,M1为自然数,M1小于或等于M。
可选地,所述装置还用于通过如下方式使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练:
获取训练样本报文集合中的N个训练样本报文子集,其中,每个所述训练样本报文子集包括一个所述第一样本攻击报文子集中的M1个样本攻击报文、一个所述第二样本攻击报文子集中对应的M1个样本攻击报文以及获取到的正常报文子集,所述一个所述第一样本攻击报文子集以及所述一个所述第二样本攻击报文子集中的样本攻击报文属于同一攻击类型;
对于所述第一训练判别模型中包括的N个训练判别子模型,重复执行以下步骤,直到训练结束,其中,在执行以下步骤中,一个所述训练判别子模型被视为当前训练判别子模型,所述N个训练样本报文子集中用于对所述当前训练判别子模型进行训练的训练样本报文子集被视为当前训练样本报文子集,所述当前训练样本报文子集中的所述第一样本攻击报文子集和所述第二样本攻击报文子集中的样本攻击报文属于当前攻击类型,所述当前训练判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文:
在所述当前训练样本报文子集中获取待输入的训练样本报文;
将所述训练样本报文输入到所述当前训练判别子模型中,得到所述当前训练判别子模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为所述当前攻击类型的攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述当前训练判别子模型的当前损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为所述当前攻击类型的攻击报文;
在所述当前损失函数的取值不满足当前损失条件的情况下,对所述当前训练判别子模型以及所述训练生成模型中的参数进行调整,或者,对所述当前训练判别子模型中的参数进行调整;
在所述当前损失函数的取值满足所述当前损失条件的情况下,结束对所述当前训练判别子模型进行的训练,其中,所述第一目标判别模型中对应的一个目标判别子模型为结束训练时的所述当前训练判别子模型,所述对应的一个目标判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文。
可选地,所述装置还用于:
使用所述第一样本攻击报文集合中的样本攻击报文子集对第二训练判别模型进行训练,得到第三训练判别模型,其中,所述第三训练判别模型用于确定输入所述第三训练判别模型的报文是否为攻击报文;
将所述第一训练判别模型初始化为所述第三训练判别模型。
可选地,所述装置还用于:
使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述第三样本攻击报文集合包括目标生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文,所述目标生成模型是对训练生成模型进行训练得到的生成模型,所述第二样本攻击报文集合包括所述训练生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文。
可选地,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型:
在所述第一样本攻击报文集合包括P个第一样本攻击报文子集、第三样本攻击报文集合包括P个第三样本攻击报文子集、所述P个第一样本攻击报文子集与所述P个第三样本攻击报文子集具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型的情况下,使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述目标长短期记忆模型用于分别确定输入的报文属于P个攻击类型中的每个攻击类型的概率,所述P个攻击类型与所述P个第一样本攻击报文子集、所述P个第三样本攻击报文子集具有一一对应的关系,P为自然数。
可选地,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型:
重复执行以下步骤,直到训练结束:
在所述第一样本攻击报文集合和所述第三样本攻击报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述训练长短期记忆模型,得到所述训练长短期记忆模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文属于N个攻击类型中的每个攻击类型的概率;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述训练长短期记忆模型的第二损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文是否为攻击报文、且在所述训练样本报文为攻击报文的情况下,还表示所述训练样本报文所属的攻击类型;
在所述第二损失函数的取值不满足预设的第二损失条件的情况下,对所述训练长短期记忆模型中的参数进行调整;
在所述第二损失函数的取值满足所述第二损失条件的情况下,结束对所述训练长短期记忆模型进行的训练,其中,所述目标长短期记忆模型为结束训练时的所述训练长短期记忆模型。
可选地,所述装置还用于通过如下方式将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果:
将所述第一目标报文输入到所述目标长短期记忆模型,得到所述目标长短期记忆模型输出的所述第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文、且在所述第一目标报文为攻击报文的情况下,还表示所述第一目标报文所属的攻击类型;
其中,所述目标长短期记忆模型是使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练得到的模型,所述第一样本攻击报文集合包括N个第一样本攻击报文子集、所述第三样本攻击报文集合包括N个第三样本攻击报文子集,所述N个第一样本攻击报文子集、所述N个第三样本攻击报文子集以及N个攻击类型具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型,N为大于1的自然数。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述网络攻击的检测方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的网络攻击的检测方法。
在本发明实施例中,采用获取抓取到的第一目标报文,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果的方式,通过将抓取到的报文数据输入训练好的判别模型和长短期记忆模型,以确定抓取的报文是否为攻击报文,达到了网络攻击的检测的目的,通过结合判别模型与长短期记忆模型对目标报文进行判别,基于判别模型生成了大量攻击数据,丰富了攻击报文的种类与数量,基于长短期记忆模型,对攻击事件跨度大导致的判别器记忆缺失的相关缺陷进行了优化,从而实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的网络攻击的检测方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的网络攻击的检测方法的示意图;
图3是根据本发明实施例的另一种可选的网络攻击的检测方法的示意图;
图4是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图5是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图6是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图7是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图8是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图9是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图10是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图;
图11是根据本发明实施例的一种可选的网络攻击的检测装置的结构示意图;
图12是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络***的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台***进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的***后盾支撑,只能通过云计算来实现。
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用***能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作***)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、***器等。一般来说,SaaS和PaaS相对于IaaS是上层。
云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(GridComputing )、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
云安全(Cloud Security) 是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1. 云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机***安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2. 安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3. 云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
下面结合实施例对本发明进行说明:
根据本发明实施例的一个方面,提供了一种网络攻击的检测方法,可选地,在本实施例中,上述网络攻击的检测方法可以应用于如图1所示的由服务器101和用户终端103所构成的硬件环境中。如图1所示,服务器101通过网络与终端103进行连接,可用于为用户终端或用户终端上安装的客户端提供服务,客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端、游戏客户端等,还可以包括但不限于区块链技术中的各个节点。可在服务器上或独立于服务器设置数据库105,用于为服务器101提供数据存储服务,例如,样本数据存储服务器,上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络,用户终端103可以是配置有网络攻击的检测应用的终端,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile InternetDevices,移动互联网设备)、PAD、台式电脑、智能电视等计算机设备,上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器,可以包括但不限于路由或者网关,使用上述网络攻击的检测方法的网络攻击的检测应用107可以包括但不限于通过用户终端103进行显示或者通过与服务器101连接的显示器进行显示,可通过终端或服务器上配置的用于进行网络攻击的检测的应用107的入口,执行上述网络攻击的检测方法。
结合图1所示,上述网络攻击的检测方法可以在服务器101通过如下步骤实现:
S1,在服务器101上配置的应用107中获取抓取到的第一目标报文;
S2,在服务器101上配置的应用107中将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
S3,在服务器101上配置的应用107中在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,其中,第二目标判别结果用于表示第一目标报文是否为攻击报文。
可选地,在本实施例中,上述网络攻击的检测还可以通过包括但不限于配置于用户终端的客户端使用,可以包括但不限于根据用户终端或服务器的计算能力灵活调整。
可选地,在本实施例中,上述网络攻击的检测可以包括但不限于由用户终端103和服务器101进行异步使用,换言之,在服务器101上配置的应用107中将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,在用户终端103上在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,或者,在用户终端103上配置的应用107中将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,在服务器101上在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果。
上述仅是一种示例,本实施例不做具体的限定。
可选地,作为一种可选的实施方式,如图2所示,上述网络攻击的检测方法包括:
S202,获取抓取到的第一目标报文;
S204,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
S206,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,其中,第二目标判别结果用于表示第一目标报文是否为攻击报文。
可选地,在本实施例中,上述网络攻击的检测方法可以包括但不限于应用于需要进行网络攻击防护或检测的应用场景,例如,可以包括但不限于APT攻击的检测,DDOS攻击检测、木马攻击检测等,而上述网络攻击的检测方法可以应用与包括但不限于防病毒软件、防火墙、IPS等安全方案中,或,其他当前或未来用于进行网络攻击检测的安全方案中。
上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,上述第一目标报文可以包括但不限于由智能手机、平板电脑和USB等移动设备连接后,向***发出的报文,还可以包括但不限于邮件、链接、程序、文档等多种格式的文件所生成的报文。
可选地,在本实施例中,上述第一目标判别模型可以包括但不限于为GAN(Generative Adversarial Networks,生成式对抗网络)深度学习模型中包括的判别模型,还可以包括但不限于基于上述GAN深度学习模型中包括的判别模型所改进的判别模型。
可选地,在本实施例中,上述第一目标判别模型的输出为第一目标判别结果,用于标识第一目标报文是否为攻击报文。上述第一样本攻击报文集合包括抓取到的已标注的一组样本攻击报文,例如,通过防火墙、防病毒软件以及IPS等安全方案所获取到的一组样本攻击报文,上述第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文,例如,将上述样本攻击报文通过添加随机噪声等方式所生成的攻击报文。
上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,上述目标长短期记忆模型用于处理和预测时间序列中间隔和延迟较长的时间,例如,可以包括但不限于使用上述第一样本攻击报文和上述目标判别模型无法判别的上述第二样本攻击报文对训练长短期记忆模型进行训练得到。
可选地,在本实施例中,上述第二目标判别结果用于表示上述第一目标报文是否为攻击报文,可以通过包括但不限于输出二进制的字符,用0表示上述第一目标报文不为攻击报文,用1表示上述第一目标报文为攻击报文。
图3是根据本发明实施例的一种可选的网络攻击的检测方法的示意图,如图3所示,该流程包括但不限于如下步骤:
S1,抓取网络报文;
S2,将抓取到的网络报文输入训练好的检测模型(对应于前述的目标判别模型以及目标长短期记忆模型);
S3,根据检测模型的输出结果,得到检测结果(对应于前述的第一目标识别结果、第二目标识别结果)。
可选地,在本实施例中,基于上述第二样本集合能够得到大量的样本攻击报文,以解决样本攻击报文固化单一、样本攻击报文数量不足的问题,目标判别模型进行判别,同时,在目标判别模型的输出结果表示第一目标报文为攻击报文的情况下,利用LSTM处理第一目标报文,能够解决攻击报文的攻击时间跨度大所导致的准确率低的问题,能够达到提高目标判别模型的判别准确率,降低误报率,还能保证对较长时序序列的特征记忆,以针对持续性较长的网络攻击时,进一步提高网络攻击的检测准确率,降低网络攻击的检测误报率的技术效果。
通过本实施例,采用获取抓取到的第一目标报文,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果的方式,通过将抓取到的报文数据输入训练好的判别模型和长短期记忆模型,以确定抓取的报文是否为攻击报文,达到对网络攻击实现安全检测的目的,通过结合判别模型与长短期记忆模型对目标报文进行判别,基于判别模型生成了大量攻击数据,丰富了攻击报文的种类与数量,基于长短期记忆模型,对攻击事件跨度大导致的判别器记忆缺失的相关缺陷进行了优化,从而实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述方法还包括:使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型。
可选地,在本实施例中,可以包括但不限于使用上述第一样本攻击报文集合、上述第二样本攻击报文集合,以及已标注的非攻击报文来对第一训练判别模型进行训练,以得到上述第一目标判别模型。
可选地,在本实施例中,上述使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练,得到第一目标判别模型可以包括但不限于将第一样本攻击报文、基于第一样本攻击报文添加随机噪声后生成的第二样本攻击报文以及正常报文打乱顺序随机输入上述第一训练判别模型,以调整上述第一训练判别模型中的参数,进而实现对第一训练判别模型的训练,得到上述第一目标判别模型。
通过本实施例,采用使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练,得到第一目标判别模型的方式,达到对网络攻击实现安全检测的目的,从而实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型,包括:
重复执行以下步骤,直到得到所述第一目标判别模型:
S1,将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文,其中,所述第二样本攻击报文集合包括所述训练生成模型依次生成的M个样本攻击报文,每次输入到目标生成模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述训练生成模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的攻击报文,M为自然数;
S2,使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练。
可选地,在本实施例中,上述样本随机噪声可以包括但不限于由***或者服务器预设,还可以包括但不限于例如,一种由时间上随机产生的大量起伏骚扰积累而造成的噪声,其值在给定瞬间内不能预测的噪声,具体而言,可以包括但不限于采用高斯噪声。
可选地,在本实施例中,上述将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型可以包括但不限于将一个样本攻击报文和一个样本随机噪声输入上述训练生成模型,以得到一个样本攻击报文。
可选地,在本实施例中,上述每次根据输入的一个样本随机噪声生成与输入的一个样本攻击报文匹配的攻击报文可以包括但不限于使得上述一个样本攻击报文和上述根据样本随机噪声生成的攻击报文具有一一对应关系。
可选地,在本实施例中,上述对第一训练判别模型训练完成,得到第一目标判别模型可以包括但不限于根据输入的一个样本随机噪声生成的攻击报文与上述一个样本攻击报文无法被上述训练判别模型区分开,即可以确定为上述训练判别模型已经训练完成,进而,得到上述第一目标判别模型。
通过本实施例,采用重复执行以下步骤,直到得到第一目标判别模型:将第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到训练生成模型依次生成的M个样本攻击报文,使用第一样本攻击报文集合中的M个样本攻击报文和训练生成模型依次生成的M个样本攻击报文对第一训练判别模型进行训练的方式,以实现对训练判别模型的训练,得到上述第一目标判别模型,最终能够基于上述第一目标判别模型得到上述第一目标判别结果,以完成网络攻击的检测,从而实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练,包括:
S1,获取训练样本报文集合,其中,所述训练样本报文集合包括所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文以及获取到的正常报文集合;
重复执行以下步骤,直到训练结束:
S2,在所述训练样本报文集合中获取待输入的训练样本报文;
S3,将所述训练样本报文输入到所述第一训练判别模型,得到所述第一训练判别模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为攻击报文;
S4,根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述第一训练判别模型的第一损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为攻击报文;
S5,在所述第一损失函数的取值不满足预设的第一损失条件的情况下,对所述第一训练判别模型以及所述训练生成模型中的参数进行调整,或者,对所述第一训练判别模型中的参数进行调整;
S6,在所述第一损失函数的取值满足所述第一损失条件的情况下,结束对所述第一训练判别模型进行的训练,其中,所述第一目标判别模型为结束训练时的所述第一训练判别模型。
可选地,在本实施例中,上述正常报文可以包括但不限于正常网络报文中的分词的一组词向量,与第一样本攻击报文以及第二样本攻击报文混合后输入上述第一训练判别模型,上述正常报文集合中的报文为已标注的非攻击报文,通过获取正常报文集合能够达到丰富样本集合的技术效果。
上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,上述样本判别结果为上述第一训练判别模型的输出结果,上述实际判别结果为根据上述第一样本攻击报文集合中的M个样本攻击报文和训练生成模型依次生成的M个样本攻击报文以及获取到的正常报文集合的标注信息,得到的上述实际判别结果。
例如,图4是根据本发明实施例的另一种网络攻击的检测方法的示意图,如图4所示,该方法包括但不限于如下内容:
获取M个上述第一样本攻击报文以及M个上述输入训练生成模型402后依次得到的M个第二样本攻击报文以及多个正常报文,其中,样本攻击报文的标注信息均为攻击报文,正常报文的标注信息均为非攻击报文;
将上述M个上述第一样本攻击报文以及M个第二样本攻击报文以及多个正常报文输入上述第一训练判别模型的顺序进行随机排序,其中,上述第一样本攻击报文以A报文表示,第二样本攻击报文以B报文表示,正常报文以C报文表示,上述随机排序后的顺序可以包括但不限于例如C、B、A、A、C、B等。
以输入A或B报文为例,将A或B报文输入上述第一训练判别模型404,得到上述样本判别结果为非攻击报文,而A或B报文的标注信息为攻击报文,也即,上述A或B报文的实际判别结果为攻击报文;
则可判定上述A或B报文判别不正确,也即,上述第一损失函数的取值不满足预设的第一损失条件,对第一训练判别模型以及训练生成模型中的参数调整或者对第一训练判别模型中的参数调整,并重新输入报文。
在将A或B输入上述第一训练判别模型404后,得到上述样本判别结果为攻击报文,而A或B报文的标注信息为攻击报文,也即,上述A或B报文的实际判别结果为攻击报文;
则可判定上述A或B报文判别正确,也即,上述第一损失函数的取值满足预设的第一损失条件,结束对第一训练判别模型的训练。
上述为一种单层的训练模式,实际上可以包括但不限于多层训练模式。
也即,如图4所示,获取上述第一训练判别模型判别正确或不正确的概率值,上述概率值可以包括但不限于是上述第一损失函数的取值,在上述概率值收敛的情况下,也即,在上述第一损失函数的取值满足第一损失条件的情况下,结束对第一训练判别模型的训练,在上述第一损失函数的取值不满足第一损失条件的情况下,对第一训练判别模型以及训练生成模型中的参数调整或者对第一训练判别模型中的参数调整,并重新输入报文。
在上述概率大于预定阈值的情况下,结束对上述第一训练判别模型的训练,得到上述第一目标判别模型。
可选地,在本实施例中,上述损失函数可以包括但不限于0-1损失函数、绝对值损失函数、log对数损失函数、平方损失函数、指数损失函数、Hinge损失函数以及交叉熵损失函数等。
通过本实施例,能够基于训练生成模型增加样本的多样性,基于训练判别模型实现攻击报文的判别,最终,实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述获取训练样本报文集合,包括:
对所述第一样本攻击报文集合中的M个样本攻击报文、所述训练生成模型依次生成的M个样本攻击报文以及所述正常报文集合进行随机排序,得到所述训练样本报文集合。
可选地,在本实施例中,上述随机排序的方式可以是任意一种随机排序的方式,还可以是根据第一样本攻击报文集合中的样本攻击报文和第二样本攻击集合中的样本攻击报文以及正常报文的数量或报文类型,配置对应的随机排序方式。
作为一种可选的方案,所述将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文,包括:
在所述第一样本攻击报文集合包括N个第一样本攻击报文子集、且每个第一样本攻击报文子集包括同一个攻击类型的样本攻击报文的情况下,对于每个第一样本攻击报文子集,执行以下步骤,其中,N为大于1的自然数,在执行以下步骤,所述每个第一样本攻击报文子集被视为当前样本攻击报文子集,所述当前样本攻击报文子集中的样本攻击报文属于当前攻击类型:
将所述第一样本攻击报文子集中的M1个样本攻击报文以及所述样本随机噪声集合中的M1个样本随机噪声依次输入到与所述当前攻击类型对应的当前训练生成子模型,得到所述当前训练生成子模型依次生成的M1个样本攻击报文,其中,所述训练生成模型包括N个训练生成子模型,所述第二样本攻击报文集合包括N个第二攻击报文子集,所述第二样本攻击报文集合中与所述当前攻击类型对应的第二攻击报文子集包括所述当前训练生成子模型依次生成的M1个样本攻击报文,每次输入到所述当前训练生成子模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述当前训练生成子模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的、且类型为所述当前攻击类型的攻击报文,M1为自然数,M1小于或等于M。
可选地,在本实施例中,上述每个第一样本攻击报文子集对应一种攻击类型的样本攻击报文,上述攻击类型可以包括但不限于木马回连、钓鱼邮件触发、缓冲区溢出攻击、Web漏洞利用攻击等攻击类型,上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,上述第一样本攻击报文子集中的M1个样本攻击报文以及将M1个样本随机噪声输入当前训练生成子模型得到的M1个样本攻击报文均包含对应的标注信息,标注信息中标注了该报文是否为攻击报文,以及在该报文是攻击报文的情况下,所属攻击报文的攻击类型。
换言之,在本实施例中,每个攻击类型的样本攻击报文输入对应一个训练生成子模型,以得到攻击类型相同的第二样本攻击报文。
通过本实施例,采用为不同类型的第一样本攻击报文通过对应攻击类型的训练生成模型,得到对应攻击类型的第二样本攻击报文,以使得后续目标判别模型能够在判别出输入报文是否是攻击报文的基础上,还能够判别出该报文是攻击报文的情况下,所属攻击报文的攻击类型,以实现提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练,包括:
S1,获取训练样本报文集合中的N个训练样本报文子集,其中,每个所述训练样本报文子集包括一个所述第一样本攻击报文子集中的M1个样本攻击报文、一个所述第二样本攻击报文子集中对应的M1个样本攻击报文以及获取到的正常报文子集,所述一个所述第一样本攻击报文子集以及所述一个所述第二样本攻击报文子集中的样本攻击报文属于同一攻击类型;
S2,对于所述第一训练判别模型中包括的N个训练判别子模型,重复执行以下步骤,直到训练结束,其中,在执行以下步骤中,一个所述训练判别子模型被视为当前训练判别子模型,所述N个训练样本报文子集中用于对所述当前训练判别子模型进行训练的训练样本报文子集被视为当前训练样本报文子集,所述当前训练样本报文子集中的所述第一样本攻击报文子集和所述第二样本攻击报文子集中的样本攻击报文属于当前攻击类型,所述当前训练判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文:
S3,在所述当前训练样本报文子集中获取待输入的训练样本报文;
S4,将所述训练样本报文输入到所述当前训练判别子模型中,得到所述当前训练判别子模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为所述当前攻击类型的攻击报文;
S5,根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述当前训练判别子模型的当前损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为所述当前攻击类型的攻击报文;
S6,在所述当前损失函数的取值不满足当前损失条件的情况下,对所述当前训练判别子模型以及所述训练生成模型中的参数进行调整,或者,对所述当前训练判别子模型中的参数进行调整;
S7,在所述当前损失函数的取值满足所述当前损失条件的情况下,结束对所述当前训练判别子模型进行的训练,其中,所述第一目标判别模型中对应的一个目标判别子模型为结束训练时的所述当前训练判别子模型,所述对应的一个目标判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文。
可选地,在本实施例中,上述正常报文集合中的报文为已标注的非攻击报文,上述正常报文集合的数量可以包括但不限于大于等于M1,而通过获取正常报文集合能够达到丰富样本集合的技术效果。
可选地,在本实施例中,上述样本判别结果为上述当前训练判别子模型的输出结果,上述实际判别结果为根据上述当前样本攻击报文集合中的M1个样本攻击报文和当前训练生成模型依次生成的M个1样本攻击报文以及获取到的正常报文集合的标注信息,得到的上述实际判别结果。
例如,图5是根据本发明实施例的又一种网络攻击的检测方法的示意图,如图5所示,该方法包括但不限于如下内容:
获取M1个上述当前样本攻击报文以及M1个上述输入训练生成模型502后依次得到的M1个第二样本攻击报文子集中的样本攻击报文以及M2个正常报文,其中,样本攻击报文的标注信息均为攻击报文以及对应的攻击类型,正常报文的标注信息均为非攻击报文;
将上述M1个上述当前样本攻击报文、M1个第二样本攻击报文子集中的样本攻击报文以及M2个正常报文输入上述当前训练判别子模型,其中,上述当前样本攻击报文以A报文表示,第二样本攻击报文子集中的样本攻击报文以B报文表示,正常报文以C报文表示。
以输入A或B报文为例,将A或B报文输入上述当前训练判别子模型504,得到上述样本判别结果为非攻击报文,而A或B报文的标注信息为攻击报文,也即,上述A或B报文的实际判别结果为攻击报文;
则可判定上述A或B报文判别不正确,也即,上述当前损失函数的取值不满足预设的当前损失条件,对当前训练判别子模型以及训练生成模型中的参数调整或者对当前训练判别子模型中的参数调整,并重新输入报文。
在将A或B输入上述当前训练判别子模型504后,得到上述样本判别结果为攻击报文,而A或B报文的标注信息也为攻击报文,也即,上述A或B报文的实际判别结果为攻击报文,并且,上述A或B报文对应的实际攻击类型为第一攻击类型,获取上述样本判别结果为A或B报文的攻击类型也为第一攻击类型,则可判定上述A或B报文判别正确,也即,上述当前损失函数的取值满足预设的当前损失条件,结束对当前训练判别子模型的训练。
上述为一种简单地训练模式,实际上可以包括但不限于更加复杂的训练模式。
也即,如图5所示,获取上述当前训练判别子模型判别正确或不正确的概率值,上述概率值用于表示判断是否为攻击报文以及在判断为攻击报文后攻击类型是否相同的概率,上述概率值可以包括但不限于是上述当前损失函数的取值,在上述概率值收敛的情况下,也即,在上述当前损失函数的取值满足当前损失条件的情况下,结束对当前训练判别子模型的训练,在上述当前损失函数的取值不满足当前损失条件的情况下,对当前训练判别子模型以及训练生成模型中的参数调整或者对当前训练判别子模型中的参数调整,并重新输入报文。
在上述概率大于预定阈值的情况下,结束对上述当前训练判别子模型的训练,得到上述当前目标判别模型。
可选地,在本实施例中,上述损失函数可以包括但不限于0-1损失函数、绝对值损失函数、log对数损失函数、平方损失函数、指数损失函数、Hinge损失函数以及交叉熵损失函数等。
通过本实施例,能够基于训练生成模型增加样本的多样性,基于训练判别模型实现攻击报文的判别,最终,实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述方法还包括:
使用所述第一样本攻击报文集合中的样本攻击报文子集对第二训练判别模型进行训练,得到第三训练判别模型,其中,所述第三训练判别模型用于确定输入所述第三训练判别模型的报文是否为攻击报文;
将所述第一训练判别模型初始化为所述第三训练判别模型。
可选地,在本实施例中,上述第三训练判别模型可以包括但不限于对第二训练判别模型进行预训练得到的训练判别模型,通过使用少量的样本攻击报文对初始的训练判别模型进行预训练,以得到具有初始判别能力的第三训练判别模型,进而,提升后续判别模型的训练速度,达到提高网络攻击的检测效率的技术效果。
作为一种可选的方案,所述方法还包括:
使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述第三样本攻击报文集合包括目标生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文,所述目标生成模型是对训练生成模型进行训练得到的生成模型,所述第二样本攻击报文集合包括所述训练生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文。
可选地,在本实施例中,上述长短期记忆模型可以包括但不限于LSTM(LongShort-Term Memory,长短期记忆网络/模型,由称为单元的不同存储块组成,内存块负责记住事物,对于内存的操作是通过三个主要的机制来完成的,称为门:1)Forget Gate,负责从细胞单元中去除信息,这些信息是LSTM不再需要的或不太重要的信息;2)Input Gate,将信息添加到单元状态;3)Out Gate: 从当前单元状态中选择有用信息,并将其显示为输出)。
可选地,在本实施例中,上述长短期记忆模型的输入为第一样本攻击报文子集中的样本攻击报文和第三样本攻击报文子集中的样本攻击报文,输出为判别输入的报文是否为攻击报文以及在判别是攻击报文的情况下,该攻击报文所属攻击类型的判别结果。
可选地,在本实施例中,上述第三样本攻击报文可以包括但不限于上述目标生成模型基于上述第一样本攻击报文生成的样本攻击报文,例如,基于第一样本攻击报文添加随机噪声后生成的样本攻击报文。
可选地,在本实施例中,在当上述目标判别模型的输出的第一目标判别结果表示第一样本攻击报文或第三样本攻击报文为攻击报文的情况下,将第一样本攻击报文或第三样本攻击报文输入上述训练长短期记忆模型,以实现将上述训练长短期记忆模型训练为目标长短期记忆模型。
例如,图6是根据本发明实施例的又一种网络攻击的检测方法的示意图,如图6所示,可以包括但不限于如下步骤:
S602,获取第一样本攻击报文;
S604,将上述第一样本攻击报文输入G(目标生成模型)602,以添加随机噪声,得到第三样本攻击报文;
S606,将上述第一样本攻击报文或上述第三样本攻击报文随机输入D(目标判别模型)604,得到判别结果为上述输入的上述第一样本攻击报文或上述第三样本攻击报文为攻击报文;
S608,将上述第一样本攻击报文或上述第三样本攻击报文随机输入LSTM训练长短期记忆模型606;
S610,获取上述LSTM训练长短期记忆模型606的输出结果;
S612,在上述输出结果表示输入的上述第一样本攻击报文或上述第三样本攻击报文不为攻击报文或该样本攻击报文为目标类型攻击报文的概率未达到预设条件的情况下,调整LSTM训练长短期记忆模型606的参数;
S614,在上述输出结果表示输入的上述第一样本攻击报文或上述第三样本攻击报文为攻击报文,且该样本攻击报文为目标类型攻击报文的概率达到预设条件的情况下,执行步骤S616;
S616,结束。
通过本实施例,采用使用第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到目标长短期记忆模型的方式,通过对长短期记忆模型进行训练,以得到目标长短期记忆模型,最终,实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,包括:
在所述第一样本攻击报文集合包括P个第一样本攻击报文子集、第三样本攻击报文集合包括P个第三样本攻击报文子集、所述P个第一样本攻击报文子集与所述P个第三样本攻击报文子集具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型的情况下,使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述目标长短期记忆模型用于分别确定输入的报文属于P个攻击类型中的每个攻击类型的概率,所述P个攻击类型与所述P个第一样本攻击报文子集、所述P个第三样本攻击报文子集具有一一对应的关系,P为自然数。
可选地,在本实施例中,上述P个攻击类型可以包括但不限于ping of death攻击、teardrop攻击、畸形TCP报文攻击、IP-fragment攻击等攻击类型,上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,图7是根据本发明实施例的又一种网络攻击的检测方法的示意图,如图7所示,该流程包括但不限于如下步骤:
S702,获取P个第一样本攻击报文子集、P个第三样本攻击报文子集,其中,第三样本攻击报文子集中的样本攻击报文通过将第一样本攻击报文输入目标子生成模型702中得到;
S704,随机向目标判别模型704输入一个第一样本攻击报文以及与其对应的第三样本攻击报文;
S706,在目标判别模型704输出的判别结果表示输入的第一样本攻击报文以及与其对应的第三样本攻击报文均为攻击报文的情况下,将第一样本攻击报文以及与其对应的第三样本攻击报文输入LSTM训练长短期记忆模型706;
S708,得到由LSTM输出的输出结果,并基于输出结果得到上述目标长短期记忆模型。
通过本实施例,采用使用第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到目标长短期记忆模型,通过根据样本报文的攻击类型对长短期记忆模型进行训练,以得到目标长短期记忆模型,使得目标长短期记忆模型输出结果能够识别报文的攻击类型,最终,实现了提高网络攻击的检测准确率和效率的技术效果,进而解决了相关技术中存在的网络攻击的检测能力差,检测准确率低的技术问题。
作为一种可选的方案,所述使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,包括:
重复执行以下步骤,直到训练结束:
S1,在所述第一样本攻击报文集合和所述第三样本攻击报文集合中获取待输入的训练样本报文;
S2,将所述训练样本报文输入到所述训练长短期记忆模型,得到所述训练长短期记忆模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文属于N个攻击类型中的每个攻击类型的概率;
S3,根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述训练长短期记忆模型的第二损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文是否为攻击报文、且在所述训练样本报文为攻击报文的情况下,还表示所述训练样本报文所属的攻击类型;
S4,在所述第二损失函数的取值不满足预设的第二损失条件的情况下,对所述训练长短期记忆模型中的参数进行调整;
S5,在所述第二损失函数的取值满足所述第二损失条件的情况下,结束对所述训练长短期记忆模型进行的训练,其中,所述目标长短期记忆模型为结束训练时的所述训练长短期记忆模型。
可选地,在本实施例中,上述损失函数可以包括但不限于0-1损失函数、绝对值损失函数、log对数损失函数、平方损失函数、指数损失函数、Hinge损失函数以及交叉熵损失函数等。
可选地,在本实施例中,上述样本判别结果用于表示训练样本报文属于N个攻击类型中的每个攻击类型的概率,上述实际判别结果用于表示训练样本报文是否为攻击报文、且在训练样本报文为攻击报文的情况下,还表示训练样本报文所属的攻击类型。
作为一种可选的方案,所述将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,包括:
将所述第一目标报文输入到所述目标长短期记忆模型,得到所述目标长短期记忆模型输出的所述第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文、且在所述第一目标报文为攻击报文的情况下,还表示所述第一目标报文所属的攻击类型;
其中,所述目标长短期记忆模型是使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练得到的模型,所述第一样本攻击报文集合包括N个第一样本攻击报文子集、所述第三样本攻击报文集合包括N个第三样本攻击报文子集,所述N个第一样本攻击报文子集、所述N个第三样本攻击报文子集以及N个攻击类型具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型,N为大于1的自然数。
可选地,在本实施例中,图8是根据本发明实施例的又一种可选的网络攻击的检测方法的示意图,如图8所示,可以包括但不限于如下步骤:
S802,获取N个第一样本攻击报文子集、N个第三样本攻击报文子集;
S804,将一一对应的第一样本攻击报文和第三样本攻击报文随机输入LSTM训练长短期记忆模型;
S806,输出结果,其中,输出结果中包括上述输入的样本攻击报文是否为攻击报文以及对应的攻击类型的概率;
S808,根据上述概率确定第二损失函数的取值,并在上述第二损失函数的取值不满足预设的第二损失条件的情况下,调整LSTM训练长短期记忆模型的参数;
S810,在上述第二损失函数的取值满足预设的第二损失条件的情况下,结束对所述训练长短期记忆模型进行的训练。
下面结合具体的示例,对本实施例进行进一步的解释说明:
目前常用的与APT相关的检测方法有基于沙箱的恶意代码检测、基于异常流量检测、全包捕获与分析、主机恶意代码检测、社交网络安全事件挖掘等。基于沙箱的恶意代码检测方法通过在容器(模拟执行环境)中运行可疑应用程序并监控其异常行为实现对恶意攻击代码的检测。基于异常流量检测的方法首先建立正常流量模式基准,通过网络流量的细微变化来检测网络攻击事件。全包捕获与分析方法通过抓取网络中特定场合下的全数据报文,利用大数据分析技术检测是否存在攻击。主机恶意代码检测方法通过特征码或启发式规则检测恶意代码。社交网络安全事件挖掘方法从社交网络的海量数据中学习用户在网络中的行为模式并挖掘用户的社交关系网等社会属性,为 APT攻击检测提供指导和依据。
上述方法主要应对攻击模式固定、时间跨度较短的APT攻击,但是由于 APT 攻击规模庞大且攻击持续时间较长,导致数据采集成本较大,攻击样本往往较少,因此传统方法的检测效果往往不佳。
鉴于此,在本实施例中,提出了一种基于GAN和LSTM的APT攻击检测方法。一方面,基于GAN模拟生成大量攻击数据,解决了攻击数据固化单一、攻击数据样本不足的问题;另一方面,利用 GAN 中训练得到的判别器进行APT检测,同时,利用LSTM处理APT攻击序列,以解决攻击时间跨度大导致的判别器记忆缺失问题,以最终达到提高对APT攻击的检测能力的技术效果。
可选地,在本实施例中,上述APT攻击检测算法包括3个模块,分别为APT攻击数据生成模块、APT 攻击数据判别模块、APT 时序处理模块,图9是根据本发明实施例的又一种网络攻击的检测方法的示意图,如图9所示,APT攻击数据生成模块902利用GAN生成4种攻击标签的模拟攻击数据,其输入为原始攻击样本x和高斯随机噪声z,输出为生成的攻击数据。APT攻击数据判别模块904负责对攻击数据进行多分类,其输入为原始攻击样本x以及生成数据G(z),输出为对应的分类标签。APT时序处理模块906采用 LSTM 结构对 APT 进行时序处理,其输入为向量化后的攻击标签,输出为布尔量y,y代表当前序列在当前位置之前的序列是否为 APT攻击序列。
上述APT攻击检测算法的训练过程如下:
首先,根据APT攻击数据生成模块902,利用GAN原理构建生成NUM个攻击标签的攻击数据生成器,具体步骤如下。
S1,对每个生成模型做PRE次迭代的预训练,使得生成模型有一定的判别能力,记预训练后的模型为
Figure 245648DEST_PATH_IMAGE001
S2,构造GAN模型,将
Figure 693946DEST_PATH_IMAGE002
作为 GAN 中的初始化
Figure 4842DEST_PATH_IMAGE003
模型,该网络经过N次对抗训练达到收敛。由此,得到生成模型
Figure 931210DEST_PATH_IMAGE004
其次,在训练完NUM个生成器后,利用生成数据优化训练APT攻击数据判别模块904的判别式模型D,具体步骤如下:
S1,利用纳什均衡状态下GAN中的判别式模型的权值初始化APT攻击数据判别模块的判别式模型D。
S2,利用生成器
Figure 807899DEST_PATH_IMAGE004
生成C条模拟样本数据,并根据生成器的类别对生成数据标签进行处理;
S3,将生成的数据和原始样本数据共同作为样本输入模型D,直到算法收敛,以得到APT攻击多分类判别式模型D。
最后,训练完判别式模型D后,利用APT时序处理模块906对APT攻击序列进行训练,具体步骤如下:
S1,根据标签的种类和数目,将模型D的输出标签进行向量化处理;
S2,将长度为SEQ的APT攻击序列x作为样本数据,依次将x在t时刻的词向量输入时序处理模型,模型经过L次训练达到收敛状态。
综上所述,在时序模型训练完毕后,整个模型框架训练完成。时序处理模块无限接收APT攻击数据判别模块向量化后的输出,直至检测到当前序列属于APT攻击序列。
可选地,在本实施例中,图10是根据本实施例的又一种网络攻击的检测方法的示意图,如图10所示,上述APT攻击检测的应用流程可以包括但不限于如下流程:
S1002,获取T时刻的网络数据报文(对应于前述的第一目标报文);
S1004,对上述网络数据报文进行特征提取,得到对应的特征向量;
S1006,将特征向量输入攻击检测模型D(对应于前述的目标判别模型);
S1008,输出对应的输出标签(对应于前述的第一目标判别结果);
S1010,在上述输出标签表示上述网络数据报文为正常报文的情况下,提取下一段报文;
S1012,在上述输出标签标识上述网络数据报文为非正常报文的情况下,输入LSTM模型(对应于前述的目标长短期记忆模型),以得到APT概率(对应于前述的报文所属攻击类型的概率)。
通过本实施例,通过模拟生成攻击数据极大地增加了样本数据量,提高了判别模型的准确率,降低了误报率,此外,针对APT攻击的长期持续性,通过 LSTM的记忆单元和门结构保证了对较长时序序列的特征记忆,在针对持续性较长的 APT攻击序列时保证了一定的准确率和误报率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述网络攻击的检测方法的网络攻击的检测装置。如图11所示,该装置包括:
获取模块1102,用于获取抓取到的第一目标报文;
第一输入模块1104,用于将所述第一目标报文输入到第一目标判别模型,得到所述第一目标判别模型输出的第一目标判别结果,其中,所述第一目标判别结果用于表示所述第一目标报文是否为攻击报文,所述第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,所述第一样本攻击报文集合包括抓取到的一组样本攻击报文,所述第二样本攻击报文集合包括根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
第二输入模块1106,用于在所述第一目标判别结果表示所述第一目标报文为攻击报文的情况下,将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文。
作为一种可选的方案,所述装置还用于:
使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型。
作为一种可选的方案,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型:
重复执行以下步骤,直到得到所述第一目标判别模型:
将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文,其中,所述第二样本攻击报文集合包括所述训练生成模型依次生成的M个样本攻击报文,每次输入到目标生成模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述训练生成模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的攻击报文,M为自然数;
使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练。
作为一种可选的方案,所述装置还用于通过如下方式使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练:
获取训练样本报文集合,其中,所述训练样本报文集合包括所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文以及获取到的正常报文集合;
重复执行以下步骤,直到训练结束:
在所述训练样本报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述第一训练判别模型,得到所述第一训练判别模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述第一训练判别模型的第一损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为攻击报文;
在所述第一损失函数的取值不满足预设的第一损失条件的情况下,对所述第一训练判别模型以及所述训练生成模型中的参数进行调整,或者,对所述第一训练判别模型中的参数进行调整;
在所述第一损失函数的取值满足所述第一损失条件的情况下,结束对所述第一训练判别模型进行的训练,其中,所述第一目标判别模型为结束训练时的所述第一训练判别模型。
作为一种可选的方案,所述装置还用于通过如下方式获取训练样本报文集合:
对所述第一样本攻击报文集合中的M个样本攻击报文、所述训练生成模型依次生成的M个样本攻击报文以及所述正常报文集合进行随机排序,得到所述训练样本报文集合。
作为一种可选的方案,所述装置还用于通过如下方式将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文:
在所述第一样本攻击报文集合包括N个第一样本攻击报文子集、且每个第一样本攻击报文子集包括同一个攻击类型的样本攻击报文的情况下,对于每个第一样本攻击报文子集,执行以下步骤,其中,N为大于1的自然数,在执行以下步骤,所述每个第一样本攻击报文子集被视为当前样本攻击报文子集,所述当前样本攻击报文子集中的样本攻击报文属于当前攻击类型:
将所述第一样本攻击报文子集中的M1个样本攻击报文以及所述样本随机噪声集合中的M1个样本随机噪声依次输入到与所述当前攻击类型对应的当前训练生成子模型,得到所述当前训练生成子模型依次生成的M1个样本攻击报文,其中,所述训练生成模型包括N个训练生成子模型,所述第二样本攻击报文集合包括N个第二攻击报文子集,所述第二样本攻击报文集合中与所述当前攻击类型对应的第二攻击报文子集包括所述当前训练生成子模型依次生成的M1个样本攻击报文,每次输入到所述当前训练生成子模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述当前训练生成子模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的、且类型为所述当前攻击类型的攻击报文,M1为自然数,M1小于或等于M。
作为一种可选的方案,所述装置还用于通过如下方式使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练:
获取训练样本报文集合中的N个训练样本报文子集,其中,每个所述训练样本报文子集包括一个所述第一样本攻击报文子集中的M1个样本攻击报文、一个所述第二样本攻击报文子集中对应的M1个样本攻击报文以及获取到的正常报文子集,所述一个所述第一样本攻击报文子集以及所述一个所述第二样本攻击报文子集中的样本攻击报文属于同一攻击类型;
对于所述第一训练判别模型中包括的N个训练判别子模型,重复执行以下步骤,直到训练结束,其中,在执行以下步骤中,一个所述训练判别子模型被视为当前训练判别子模型,所述N个训练样本报文子集中用于对所述当前训练判别子模型进行训练的训练样本报文子集被视为当前训练样本报文子集,所述当前训练样本报文子集中的所述第一样本攻击报文子集和所述第二样本攻击报文子集中的样本攻击报文属于当前攻击类型,所述当前训练判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文:
在所述当前训练样本报文子集中获取待输入的训练样本报文;
将所述训练样本报文输入到所述当前训练判别子模型中,得到所述当前训练判别子模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为所述当前攻击类型的攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述当前训练判别子模型的当前损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为所述当前攻击类型的攻击报文;
在所述当前损失函数的取值不满足当前损失条件的情况下,对所述当前训练判别子模型以及所述训练生成模型中的参数进行调整,或者,对所述当前训练判别子模型中的参数进行调整;
在所述当前损失函数的取值满足所述当前损失条件的情况下,结束对所述当前训练判别子模型进行的训练,其中,所述第一目标判别模型中对应的一个目标判别子模型为结束训练时的所述当前训练判别子模型,所述对应的一个目标判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文。
作为一种可选的方案,所述装置还用于:
使用所述第一样本攻击报文集合中的样本攻击报文子集对第二训练判别模型进行训练,得到第三训练判别模型,其中,所述第三训练判别模型用于确定输入所述第三训练判别模型的报文是否为攻击报文;
将所述第一训练判别模型初始化为所述第三训练判别模型。
作为一种可选的方案,所述装置还用于:
使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述第三样本攻击报文集合包括目标生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文,所述目标生成模型是对训练生成模型进行训练得到的生成模型,所述第二样本攻击报文集合包括所述训练生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文。
作为一种可选的方案,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型:
在所述第一样本攻击报文集合包括P个第一样本攻击报文子集、第三样本攻击报文集合包括P个第三样本攻击报文子集、所述P个第一样本攻击报文子集与所述P个第三样本攻击报文子集具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型的情况下,使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述目标长短期记忆模型用于分别确定输入的报文属于P个攻击类型中的每个攻击类型的概率,所述P个攻击类型与所述P个第一样本攻击报文子集、所述P个第三样本攻击报文子集具有一一对应的关系,P为自然数。
作为一种可选的方案,所述装置还用于通过如下方式使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型:
重复执行以下步骤,直到训练结束:
在所述第一样本攻击报文集合和所述第三样本攻击报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述训练长短期记忆模型,得到所述训练长短期记忆模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文属于N个攻击类型中的每个攻击类型的概率;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述训练长短期记忆模型的第二损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文是否为攻击报文、且在所述训练样本报文为攻击报文的情况下,还表示所述训练样本报文所属的攻击类型;
在所述第二损失函数的取值不满足预设的第二损失条件的情况下,对所述训练长短期记忆模型中的参数进行调整;
在所述第二损失函数的取值满足所述第二损失条件的情况下,结束对所述训练长短期记忆模型进行的训练,其中,所述目标长短期记忆模型为结束训练时的所述训练长短期记忆模型。
作为一种可选的方案,所述装置还用于通过如下方式将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果:
将所述第一目标报文输入到所述目标长短期记忆模型,得到所述目标长短期记忆模型输出的所述第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文、且在所述第一目标报文为攻击报文的情况下,还表示所述第一目标报文所属的攻击类型;
其中,所述目标长短期记忆模型是使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练得到的模型,所述第一样本攻击报文集合包括N个第一样本攻击报文子集、所述第三样本攻击报文集合包括N个第三样本攻击报文子集,所述N个第一样本攻击报文子集、所述N个第三样本攻击报文子集以及N个攻击类型具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型,N为大于1的自然数。
根据本发明实施例的又一个方面,还提供了一种用于实施上述网络攻击的检测方法的电子设备,该电子设备可以是图1所示的终端设备或服务器。本实施例以该电子设备为服务器为例来说明。如图12所示,该电子设备包括存储器1202和处理器1204,该存储器1202中存储有计算机程序,该处理器1204被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取抓取到的第一目标报文;
S2,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
S3,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,其中,第二目标判别结果用于表示第一目标报文是否为攻击报文。
可选地,本领域普通技术人员可以理解,图12所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图12其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图12中所示更多或者更少的组件(如网络接口等),或者具有与图12所示不同的配置。
其中,存储器1202可用于存储软件程序以及模块,如本发明实施例中的网络攻击的检测方法和装置对应的程序指令/模块,处理器1204通过运行存储在存储器1202内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的网络攻击的检测方法。存储器1202可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1202可进一步包括相对于处理器1204远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1202具体可以但不限于用于存储样本攻击报文与网络数据报文等信息。作为一种示例,如图12所示,上述存储器1202中可以但不限于包括上述网络攻击的检测装置中的获取模块1102、第一输入模块1104以及第二输入模块1106。此外,还可以包括但不限于上述网络攻击的检测装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1206用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1206包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1206为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1208,用于显示网络攻击的检测结果;和连接总线1210,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式***中的一个节点,其中,该分布式***可以为区块链***,该区块链***可以是由该多个节点通过网络通信的形式连接形成的分布式***。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链***中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述网络攻击的检测方面的各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取抓取到的第一目标报文;
S2,将第一目标报文输入到第一目标判别模型,得到第一目标判别模型输出的第一目标判别结果,其中,第一目标判别结果用于表示第一目标报文是否为攻击报文,第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,第一样本攻击报文集合包括抓取到的一组样本攻击报文,第二样本攻击报文集合包括根据第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
S3,在第一目标判别结果表示第一目标报文为攻击报文的情况下,将第一目标报文输入到目标长短期记忆模型,得到目标长短期记忆模型输出的第二目标判别结果,其中,第二目标判别结果用于表示第一目标报文是否为攻击报文。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种网络攻击的检测方法,其特征在于,包括:
获取抓取到的第一目标报文;
将所述第一目标报文输入到第一目标判别模型,得到所述第一目标判别模型输出的第一目标判别结果,其中,所述第一目标判别结果用于表示所述第一目标报文是否为攻击报文,所述第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,所述第一样本攻击报文集合包括抓取到的一组样本攻击报文,所述第二样本攻击报文集合包括根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
在所述第一目标判别结果表示所述第一目标报文为攻击报文的情况下,将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文;
其中,所述方法还包括通过如下方式确定所述第二样本攻击报文集合:
在所述第一样本攻击报文集合包括N个第一样本攻击报文子集、且每个第一样本攻击报文子集包括同一个攻击类型的样本攻击报文的情况下,对于每个第一样本攻击报文子集,执行以下步骤,其中,N为大于1的自然数,所述每个第一样本攻击报文子集被视为当前样本攻击报文子集,所述当前样本攻击报文子集中的样本攻击报文属于当前攻击类型:
将所述第一样本攻击报文子集中的M1个样本攻击报文以及样本随机噪声集合中的M1个样本随机噪声依次输入到与所述当前攻击类型对应的当前训练生成子模型,得到所述当前训练生成子模型依次生成的M1个样本攻击报文,其中,训练生成模型包括N个训练生成子模型,所述第二样本攻击报文集合包括N个第二攻击报文子集,所述第二样本攻击报文集合中与所述当前攻击类型对应的第二攻击报文子集包括所述当前训练生成子模型依次生成的M1个样本攻击报文,每次输入到所述当前训练生成子模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述当前训练生成子模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的、且类型为所述当前攻击类型的攻击报文,M1为自然数,M1小于或等于M,所述第一样本攻击报文集合包括M个样本攻击报文,所述每个第一样本攻击报文子集对应一种攻击类型的样本攻击报文,所述第一样本攻击报文子集中的M1个样本攻击报文以及将M1个样本随机噪声输入当前训练生成子模型得到的M1个样本攻击报文均包含对应的标注信息,所述标注信息中标注了所述样本攻击报文是否为攻击报文,以及在所述样本攻击报文是攻击报文的情况下,所述样本攻击报文的攻击类型,每个攻击类型的所述样本攻击报文对应一个训练生成子模型,以得到攻击类型相同的所述第二样本攻击报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型。
3.根据权利要求2所述的方法,其特征在于,所述使用所述第一样本攻击报文集合和所述第二样本攻击报文集合对所述第一训练判别模型进行训练,得到所述第一目标判别模型,包括:
重复执行以下步骤,直到得到所述第一目标判别模型:
将所述第一样本攻击报文集合中的M个样本攻击报文以及样本随机噪声集合中的M个样本随机噪声依次输入到训练生成模型,得到所述训练生成模型依次生成的M个样本攻击报文,其中,所述第二样本攻击报文集合包括所述训练生成模型依次生成的M个样本攻击报文,每次输入到目标生成模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述训练生成模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的攻击报文,M为自然数;
使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练。
4.根据权利要求3所述的方法,其特征在于,所述使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练,包括:
获取训练样本报文集合,其中,所述训练样本报文集合包括所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文以及获取到的正常报文集合;
重复执行以下步骤,直到训练结束:
在所述训练样本报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述第一训练判别模型,得到所述第一训练判别模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述第一训练判别模型的第一损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为攻击报文;
在所述第一损失函数的取值不满足预设的第一损失条件的情况下,对所述第一训练判别模型以及所述训练生成模型中的参数进行调整,或者,对所述第一训练判别模型中的参数进行调整;
在所述第一损失函数的取值满足所述第一损失条件的情况下,结束对所述第一训练判别模型进行的训练,其中,所述第一目标判别模型为结束训练时的所述第一训练判别模型。
5.根据权利要求4所述的方法,其特征在于,所述获取训练样本报文集合,包括:
对所述第一样本攻击报文集合中的M个样本攻击报文、所述训练生成模型依次生成的M个样本攻击报文以及所述正常报文集合进行随机排序,得到所述训练样本报文集合。
6.根据权利要求1所述的方法,其特征在于,所述使用所述第一样本攻击报文集合中的M个样本攻击报文和所述训练生成模型依次生成的M个样本攻击报文对所述第一训练判别模型进行训练,包括:
获取训练样本报文集合中的N个训练样本报文子集,其中,每个所述训练样本报文子集包括一个所述第一样本攻击报文子集中的M1个样本攻击报文、一个第二样本攻击报文子集中对应的M1个样本攻击报文以及获取到的正常报文子集,所述一个所述第一样本攻击报文子集以及所述一个所述第二样本攻击报文子集中的样本攻击报文属于同一攻击类型;
对于所述第一训练判别模型中包括的N个训练判别子模型,重复执行以下步骤,直到训练结束,其中,在执行以下步骤中,一个所述训练判别子模型被视为当前训练判别子模型,所述N个训练样本报文子集中用于对所述当前训练判别子模型进行训练的训练样本报文子集被视为当前训练样本报文子集,所述当前训练样本报文子集中的所述第一样本攻击报文子集和所述第二样本攻击报文子集中的样本攻击报文属于当前攻击类型,所述当前训练判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文:
在所述当前训练样本报文子集中获取待输入的训练样本报文;
将所述训练样本报文输入到所述当前训练判别子模型中,得到所述当前训练判别子模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文是否为所述当前攻击类型的攻击报文;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述当前训练判别子模型的当前损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文实际是否为所述当前攻击类型的攻击报文;
在所述当前损失函数的取值不满足当前损失条件的情况下,对所述当前训练判别子模型以及所述训练生成模型中的参数进行调整,或者,对所述当前训练判别子模型中的参数进行调整;
在所述当前损失函数的取值满足所述当前损失条件的情况下,结束对所述当前训练判别子模型进行的训练,其中,所述第一目标判别模型中对应的一个目标判别子模型为结束训练时的所述当前训练判别子模型,所述对应的一个目标判别子模型用于确定输入的报文是否为所述当前攻击类型的攻击报文。
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
使用所述第一样本攻击报文集合中的样本攻击报文子集对第二训练判别模型进行训练,得到第三训练判别模型,其中,所述第三训练判别模型用于确定输入所述第三训练判别模型的报文是否为攻击报文;
将所述第一训练判别模型初始化为所述第三训练判别模型。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括:
使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述第三样本攻击报文集合包括目标生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文,所述目标生成模型是对训练生成模型进行训练得到的生成模型,所述第二样本攻击报文集合包括所述训练生成模型根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文。
9.根据权利要求8所述的方法,其特征在于,所述使用所述第一样本攻击报文集合和第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,包括:
在所述第一样本攻击报文集合包括P个第一样本攻击报文子集、第三样本攻击报文集合包括P个第三样本攻击报文子集、所述P个第一样本攻击报文子集与所述P个第三样本攻击报文子集具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型的情况下,使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,其中,所述目标长短期记忆模型用于分别确定输入的报文属于P个攻击类型中的每个攻击类型的概率,所述P个攻击类型与所述P个第一样本攻击报文子集、所述P个第三样本攻击报文子集具有一一对应的关系,P为自然数。
10.根据权利要求9所述的方法,其特征在于,所述使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练,得到所述目标长短期记忆模型,包括:
重复执行以下步骤,直到训练结束:
在所述第一样本攻击报文集合和所述第三样本攻击报文集合中获取待输入的训练样本报文;
将所述训练样本报文输入到所述训练长短期记忆模型,得到所述训练长短期记忆模型输出的样本判别结果,其中,所述样本判别结果用于表示所述训练样本报文属于N个攻击类型中的每个攻击类型的概率;
根据所述样本判别结果以及所述训练样本报文的实际判别结果,确定所述训练长短期记忆模型的第二损失函数的取值,其中,所述实际判别结果用于表示所述训练样本报文是否为攻击报文、且在所述训练样本报文为攻击报文的情况下,还表示所述训练样本报文所属的攻击类型;
在所述第二损失函数的取值不满足预设的第二损失条件的情况下,对所述训练长短期记忆模型中的参数进行调整;
在所述第二损失函数的取值满足所述第二损失条件的情况下,结束对所述训练长短期记忆模型进行的训练,其中,所述目标长短期记忆模型为结束训练时的所述训练长短期记忆模型。
11.根据权利要求8所述的方法,其特征在于,所述将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,包括:
将所述第一目标报文输入到所述目标长短期记忆模型,得到所述目标长短期记忆模型输出的所述第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文、且在所述第一目标报文为攻击报文的情况下,还表示所述第一目标报文所属的攻击类型;
其中,所述目标长短期记忆模型是使用所述第一样本攻击报文集合和所述第三样本攻击报文集合对训练长短期记忆模型进行训练得到的模型,所述第一样本攻击报文集合包括N个第一样本攻击报文子集、所述第三样本攻击报文集合包括N个第三样本攻击报文子集,所述N个第一样本攻击报文子集、所述N个第三样本攻击报文子集以及N个攻击类型具有一一对应的关系,具有对应关系的一个所述第一样本攻击报文子集与一个所述第三样本攻击报文子集中的样本攻击报文属于同一个攻击类型,N为大于1的自然数。
12.一种网络攻击的检测装置,其特征在于,包括:
获取模块,用于获取抓取到的第一目标报文;
第一输入模块,用于将所述第一目标报文输入到第一目标判别模型,得到所述第一目标判别模型输出的第一目标判别结果,其中,所述第一目标判别结果用于表示所述第一目标报文是否为攻击报文,所述第一目标判别模型是使用第一样本攻击报文集合和第二样本攻击报文集合对第一训练判别模型进行训练得到的模型,所述第一样本攻击报文集合包括抓取到的一组样本攻击报文,所述第二样本攻击报文集合包括根据所述第一样本攻击报文集合中的样本攻击报文生成的攻击报文;
第二输入模块,用于在所述第一目标判别结果表示所述第一目标报文为攻击报文的情况下,将所述第一目标报文输入到目标长短期记忆模型,得到所述目标长短期记忆模型输出的第二目标判别结果,其中,所述第二目标判别结果用于表示所述第一目标报文是否为攻击报文;
其中,所述装置还用于通过如下方式确定所述第二样本攻击报文集合:
在所述第一样本攻击报文集合包括N个第一样本攻击报文子集、且每个第一样本攻击报文子集包括同一个攻击类型的样本攻击报文的情况下,对于每个第一样本攻击报文子集,执行以下步骤,其中,N为大于1的自然数,所述每个第一样本攻击报文子集被视为当前样本攻击报文子集,所述当前样本攻击报文子集中的样本攻击报文属于当前攻击类型:
将所述第一样本攻击报文子集中的M1个样本攻击报文以及样本随机噪声集合中的M1个样本随机噪声依次输入到与所述当前攻击类型对应的当前训练生成子模型,得到所述当前训练生成子模型依次生成的M1个样本攻击报文,其中,训练生成模型包括N个训练生成子模型,所述第二样本攻击报文集合包括N个第二攻击报文子集,所述第二样本攻击报文集合中与所述当前攻击类型对应的第二攻击报文子集包括所述当前训练生成子模型依次生成的M1个样本攻击报文,每次输入到所述当前训练生成子模型的输入项包括一个样本攻击报文以及一个样本随机噪声,所述当前训练生成子模型用于每次根据输入的所述一个样本随机噪声生成与输入的所述一个样本攻击报文匹配的、且类型为所述当前攻击类型的攻击报文,M1为自然数,M1小于或等于M,所述第一样本攻击报文集合包括M个样本攻击报文,所述每个第一样本攻击报文子集对应一种攻击类型的样本攻击报文,所述第一样本攻击报文子集中的M1个样本攻击报文以及将M1个样本随机噪声输入当前训练生成子模型得到的M1个样本攻击报文均包含对应的标注信息,所述标注信息中标注了所述样本攻击报文是否为攻击报文,以及在所述样本攻击报文是攻击报文的情况下,所述样本攻击报文的攻击类型,每个攻击类型的所述样本攻击报文对应一个训练生成子模型,以得到攻击类型相同的所述第二样本攻击报文。
13.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序可被终端设备或计算机运行时执行所述权利要求1至11任一项中所述的方法。
14.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至11任一项中所述的方法。
CN202110107046.3A 2021-01-27 2021-01-27 网络攻击的检测方法和装置、存储介质及电子设备 Active CN112437099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110107046.3A CN112437099B (zh) 2021-01-27 2021-01-27 网络攻击的检测方法和装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110107046.3A CN112437099B (zh) 2021-01-27 2021-01-27 网络攻击的检测方法和装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN112437099A CN112437099A (zh) 2021-03-02
CN112437099B true CN112437099B (zh) 2021-05-14

Family

ID=74697291

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110107046.3A Active CN112437099B (zh) 2021-01-27 2021-01-27 网络攻击的检测方法和装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN112437099B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110808968A (zh) * 2019-10-25 2020-02-18 新华三信息安全技术有限公司 网络攻击检测方法、装置、电子设备和可读存储介质
CN111049786A (zh) * 2018-10-12 2020-04-21 北京奇虎科技有限公司 一种网络攻击的检测方法、装置、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111447212A (zh) * 2020-03-24 2020-07-24 哈尔滨工程大学 一种基于gan的apt攻击序列的生成与检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049786A (zh) * 2018-10-12 2020-04-21 北京奇虎科技有限公司 一种网络攻击的检测方法、装置、设备及存储介质
CN110808968A (zh) * 2019-10-25 2020-02-18 新华三信息安全技术有限公司 网络攻击检测方法、装置、电子设备和可读存储介质

Also Published As

Publication number Publication date
CN112437099A (zh) 2021-03-02

Similar Documents

Publication Publication Date Title
US10708288B2 (en) Computerized system and method for automatically determining malicious IP clusters using network activity data
Coulter et al. Data-driven cyber security in perspective—Intelligent traffic analysis
Gupta et al. Towards detecting fake user accounts in facebook
Chu et al. Detecting social spam campaigns on twitter
Adewole et al. SMSAD: a framework for spam message and spam account detection
CN111538929B (zh) 网络链接识别方法、装置、存储介质及电子设备
JP6835703B2 (ja) サイバー攻撃検知システム、特徴量選定システム、サイバー攻撃検知方法、及びプログラム
CN113015167B (zh) 加密流量数据的检测方法、***、电子装置和存储介质
Mohamed et al. Towards machine learning based IoT intrusion detection service
Vinayakumar et al. Deep learning framework for cyber threat situational awareness based on email and url data analysis
Beaver et al. A learning system for discriminating variants of malicious network traffic
Pashaei et al. Early Intrusion Detection System using honeypot for industrial control networks
CN114422271B (zh) 数据处理方法、装置、设备及可读存储介质
Sethi et al. Robust adaptive cloud intrusion detection system using advanced deep reinforcement learning
Kamran et al. Semi-supervised conditional GAN for simultaneous generation and detection of phishing URLs: A game theoretic perspective
Soman et al. A comprehensive tutorial and survey of applications of deep learning for cyber security
Alsufyani et al. Social engineering attack detection using machine learning: Text phishing attack
CN112437099B (zh) 网络攻击的检测方法和装置、存储介质及电子设备
CN114726823B (zh) 一种基于生成对抗网络的域名生成方法、装置和设备
Vo et al. Ai-powered intrusion detection in large-scale traffic networks based on flow sensing strategy and parallel deep analysis
Thanthrige Hidden markov model based intrusion alert prediction
Fadel et al. The proposed hybrid deep learning intrusion prediction IoT (HDLIP-IoT) framework
CN116089938A (zh) 开源组件包的安全检测方法及装置
García-Ordás et al. Autoencoder latent space influence on iot mqtt attack classification
CN114513369B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40041344

Country of ref document: HK