CN115801468A - 一种零日漏洞攻击检测方法、装置及存储介质 - Google Patents

一种零日漏洞攻击检测方法、装置及存储介质 Download PDF

Info

Publication number
CN115801468A
CN115801468A CN202310084441.3A CN202310084441A CN115801468A CN 115801468 A CN115801468 A CN 115801468A CN 202310084441 A CN202310084441 A CN 202310084441A CN 115801468 A CN115801468 A CN 115801468A
Authority
CN
China
Prior art keywords
attack
zero
request
keywords
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310084441.3A
Other languages
English (en)
Other versions
CN115801468B (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.)
Nanjing Juming Network Technology Co ltd
Original Assignee
Nanjing Juming Network 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 Nanjing Juming Network Technology Co ltd filed Critical Nanjing Juming Network Technology Co ltd
Priority to CN202310084441.3A priority Critical patent/CN115801468B/zh
Publication of CN115801468A publication Critical patent/CN115801468A/zh
Application granted granted Critical
Publication of CN115801468B publication Critical patent/CN115801468B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本申请实施例公开了一种零日漏洞攻击检测方法、装置及存储介质,其中零日漏洞攻击检测方法包括步骤:根据零日漏洞攻击的特征,建立关键字集合;利用嗅探方式从网卡中获取网络数据;利用建立的预处理函数集,根据网络数据中各类需解析的协议类型对网络数据进行预备处理,以及对网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;对请求集合和响应集合中的请求和响应是否命中关键字集合中的关键字以及响应是否失败进行分析,以对可能的攻击类型进行划分;根据分析和划分的攻击类型,基于请求和/或响应的关键字命中的权重和,对零日漏洞攻击进行效用评估,基于效用评估判断是否存在零日漏洞攻击。

Description

