1.本技术涉及网络安全领域,具体而言,涉及一种基于多重迭代验证的安全态势感知响应方法及装置。
背景技术:2.网络安全态势感知是在大规模网络环境中,对能够引起网络态势发生变化的安全要素进行获取、理解、显示并据此预测未来的网络安全发展趋势。
3.如上所述,网络安全态势感知的主要内容包含了安全态势的获取、安全态势的理解以及安全态势的预测;另外,基于上述三点主要内容,网络安全态势感知应还包含对于安全问题或安全事件的处理,及网络安全态势的相关响应,籍此实现所谓的ppdr模型(即policy, prevention, detection以及response),因此网络安全态势的相关事件必须应得到合理的处置方能在一定范围内和一定程度内得到缓解或解决。
4.目前,市场上各安全厂商在网络安全态势感知类产品中一般均加入了所谓soar(security orchestration automation response,即安全编排自动化响应)功能,但其效果均不甚理想,这主要体现在如下几个方面:1.提出了自动化响应和处置方案,但实际上自动化处置能力较为低下,半自动或人工处置仍占有主导地位;2.无法或者非常困难发现类似问题在同类设备或应用上可能存在的问题,导致溯源困难,很难得到完整的攻击链条或导致问题的根因;3. 当出现安全问题后,进行了一定处置后如果再出现问题,很难进行反复地验证和比对,故对于处置效果基本无法评估。
5.针对相关技术中自动化处置能力较为低下、安全问题溯源困难、对于解决效果基本无法评估的问题,目前尚未提出有效的解决方案。
技术实现要素:6.本技术的主要目的在于提供一种基于多重迭代验证的安全态势感知响应方法及装置,以解决上述问题。
7.为了实现上述目的,根据本技术的一个方面,提供了一种基于多重迭代验证的安全态势感知响应方法。
8.根据本技术的基于多重迭代验证的安全态势感知响应方法包括:获得网络数据、主机数据的相关信息;针对收集的相关信息对安全问题进行特征分析;将所有数据分为静态、半静态以及动态数据,根据环境中发现的安全问题进行聚类分析,筛选出具有类似特征的主机进行聚类评估;根据聚类评估获得的与问题主机相似的主机分析其受影响程度,生成处置请求响应,反复迭代验证。
9.进一步的,获得的网络数据、主机数据的相关信息具体包括:网络出口以及内部边界相关数据;相关网络会话元数据以及网络采样包;主机运行的相关信息;主机的相关配置信息;针对特殊应用采集相关内容,采集特殊的内容和访问情况在内的相关内容。
10.进一步的,对有问题和具有类似特征的主机进行聚合评估具体包括:将相关主机数据采集探针获取的数据作为静态数据,将来自于主机运行日志所获取的端口变化数据作为半静态数据,其它数据均作为动态数据,利用上述数据对各个主机使用余弦相似性进行聚类;根据环境中发现的安全问题以及上述三种数据的特征抽取进行聚类分析筛选出具有类似特征的主机;特征的权重在整个相似性计算中所占比例不同,根据实际的静态和半静态的特征权重占比高,从偏静态角度以及整体角度来度量安全态势情况,区分静态/半静态和混合相似性进行聚类评估。
11.进一步的,静态数据特征抽取系统类型、语言、内核版本、补丁版本、安装应用软件及其版本;半静态数据特征抽取主机监听端口信息;动态数据特征抽取其各类网络访问信息;采用cpe方式对主机安装软件的特征进行抽取。
12.进一步的,分析根据聚类评估获得的与问题主机相似的主机受影响程度,具体包括:根据设定的阈值生成不同程度的处置请求响应,使用急迫指数的相对评估方法评估当前安全问题响应的急迫程度;对混合受影响评估主机,根据混合响应阈值生成处理请求响应;对静态/半静态评估主机,根据静态响应阈值生成处理请求响应。
13.进一步的,迭代验证对处于静态/半静态受影响主机,无法在线实时获得全部数据,使用临时部署的代理进行信息补采。
14.进一步的,对已生成的响应范围内的主机进行定期检测,反复迭代验证,直到评估结果收缩到可容忍阈值之下或用户主动停止。
15.为了实现上述目的,根据本技术的另一方面,提供了一种基于多重迭代验证的安全态势感知响应装置。
16.根据本技术的基于多重迭代验证的安全态势感知响应装置包括:数据采集部件,用于获得网络数据、主机数据的相关信息;安全检测部件,用于针对收集的相关信息对安全问题进行特征分析,其分析的手段是根据各类检测规则;机器学习部件,用于将所有数据分为静态、半静态以及动态数据,根据环境中发现的安全问题进行聚类分析,筛选出具有类似特征的主机进行聚类评估;响应部件,用于根据聚类评估获得的与问题主机相似的主机分析其受影响程度,
生成处置请求响应,反复迭代验证。
17.进一步的,所述数据采集部件包括:网络流量数据采集探针,利用网络旁路抓包获得网络出口以及内部边界相关数据;网络设备日志采集探针,使用netflow或sflow获得相关网络会话元数据以及网络采样包;主机运行日志采集探针,使用代理方式获取主机运行的相关信息,包括进程、端口变化、文件变化、注册表变化,采集的目标包括windows主机、linux主机;主机数据采集探针,使用代理方式获取主机的相关配置信息,包括系统类型、安装软件、补丁、用户账户、注册表、启动项、计划任务;应用数据采集探针,用于针对特殊应用,包括数据库、web服务、邮件服务、文件共享等特殊的内容和访问情况在内的采集相关内容。
18.进一步的,所述机器学习部件将相关主机数据采集探针获取的数据作为静态数据,将来自于主机运行日志所获取的端口变化数据作为半静态数据,其它数据均作为动态数据,利用上述数据对各个主机使用余弦相似性进行聚类;根据环境中发现的安全问题以及上述三种数据抽取的特征进行聚类分析从而筛选出具有类似特征的主机;对已经发生安全问题的主机以及将要可能发生同类安全问题的主机进行聚类评估。
19.进一步的,所述响应部件根据机器学习部件获得的与问题主机相似的主机分析其受影响程度,生成处置请求,装置确定是否进行响应;根据设定的阈值响应产生不同程度的处置请求,在响应范围内反复迭代验证,直到用户主动停止;响应过程中补采数据,对补采数据进行猎捕分析,扩大主机的搜索范围和搜索时长。
20.在本技术实施例中,采用多重数据来源对相关模型进行补充的方式,通过动静结合的主机相似度评估方法、多次迭代的响应评估和处置方式,达到了对受影响主机自动检测和持续跟进的目的,从而实现了溯源安全问题、了解问题处置状况的技术效果,进而解决了由于自动化处置能力较为低下造成的安全问题溯源困难、对于解决效果基本无法评估的技术问题。
附图说明
21.构成本技术的一部分的附图用来提供对本技术的进一步理解,使得本技术的其它特征、目的和优点变得更明显。本技术的示意性实施例附图及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是根据本技术实施例的基于多重迭代验证的安全态势感知响应方法流程图;图2是根据本技术实施例的聚类评估方法流程图;图3是根据本技术实施例的生成处置请求响应反复迭代验证方法流程图。
具体实施方式
22.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
23.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
24.在本技术中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本发明及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
25.并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本发明中的具体含义。
26.此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
27.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
28.根据本发明实施例,提供了一种基于多重迭代验证的安全态势感知响应方法,如图1所示,该方法包括如下的步骤s102至步骤s108:步骤s102,获得网络数据、主机数据的相关信息;步骤s104,针对收集的相关信息根据各类检测规则对安全问题进行特征分析;步骤s106,将所有数据分为静态、半静态以及动态数据,根据环境中发现的安全问题以及数据的特征提取进行聚类分析,筛选出具有类似特征的主机进行聚类评估;步骤s108,根据聚类评估获得的与问题主机相似的主机分析其受影响程度,生成处置请求响应,反复迭代验证。
29.从以上的描述中,可以看出,本发明实现了如下技术效果:在本技术实施例中,采用多重数据来源对相关模型进行补充,使得检测结果更加准确;利用动静结合的方法实现了对受影响主机从偏静态和混合方式进行聚类评估;使用多次迭代的方式对结果进行持续的验证,实现了对安全问题的处置情况进行自动检测和持续跟进。
30.根据本技术实施例,作为本实施例中的优选,如图2所示,聚类评估具体包括:
步骤s202,将所有数据看作由静态、半静态以及动态数据组成的三元组构成的集合,其形式化的方法表示如下:,其中,s为静态数据、sd为半静态数据,而d是动态数据,在实际实施中,将相关主机数据采集探针获取的数据作为静态数据,将主机运行日志所获取的端口变化数据作为半静态数据主,将其它数据均作为动态数据;机器学习部件利用上述数据对各个主机使用余弦相似性进行聚类,其特征抽取方式如下:对静态数据的特征,抽取系统类型、语言、内核版本、补丁版本、安装应用软件及其版本,对类似的主机在静态层面进行比较聚类更方便;使用cpe标准化对主机安装软件的特征进行抽取,cpe编号主要包含类型、厂商、产品以及版本等段落;cpe本身是描述软件及其版本型号的一种标准方式,一般被用于软件漏洞的评估上,但在主机的安全态势评估及响应,包括基于机器学习的主机相似性评估上没有应用,在不同平台上软件标准化需要使用不同的方法且无现成手段。
31.对半静态数据的特征,抽取主机监听端口信息,包括tcp和udp在内的端口开放信息,作为主机聚类的依据之一;对动态数据的特征,抽取各类网络访问信息,包括主机网络吞吐、各端口流入/流出信息、各协议数据,进程变化信息,文件变化信息,注册表变化信息以及其它运行信息;步骤s204,根据环境中发现的安全问题以及上述三部分内容进行聚类分析从而筛选出具有类似特征的主机,具体相似性计算公式(使用加权相似)如下(静态以及半静态):而混合相似性计算公式如下:在上述两个公式中,主机数据的两个特征抽取向量均为n维,,n1为静态特征的维数,n2为半静态特征的维数,n3为动态特征的维数,为静态特征的权重,为半静态特征的权重,为动态特征的权重,特征权重在整个相似性计算中所占比例不相同,它们相加为100,vs1i为静态向量1的采样值,vs2i为静态向量2的采样值,vsd1i为半静态向量1的采样值,vsd2i为半静态向量2的采样值,vd1i为动态向量1的采样值,vd2i为动态向量2的采样值;在具体实施中,一般根据实际的静态和半静态的特征权重占比较高超过70%;从偏静态角度以及整体角度来度量安全态势情况,区分静态/半静态和混合相似性。
32.步骤s206,根据上述公式来对已经发生安全问题的主机以及将要可能发生同类安全问题的主机进行聚类评估,聚类算法可以使用如kmeans、dbscan等较为常见的算法。
33.根据本技术实施例,作为本实施例中的优选,如图3所示,生成处置请求响应并反复迭代验证具体包括:
步骤s302,根据获得的与问题主机相似的主机分析其受影响程度,生成处置请求响应;这里受影响程度估算公式如下(与之前评估相似性类似,此处也分为静态/半静态以及混合受影响程度):以及混合受影响程度:在上述公式中,n为所有主机数量,m为静态/半静态受影响主机数量,l为混合受影响主机数量,为主机编号,w
i
为相关主机的重要性评估权重值;显然,可以看出n是大于等于m及l的,当它们高于阈值,静态响应阈值为th
s
,混合响应阈值为th
h
,装置可以确定是否进行响应,响应可以根据设定的阈值产生不同程度的处置请求。另外,为了评估当前生成响应的急迫程度,使用如下公式来计算针对某安全问题的急迫指数:即在上述公式中,使用混合影响程度对静态/半静态影响程度的比值进行评估,如其值越大则说明紧迫程度越高,即当前安全问题发生的影响面相对较大。
34.混合受影响评估主机根据混合响应阈值生成处理请求响应,要求用户进行处理;静态/半静态评估主机根据静态响应阈值生成处理请求响应。
35.步骤s304,对于处于静态/半静态受影响主机而言,由于其自身部署原因,无法在线实时获得全部数据,需对这些信息进行补采,补采使用临时部署的代理进行(一般主机会保留一个月内的重要运行数据以及当前配置数据),使用补采模块对它们进行二次分析,但这里需要部分人工干预以进行。
36.步骤s306,以一定频度自动或用户手动触发对已生成的响应范围内的主机进行定期检测,一直进行反复迭代验证,直到评估结果收缩到可容忍阈值th
t
之下,或用户主动停止这个过程。迭代验证的手段主要使用主动检测进行,如某些高危漏洞(如ms17
‑
010)一直无法关闭或仍发现有与范围内主机历史上存在同族攻击的现象存在,并且使用猎捕方法扩大主机的搜索范围和搜索时长,以期能发现问题的根因和源头,在这个过程中,使用数据补采(主要针对离线或目前无法管理的主机),需要补采数据的主机范围在装置中自动进行探测或者用户进行指定,提示用户加入补采范围并帮助部署数据采集代理或者导入、录入相关数据;整体流程算法如下:输入:所有主机的权重;静态/半静态受影响主机、混合受影响主机;容忍阈值;输出:响应;th
s = th
h = 1 ;
while(true){
ꢀꢀꢀꢀ
if (用户中断){
ꢀꢀꢀꢀ
break;}计算th
s
和th
h
;if(th
s ꢀ
th
t or th
h ꢀ
th
t
){
ꢀꢀꢀꢀ
生成响应并赋予紧急程度;}else{
ꢀꢀꢀꢀ
break;}wait 响应被处理 or 设定的定时时间到期;if(加入数据补采){
ꢀꢀꢀꢀ
补采数据;对补采数据进行猎捕分析;}};需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
37.根据本发明实施例,还提供了一种用于实施上述基于多重迭代验证的安全态势感知响应方法的装置,该装置包括:数据采集部件,用于获得网络数据、主机数据的相关信息;安全检测部件,用于针对收集的相关信息对安全问题进行特征分析,其分析的手段是根据各类检测规则;机器学习部件,用于将所有数据分为静态、半静态以及动态数据,根据环境中发现的安全问题进行聚类分析,筛选出具有类似特征的主机进行聚类评估;响应部件,用于根据聚类评估获得的与问题主机相似的主机分析其受影响程度,生成处置请求响应,反复迭代验证。
38.进一步的,所述数据采集部件包括:网络流量数据采集探针,利用网络旁路抓包获得网络出口以及内部边界相关数据;网络设备日志采集探针,使用netflow或sflow获得相关网络会话元数据以及网络采样包;主机运行日志采集探针,使用代理方式获取主机运行的相关信息,包括进程、端口
变化、文件变化、注册表变化,采集的目标包括windows主机、linux主机;主机数据采集探针,使用代理方式获取主机的相关配置信息,包括系统类型、安装软件、补丁、用户账户、注册表、启动项、计划任务;应用数据采集探针,用于针对特殊应用,包括数据库、web服务、邮件服务、文件共享等特殊的内容和访问情况在内的采集相关内容进一步的,所述机器学习部件将相关主机数据采集探针获取的数据作为静态数据,将来自于主机运行日志所获取的端口变化数据作为半静态数据,其它数据均作为动态数据,利用上述数据对各个主机使用余弦相似性进行聚类;根据环境中发现的安全问题以及上述三种数据抽取的特征进行聚类分析从而筛选出具有类似特征的主机;对已经发生安全问题的主机以及将要可能发生同类安全问题的主机进行聚类评估。
39.进一步的,所述响应部件根据机器学习部件获得的与问题主机相似的主机分析其受影响程度,生成处置请求,装置确定是否进行响应;根据设定的阈值响应产生不同程度的处置请求,在响应范围内反复迭代验证,直到用户主动停止;响应过程中补采数据,对补采数据进行猎捕分析,扩大主机的搜索范围和搜索时长。
40.显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
41.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。