一种零日漏洞攻击检测方法、装置及存储介质
技术领域
本申请涉及计算机信息处理技术领域,具体涉及一种零日漏洞攻击检测方法、装置及存储介质。
背景技术
所谓零日漏洞是指那些未被漏洞管理机构收纳或记载在案的漏洞,故在通常情况下它们不具有CVE编号或其它较为正式的候选编号(这点与已知漏洞或N-日漏洞不同),我们或可以称这些零日漏洞为在野的(on the wild),而利用这些零日漏洞对组织进行的攻击通常是非常难于发现的,故检测它们也就无从谈起。
在一般情况下,各类安全设备对于攻击的检测一般是基于签名(Signature),签名早已被证明是检测网络攻击的有效解决方案。
根据预定义的签名特征,安全设备可以准确地检测已知威胁,很少或没有误报。然而,创建基于签名的规则需要对某些漏洞进行概念验证或技术分析(即所谓的PoC,全称为Proof of Concept),因此,由于缺乏知识,使用签名技术难以检测未知攻击,特别是针对零日漏洞的攻击。例如,远程代码执行漏洞攻击通常是利用易受攻击的URI/参数和恶意有效载荷进行的,应识别这两个部分以确保检测到威胁。另一方面,在零日攻击中,这两个部分可能是未知的或模糊的,因此很难获得所需的签名覆盖范围。根据相关数据表明,在安全实践中发现威胁研究人员面临以下一系列挑战:
1.假阴性:经常性地会看到变体和零日攻击,由于事先缺乏攻击细节,安全设备无法对所有攻击进行全面覆盖;
2.假阳性:为了解决变体和零日攻击,创建了具有宽松条件的通用规则,这不可避免地带来了误报的风险;
3.延迟漏洞泄露、安全供应商推出保护措施和客户应用安全补丁之间的时间间隔为攻击者漏洞利用提供了重要窗口。
上述这些问题是基于签名检测方式所固有的,因此需要一种利用其它技术解决这些缺陷的检测方案。
发明内容
本申请实施例的目的在于提供一种零日漏洞攻击检测方法、装置及存储介质,用以解决现有技术中的基于签名的网络攻击检测方式的无法全面、准确和快速地对零日漏洞进行攻击检测的问题。
为实现上述目的,本申请实施例提供一种零日漏洞攻击检测方法,包括步骤:根据零日漏洞攻击的特征,建立关键字集合;
利用嗅探方式从网卡中获取网络数据;
利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;
对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;
根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
可选地,所述攻击类型包括:
第一攻击类型:负载中的所述请求匹配所述关键字集合中的关键字且所述响应匹配所述关键字集合中的关键字;
第二攻击类型:负载中的所述请求匹配所述关键字集合中的关键字但所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第三攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字但所述响应匹配所述关键字集合中的关键字,且所述响应成功;
第四攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第五攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应成功。
可选地,当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字;
当所述攻击类型为所述第五攻击类型时,利用行为分析方法,将请求命令序列与历史请求序列进行比较,当所述请求命令序列占比低于预设阈值,则判断存在所述零日漏洞攻击。
可选地,所述对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击包括:
使用公式:
Figure SMS_1
对所述零日漏洞攻击进行所述效用评估,其中,
Figure SMS_2
为所述效用评估的得分,
Figure SMS_3
为所述请求的所述关键字命中的权重,
Figure SMS_4
为所述响应的所述关键字命中的权重,fb为回馈函数,
Figure SMS_5
其中,coefficient指回馈因子,基于所述攻击类型获取对应的所述回馈因子,high_score指预置分值,
Figure SMS_6
为克罗内克函数,
Figure SMS_7
其中,
Figure SMS_8
为行为分析方法的行为计算函数,
Figure SMS_9
为历史指令序列,
Figure SMS_10
为当前指令序列;
设置门限值,如果所述效用评估的得分大于所述门限值,则判断存在所述零日漏洞攻击。
可选地,当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字之后,还包括:
将提取的关键字加入到所述关键字集合中;
当所述效用评估的得分大于预设值时,将对应的所述零日漏洞攻击的源地址进行记录,以在后续的检测中进行利用。
可选地,所述关键字集合包括:
不同操作系统平台的完备命令集、不同关系型数据库的完备保留字集、网站编程语言的保留函数集和/或命令执行结果关键字集。
可选地,所述预处理函数集包括:
协议解析函数集、编码转换函数集、字符归一转换集和/或压缩处理函数集。
可选地,所述请求集合包括请求命令和请求参数,所述响应集合包括返回码和结果,所述请求集合和所述响应集合均为良序集。
为实现上述目的,本申请还提供一种零日漏洞攻击检测装置,包括:存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
根据零日漏洞攻击的特征,建立关键字集合;
利用嗅探方式从网卡中获取网络数据;
利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;
对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;
根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
为实现上述目的,本申请还提供一种计算机存储介质,其上存储有计算机程序,其中所述计算机程序被机器执行时实现如上所述的方法的步骤。
本申请实施例具有如下优点:
本申请实施例提供一种零日漏洞攻击检测方法,包括步骤:根据零日漏洞攻击的特征,建立关键字集合;利用嗅探方式从网卡中获取网络数据;利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;对所述请求集合和响应集合中的请求和/或响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;根据所述分析和划分的所述攻击类型,基于所述请求和响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
通过上述方法,构建了基于强弱特征的针对零日攻击检测的整体框架,其中所谓强特征是主要面向网络数据包负载内容的,而弱特征则主要针对网络访问行为,综合此两方特征对可能的零日漏洞攻击进行检测,避免海量的正负向样本学习,以及在构造负向样本过程的困难(如样本匮乏或很难构造负向样本,特别是未知的零日漏洞,则更加无从构造),以及避免使用复杂的机器学习方法,特别是如多层卷积神经网络、时序或递归神经网络等较为耗时的机器学习模型,加速了模型建立和检测过程,从而快速应对相关针对零日漏洞的攻击;在整体框架中,综合应用双向判断逻辑,即从请求和响应两方的角度对攻击的可能性进行判断,从而增强对于判定结果的可信程度,重点关注和强化对于那些存在响应失败或异常的网络连接、确定的攻击成功结果等,达到更好地发现零日漏洞的效果;可以从相关检测结果中自动生成攻击片段特征和威胁情报,从而对于发现后续类似攻击时,直接使用自动生成的检测规则和威胁情报进行判断,可以加速整体判定过程,缩短安全响应和处置的时间,为抑制、阻断各类未知威胁,特别是针对零日漏洞的攻击赢得更多时间。
附图说明
为了更清楚地说明本申请的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
图1为本申请实施例提供的一种零日漏洞攻击检测方法的流程图;
图2为本申请实施例提供的一种零日漏洞攻击检测装置的模块框图。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,下面所描述的本申请不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
基于真实世界的零日和正常流量,本申请提出了一种方法,以解决常见的攻击,如远程代码执行、SQL注入、利用SMB协议内网扩散等。从安全实践角度出发,可以发现此模型在零日漏洞检测中非常有用,比传统的基于签名的方法更健壮,响应速度更快。
本申请所提出的针对零日漏洞攻击检测的方法并非完全是基于机器学习的,也非完全依赖于网络行为的识别,虽然可能它运用了某些机器学习方法,因为纯粹的机器学习方法在零日漏洞攻击检测中可能存在误报较多、检测速度较慢等问题,从而无法及时、快速地对攻击进行发现,影响安全响应和处置的速度,而且可能对用户对这些攻击结果进行处理时存在迷惑的部分,这在日常安全运维、集中安全攻防演练以及重大事件安全保护中,可能是无法忍受的。
本申请一实施例提供一种零日漏洞攻击检测方法,参考图1,图1为本申请的一实施方式中提供的一种零日漏洞攻击检测方法的流程图,应当理解的是,该方法还可以包括未示出的附加框和/或可以省略所示出的框,本申请的范围在此方面不受限制。
在步骤101处,根据零日漏洞攻击的特征,建立关键字集合。
在一些实施例中,所述关键字集合包括:
不同操作系统平台的完备命令集、不同关系型数据库的完备保留字集、网站编程语言的保留函数集和/或命令执行结果关键字集。
具体地,预先建立较完备的关键字集合K,这些关键字集合被划分为如下几类:
不同操作系统平台的完备命令集,包含如Windows、Linux、Unix、MACOS等,但不包含任何命令参数,将其命名为K_CMD;
不同关系型数据库的完备保留字集,支持常见的SQL语句以及不同数据库系统所支持的函数、存储过程等,将其命名为K_SQL;
主要网站编程语言的保留函数集,函数集中包含了常见的、经常为黑客所用的函数,如命令执行(如system()、getRuntime().exec()、Eval()等)、网络访问函数、文件访问函数等等,将其命名为K_PRO;
命令执行结果关键字集,此集合中包含了对于不同命令执行结果的回显正则模式,主要用于检测一些入侵的getshell特征,将其命名为K_RESULT;
在上述集合中的关键集合及其关键字元素具备不同的权重,以区分在最终检测结果中的判定情况;
将关键字集合统一表示为:
K={K_CMD, K_SQL, K_PRO, K_RESULT}。
在步骤102处,利用嗅探方式从网卡中获取网络数据。
具体地,由于本申请针对的零日漏洞利用攻击检测,是基于网络数据方式的,而非终端方式(这与杀毒软件或者终端安全响应类产品对于检测零日漏洞攻击的基础和方法不同),故从网络数据中获取相关数据为首要步骤,即利用嗅探方式从网卡中获取网络数据,并根据网络会话的五元组,包括其协议特征进行重组,获取这些网络会话的应用负载信息;其中对于检测零日漏洞攻击觉有较大的意义主要为HTTP(主要应对外部攻击)、SMB(主要应对内部攻击)、RDP(远程桌面协议)、KRB5、SSH等,故本发明基本上也是基于这些网络应用协议的。
在步骤103处,利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合。
具体地,建立数据预处理函数集Pre_Fun,函数集中的每个元素可针对不同网络协议进行处理;函数对网络数据进行预处理和部分解析,数据预处理的重点主要是针对请求的方法、指令序列、每个指令参数(不是每种协议均需解析,但对于HTTP是必须的)、响应码以及响应内容,此处响应码不单指HTTP协议的响应码(如200、302、404、500等),对于如SMB等协议也包含了错误码等内容,如无法找到路径、拒绝访问、权限错误等等;将相关协议(主要是针对HTTP)的某些数据进行转码,转码主要针对存在指令参数中包含了如URLEncode等进行处理并将所有字符转换为小写;此外,由于某些协议,特别是HTTP协议,允许使用压缩方式传送数据,故在预处理函数集中还应包含对于一些主流压缩算法的解压缩支持,这主要为针对请求体部分。
根据获取的网络数据中各类需解析的协议类型,利用预处理函数集对它们进行预备处理,并将请求部分以及响应部分进行解析,形成不同的集合,即请求集合与响应集合。
在一些实施例中,所述预处理函数集包括:
协议解析函数集、编码转换函数集、字符归一转换集和/或压缩处理函数集。
具体地,总体而言,预处理函数包含了如下几种类型:
协议解析函数集,即Pre_Fun_Protocol_Parse;
编码转换函数集,即Pre_Fun_Decode;
字符归一转换集,即Pre_Fun_Trans;
压缩处理函数集,即Pre_Fun_Decompression;
将预处理函数集统一表示为:
Pre_Fun= {Pre_Fun_Protocol_Parse, Pre_Fun_Decode, Pre_Fun_Trans, Pre_Fun_Decompression}。
在一些实施例中,所述请求集合包括请求命令和请求参数,所述响应集合包括返回码和结果,所述请求集合和所述响应集合均为良序集。
具体地,其中请求集合包含了请求命令与请求参数,而响应集合则包含了返回码和结果,这两个集合均为良序集,即集合中元素存在序关系,可以表达为如下元组方式:
Figure SMS_11
其中,
Figure SMS_12
Figure SMS_13
<…>表示为元组方式。
在步骤104中,对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分。
具体地,根据请求集合中的请求是否命中了预置的请求关键字(关键字集合中的相应关键字,包括命令、SQL、代码等,下同)、响应是否失败(根据响应数据)以及响应中是否包含结果关键字(关键字集合中的相应关键字,下同)等对可能的攻击进行划分。
在一些实施例中,所述攻击类型包括:
第一攻击类型:负载中的所述请求匹配所述关键字集合中的关键字且所述响应匹配所述关键字集合中的关键字;
第二攻击类型:负载中的所述请求匹配所述关键字集合中的关键字但所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第三攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字但所述响应匹配所述关键字集合中的关键字,且所述响应成功;
第四攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第五攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应成功。
具体地,如下几种攻击类型,可以认为具有较大的可疑程度,即发现可能存在针对零日漏洞攻击的可能:
第一攻击类型:负载中匹配请求关键字且响应匹配结果关键字,此时使用高回馈因子以强化整体判别;
第二攻击类型:负载中匹配请求关键字但响应不匹配结果关键字,且响应失败,此时使用次高回馈因子以强化整体判别;
第三攻击类型:负载中不能匹配请求关键字但响应匹配结果关键字,且响应成功,此时使用次高回馈因子以强化整体判别;使用一般分词方法或根据协议特性,从请求中提取关键字(允许为二进制方式);
第四攻击类型:负载中不能匹配请求关键字而且响应也不匹配任何结果关键字,当响应失败,此时使用中高回馈因子以强化整体判别;使用一般分词方法或根据协议特性,从请求中提取关键字;
第五攻击类型:负载中不能匹配请求关键字而且响应也不匹配任何结果关键字,但响应成功,此时运用行为分析方法,即将请求命令序列做成2-gram方式,与历史请求序列相比较,如请求序列占比低于某个阈值(如百分之一)则认为可能存在攻击;命令请求序列可能是基于HTTP的API或者如SMB协议中的命令、一些工控协议中的指令等,故可能为文本方式也可能是基于二进制的,此处不做区分,在本专利中使用Base64方式统一进行转换。
在步骤105处,根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
具体地,根据前述实施例中的分析和攻击类型的划分,对所述零日漏洞攻击进行效用评估。
在一些实施例中,所述对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击的方法包括:
使用公式:
Figure SMS_14
对所述零日漏洞攻击进行所述效用评估,其中,
Figure SMS_15
为所述效用评估的得分,
Figure SMS_16
为所述请求的所述关键字命中的权重,
Figure SMS_17
为所述响应的所述关键字命中的权重,fb为回馈函数,
Figure SMS_18
其中,coefficient指回馈因子,基于所述攻击类型获取对应的所述回馈因子,high_score指预置分值,
Figure SMS_19
为克罗内克函数,
Figure SMS_20
其中,
Figure SMS_21
为行为分析方法的行为计算函数,
Figure SMS_22
为历史指令序列,
Figure SMS_23
为当前指令序列;
设置门限值,如果所述效用评估的得分大于所述门限值,则判断存在所述零日漏洞攻击。
具体地,使用如下公式对整体的零日漏洞攻击进行效用评估:
Figure SMS_24
对于上述公式的解释为:公式共分为三个部分,第一部分为请求关键字命中的权重和;而第二部分为响应关键字命中的权重和,fb为回馈函数,具体计算方式为如响应失败则赋以一个较高的预置分值(如50),如果响应成功则函数返回一个大于1的系数(可以根据情况取值,如2、4等),以放大如果响应结果中匹配了某些关键字;具体如下:
Figure SMS_25
其中,coefficient指回馈因子,high_score指预置分值。
公式的第三部分中包含了一个克罗内克函数
Figure SMS_26
(此处克罗内克函数的作用为:当公式前两部分均为0时输出为1,否则则输出0)以及一个行为计算函数,其中克罗内克函数定义如下:
Figure SMS_27
行为计算函数的参数分别为当前的指令序列集合以及历史指令序列集合,行为计算函数会依据当前某指令序列(即
Figure SMS_28
)在历史指令序列中出现的频度进行评判,低于一个预先制定的阈值(百分比)则认为可能存在问题;
本方法设置门限值th,如果score(效用评估得分)大于这个门限值则认为存在攻击,否则忽略之;需要注意的是,此处的分值为一绝对数值,此数值愈高则可信程度越高。
在一些实施例中,当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字之后,还包括:
将提取的关键字加入到所述关键字集合中;
当所述效用评估的得分大于预设值时,将对应的所述零日漏洞攻击的源地址进行记录,以在后续的检测中进行利用。
具体地,利用前述实施例对于相关分词(关键字)的抽取结果,将其加入到关键字集合的新增关键字中,并且对于可信度较高(可以设置为效用评估得分高于门限值th的百分比)的攻击,可将其源地址(应为广域网地址)加入到本地离线威胁情报集合中,这样在后续的检测中可以避免过多的对网络数据的负载内容进行碰撞,加速整体检测过程。
通过上述方法,构建了基于强弱特征的针对零日攻击检测的整体框架,其中所谓强特征是主要面向网络数据包负载内容的,而弱特征则主要针对网络访问行为,综合此两方特征对可能的零日漏洞攻击进行检测,避免海量的正负向样本学习,以及在构造负向样本过程的困难(如样本匮乏或很难构造负向样本,特别是未知的零日漏洞,则更加无从构造),以及避免使用复杂的机器学习方法,特别是如多层卷积神经网络、时序或递归神经网络等较为耗时的机器学习模型,加速了模型建立和检测过程,从而快速应对相关针对零日漏洞的攻击;在整体框架中,综合应用双向判断逻辑,即从请求和响应两方的角度对攻击的可能性进行判断,从而增强对于判定结果的可信程度,重点关注和强化对于那些存在响应失败或异常的网络连接、确定的攻击成功结果等,达到更好地发现零日漏洞的效果;可以从相关检测结果中自动生成攻击片段特征和威胁情报,从而对于发现后续类似攻击时,直接使用自动生成的检测规则和威胁情报进行判断,可以加速整体判定过程,缩短安全响应和处置的时间,为抑制、阻断各类未知威胁,特别是针对零日漏洞的攻击赢得更多时间。
图2为本申请实施例提供的一种零日漏洞攻击检测装置的模块框图。该装置包括:
存储器201;以及与所述存储器201连接的处理器202,所述处理器202被配置成:根据零日漏洞攻击的特征,建立关键字集合;
利用嗅探方式从网卡中获取网络数据;
利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;
对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;
根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
在一些实施例中,所述处理器202还被配置成:所述攻击类型包括:
第一攻击类型:负载中的所述请求匹配所述关键字集合中的关键字且所述响应匹配所述关键字集合中的关键字;
第二攻击类型:负载中的所述请求匹配所述关键字集合中的关键字但所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第三攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字但所述响应匹配所述关键字集合中的关键字,且所述响应成功;
第四攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第五攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应成功。
在一些实施例中,所述处理器202还被配置成:当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字;
当所述攻击类型为所述第五攻击类型时,利用行为分析方法,将请求命令序列与历史请求序列进行比较,当所述请求命令序列占比低于预设阈值,则判断存在所述零日漏洞攻击。
在一些实施例中,所述处理器202还被配置成:所述对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击的方法包括:
使用公式:
Figure SMS_29
对所述零日漏洞攻击进行所述效用评估,其中,
Figure SMS_30
为所述效用评估的得分,
Figure SMS_31
为所述请求的所述关键字命中的权重,
Figure SMS_32
为所述响应的所述关键字命中的权重,fb为回馈函数,
Figure SMS_33
其中,coefficient指回馈因子,基于所述攻击类型获取对应的所述回馈因子,high_score指预置分值,
Figure SMS_34
为克罗内克函数,
Figure SMS_35
其中,
Figure SMS_36
为行为分析方法的行为计算函数,
Figure SMS_37
为历史指令序列,
Figure SMS_38
为当前指令序列;
设置门限值,如果所述效用评估的得分大于所述门限值,则判断存在所述零日漏洞攻击。
在一些实施例中,所述处理器202还被配置成:当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字之后,还包括:
将提取的关键字加入到所述关键字集合中;
当所述效用评估的得分大于预设值时,将对应的所述零日漏洞攻击的源地址进行记录,以在后续的检测中进行利用。
在一些实施例中,所述处理器202还被配置成:所述关键字集合包括:
不同操作系统平台的完备命令集、不同关系型数据库的完备保留字集、网站编程语言的保留函数集和/或命令执行结果关键字集。
在一些实施例中,所述处理器202还被配置成:所述预处理函数集包括:
协议解析函数集、编码转换函数集、字符归一转换集和/或压缩处理函数集。
在一些实施例中,所述处理器202还被配置成:所述请求集合包括请求命令和请求参数,所述响应集合包括返回码和结果,所述请求集合和所述响应集合均为良序集。
具体实现方法参考前述方法实施例,此处不再赘述。
本申请可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本申请的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
注意,除非另有直接说明,否则本说明书(包含任何所附权利要求、摘要和附图)中所揭示的所有特征皆可由用于达到相同、等效或类似目的的可替代特征来替换。因此,除非另有明确说明,否则所公开的每一个特征仅是一组等效或类似特征的一个示例。在使用到的情况下,进一步地、较优地、更进一步地和更优地是在前述实施例基础上进行另一实施例阐述的简单起头,该进一步地、较优地、更进一步地或更优地后带的内容与前述实施例的结合作为另一实施例的完整构成。在同一实施例后带的若干个进一步地、较优地、更进一步地或更优地设置之间可任意组合的组成又一实施例。
虽然,上文中已经用一般性说明及具体实施例对本申请作了详尽的描述,但在本申请基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本申请精神的基础上所做的这些修改或改进,均属于本申请要求保护的范围。

Claims (10)

1.一种零日漏洞攻击检测方法,其特征在于,包括以下步骤:
根据零日漏洞攻击的特征,建立关键字集合;
利用嗅探方式从网卡中获取网络数据;
利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;
对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;
根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
2.根据权利要求1所述的零日漏洞攻击检测方法,其特征在于,所述攻击类型包括:
第一攻击类型:负载中的所述请求匹配所述关键字集合中的关键字且所述响应匹配所述关键字集合中的关键字;
第二攻击类型:负载中的所述请求匹配所述关键字集合中的关键字但所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第三攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字但所述响应匹配所述关键字集合中的关键字,且所述响应成功;
第四攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应失败;
第五攻击类型:负载中的所述请求不匹配所述关键字集合中的关键字且所述响应不匹配所述关键字集合中的关键字,且所述响应成功。
3.根据权利要求2所述的零日漏洞攻击检测方法,其特征在于,
当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字;
当所述攻击类型为所述第五攻击类型时,利用行为分析方法,将请求命令序列与历史请求序列进行比较,当所述请求命令序列占比低于预设阈值,则判断存在所述零日漏洞攻击。
4.根据权利要求3所述的零日漏洞攻击检测方法,其特征在于,所述对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击的方法包括:
使用公式:
Figure QLYQS_1
对所述零日漏洞攻击进行所述效用评估,其中,
Figure QLYQS_2
为所述效用评估的得分,
Figure QLYQS_3
为所述请求的所述关键字命中的权重,
Figure QLYQS_4
为所述响应的所述关键字命中的权重,fb为回馈函数,
Figure QLYQS_5
其中,coefficient指回馈因子,基于所述攻击类型获取对应的所述回馈因子,high_score指预置分值,
Figure QLYQS_6
为克罗内克函数,
Figure QLYQS_7
其中,
Figure QLYQS_8
为行为分析方法的行为计算函数,
Figure QLYQS_9
为历史指令序列,
Figure QLYQS_10
为当前指令序列;
设置门限值,如果所述效用评估的得分大于所述门限值,则判断存在所述零日漏洞攻击。
5.根据权利要求4所述的零日漏洞攻击检测方法,其特征在于,
当所述攻击类型为所述第三攻击类型和所述第四攻击类型时,从对应的所述请求集合中提取关键字之后,还包括:
将提取的关键字加入到所述关键字集合中;
当所述效用评估的得分大于预设值时,将对应的所述零日漏洞攻击的源地址进行记录,以在后续的检测中进行利用。
6.根据权利要求1所述的零日漏洞攻击检测方法,其特征在于,所述关键字集合包括:
不同操作系统平台的完备命令集、不同关系型数据库的完备保留字集、网站编程语言的保留函数集和/或命令执行结果关键字集。
7.根据权利要求1所述的零日漏洞攻击检测方法,其特征在于,所述预处理函数集包括:
协议解析函数集、编码转换函数集、字符归一转换集和/或压缩处理函数集。
8.根据权利要求1所述的零日漏洞攻击检测方法,其特征在于,
所述请求集合包括请求命令和请求参数,所述响应集合包括返回码和结果,所述请求集合和所述响应集合均为良序集。
9.一种零日漏洞攻击检测装置,其特征在于,包括:
存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
根据零日漏洞攻击的特征,建立关键字集合;
利用嗅探方式从网卡中获取网络数据;
利用建立的预处理函数集,根据所述网络数据中各类需解析的协议类型对所述网络数据进行预备处理,以及对所述网络数据中的请求部分和响应部分进行解析,获得对应的请求集合和响应集合;
对所述请求集合和响应集合中的请求和响应是否命中所述关键字集合中的关键字以及所述响应是否失败进行分析,以对可能的攻击类型进行划分;
根据所述分析和划分的所述攻击类型,基于所述请求和/或响应的关键字命中的权重和,对所述零日漏洞攻击进行效用评估,基于所述效用评估判断是否存在所述零日漏洞攻击。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被机器执行时实现如权利要求1至8中任一项所述的方法的步骤。
CN202310084441.3A 2023-02-09 2023-02-09 一种零日漏洞攻击检测方法、装置及存储介质 Active CN115801468B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310084441.3A CN115801468B (zh) 2023-02-09 2023-02-09 一种零日漏洞攻击检测方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310084441.3A CN115801468B (zh) 2023-02-09 2023-02-09 一种零日漏洞攻击检测方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN115801468A true CN115801468A (zh) 2023-03-14
CN115801468B CN115801468B (zh) 2023-04-25

Family

ID=85430545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310084441.3A Active CN115801468B (zh) 2023-02-09 2023-02-09 一种零日漏洞攻击检测方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN115801468B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160164896A1 (en) * 2013-07-23 2016-06-09 Oasis Technology, Inc. Anti-cyber hacking defense system
CN107046518A (zh) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 网络攻击的检测方法及装置
CN107659583A (zh) * 2017-10-27 2018-02-02 深信服科技股份有限公司 一种检测事中攻击的方法及系统
CN108881263A (zh) * 2018-06-29 2018-11-23 北京奇虎科技有限公司 一种网络攻击结果检测方法及系统
CN109756480A (zh) * 2018-11-30 2019-05-14 中国互联网络信息中心 一种DDoS攻击防御方法、装置、电子设备及介质
CN112217650A (zh) * 2019-07-09 2021-01-12 北京邮电大学 网络阻塞攻击效果评估方法、装置及存储介质
CN114143042A (zh) * 2021-11-09 2022-03-04 奇安信科技集团股份有限公司 漏洞模拟方法、装置、计算机设备和存储介质
CN115314322A (zh) * 2022-10-09 2022-11-08 安徽华云安科技有限公司 基于流量的漏洞检测确认方法、装置、设备以及存储介质
CN115499230A (zh) * 2022-09-23 2022-12-20 天翼安全科技有限公司 网络攻击检测方法和装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160164896A1 (en) * 2013-07-23 2016-06-09 Oasis Technology, Inc. Anti-cyber hacking defense system
CN107046518A (zh) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 网络攻击的检测方法及装置
CN107659583A (zh) * 2017-10-27 2018-02-02 深信服科技股份有限公司 一种检测事中攻击的方法及系统
CN108881263A (zh) * 2018-06-29 2018-11-23 北京奇虎科技有限公司 一种网络攻击结果检测方法及系统
CN109756480A (zh) * 2018-11-30 2019-05-14 中国互联网络信息中心 一种DDoS攻击防御方法、装置、电子设备及介质
CN112217650A (zh) * 2019-07-09 2021-01-12 北京邮电大学 网络阻塞攻击效果评估方法、装置及存储介质
CN114143042A (zh) * 2021-11-09 2022-03-04 奇安信科技集团股份有限公司 漏洞模拟方法、装置、计算机设备和存储介质
CN115499230A (zh) * 2022-09-23 2022-12-20 天翼安全科技有限公司 网络攻击检测方法和装置、设备及存储介质
CN115314322A (zh) * 2022-10-09 2022-11-08 安徽华云安科技有限公司 基于流量的漏洞检测确认方法、装置、设备以及存储介质

Also Published As

Publication number Publication date
CN115801468B (zh) 2023-04-25

Similar Documents

Publication Publication Date Title
US11483343B2 (en) Phishing detection system and method of use
Vinayakumar et al. Scalable framework for cyber threat situational awareness based on domain name systems data analysis
US10178107B2 (en) Detection of malicious domains using recurring patterns in domain names
US9602525B2 (en) Classification of malware generated domain names
Song et al. Advanced evasion attacks and mitigations on practical ML‐based phishing website classifiers
US9231964B2 (en) Vulnerability detection based on aggregated primitives
US9490987B2 (en) Accurately classifying a computer program interacting with a computer system using questioning and fingerprinting
US20160323295A1 (en) Computer Imposed Countermeasures Driven by Malware Lineage
Yuan Phd forum: Deep learning-based real-time malware detection with multi-stage analysis
US20200053119A1 (en) Optically analyzing domain names
US11258815B2 (en) AI-based system for accurate detection and identification of L7 threats
WO2019013266A1 (ja) 判定装置、判定方法、および、判定プログラム
Kumar et al. Cross site scripting attacks classification using convolutional neural network
JPWO2018143097A1 (ja) 判定装置、判定方法、および、判定プログラム
Begleiter et al. A fast and scalable method for threat detection in large-scale DNS logs
IŞiker et al. Machine learning based web application firewall
US20230164180A1 (en) Phishing detection methods and systems
US20230185915A1 (en) Detecting microsoft windows installer malware using text classification models
CN115801468B (zh) 一种零日漏洞攻击检测方法、装置及存储介质
Li et al. A review on signature-based detection for network threats
Alnabulsi et al. A novel algorithm to protect code injection attacks
Prasse et al. Malware detection by HTTPS traffic analysis
Shashidhara et al. Identifying and Mitigating Against XSS Attacks in Web Applications
Taj A Machine Learning Framework for Host Based Intrusion Detection using System Call Abstraction
Poonia et al. Malware detection by token counting

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