CN101778112B - 一种网络攻击检测方法 - Google Patents

一种网络攻击检测方法 Download PDF

Info

Publication number
CN101778112B
CN101778112B CN 201010103890 CN201010103890A CN101778112B CN 101778112 B CN101778112 B CN 101778112B CN 201010103890 CN201010103890 CN 201010103890 CN 201010103890 A CN201010103890 A CN 201010103890A CN 101778112 B CN101778112 B CN 101778112B
Authority
CN
China
Prior art keywords
attack
node
security incident
warning
address
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
CN 201010103890
Other languages
English (en)
Other versions
CN101778112A (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.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
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 Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN 201010103890 priority Critical patent/CN101778112B/zh
Publication of CN101778112A publication Critical patent/CN101778112A/zh
Application granted granted Critical
Publication of CN101778112B publication Critical patent/CN101778112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种网络攻击检测方法,属于网络安全技术领域。本发明的方法为:1)将从网络安全基础设施获得的报警转化为统一格式的报警;2)获取与报警行为相关联的主机的状态信息,根据状态信息判断报警关联行为是否生效,当一个报警关联行为无效时,则丢弃此报警,否则将此报警标记为有效;当无法获取与报警行为关联的主机的状态信息时,则将此报警标记为未确定;3)聚合有效报警和未确定报警,生成安全事件;4)利用生成的安全事件将攻击图实例化,得到攻击场景图;5)输出满足条件的攻击场景图,确定攻击类型。本发明有效地降低了攻击图算法的开销,在提高发现网络攻击准确度的同时,不会降低发现过程的时效性。

Description

一种网络攻击检测方法
技术领域
本发明涉及涉及一种网络攻击检测方法,是一种应用于P2P对等网上的利用攻击图从报警数据中发现真实攻击,属于网络安全技术领域。
背景技术
部署在网络中各个节点的各种网络安全基础设施每天会报告大量的报警,这些报警数据有数量大、来源分布广、格式不统一、误报率高的特点,仅仅靠人工分析无法对这些报警数据进行有效的处理。目前广泛应用的网络安全基础设施包括入侵监测系统、防火墙。网络攻击一般有许多攻击步骤,这些步骤具有不同的特征,特别是有些步骤的行为在网络上会大量存在,如端口扫描,所以网络安全基础设施提供的报警的数量会极多。网络攻击的步骤可能会根据其策略在网络空间的不同位置被实施,并被不同的网络安全基础设施上被检测出来,并由于安全基础设施的多样性,使得报警的来源也很多样,并且这些报警的格式可能会不相同。入侵监测系统与防火墙一般是对网络数据包的指纹特征来判断网络攻击的存在,这种判断并不是基于攻击的本质特征,往往会造成大量的误报。考虑到一次攻击的各个步骤之间一般会存在特定的逻辑关系,如前一个行为是为后一次行为进行准备,可以自动的对网络安全基础设施产生的报警进行相关处理,把由某一次攻击引起的全部报警关联起来。攻击图可以有效的描述报警之间的逻辑关系,利用攻击图对报警信息进行相关处理对于充分利用网络安全基础设施的功能、应对日益突出的网络犯罪行为具有重要的价值。
目前利用攻击场景图监测网络攻击的方法,算法复杂度都很高,处理自然网络中出现的大量报警会消耗大量的运算资源,并需要较长的时间,往往不能实时的监控网络攻击行为。
目前利用攻击图进行报警聚合的方法数据来源主要集中在网络安全基础设施上,这些设施只能监控网络行为,然而任何有意义的网络行为必须关联到某一个主机提供的网络服务。网络攻击的某一个步骤是否生效,必须考虑相关主机的状态。以一次攻击的某个步骤是对某一个FTP软件进行溢出为例,单单只考虑网络数据包是否含有溢出特征是不能判断这次攻击是否生效的,以下的目标主机状态都会对攻击的结果造成影响:1)目标主机的操作系统是什么;2)目标主机是否安装了此FTP软件;3)目标主机有没有打上相应的补丁包;4)目标主机是否开放了相应服务。由此可见,在缺少主机信息的情况下,网络安全基础设施不能准确的描述攻击行为,会带来大量的误报,这些误报一方面极大的增加报警的数量,另一方面极大的降低了报警的质量。利用主机信息对报警信息进行相应处理,对降低报警相关处理的资源消耗,提高报警相关处理的准确度有极其重要的意义。
OVAL(Open Vulnerbility Assent Language)是一种主机状态描述语言,它由如下几个部分组成:1)系统描述部分2)安全配置描述部分3)应用程序版本及其补丁的描述部分4)漏洞的描述部分。OVAL基本上包括了与安全相关的主机状态,并且是一个开放的标准。IDMEF是一种描述报警信息的规范,它提供了一种有很强表达能力的格式,可以用来容纳各种安全基础设施生成的报警。
针对以上问题,本发明提出的新的实现攻击场景图方法的策略,以及为了实现该策略对攻击场景图算法进行改进,能极大的提高利用攻击场景图方法检测网络攻击的效率。此外将报警信息与主机信息进行关联将会极大的提高报警相关处理的性能,使得利用攻击图进行检测网络攻击变得更加高效和准确。最后利用攻击图发现网络攻击的同时,也可以收集了大量的和所发现攻击相关的大量信息,可以用来进行网络取证,预防网络犯罪。
发明内容
针对以上问题,本发明的目的在于提供一种网络攻击检测方法。该方法从各种网络安全基础设施获得攻击的网络行为特征,并结合网络攻击相关主机的信息,对网络行为的效果进行验证,极大的提高了准确性与效率,为在网络中发现攻击并进行取证提供了高效的方法。
本发明应用攻击场景图的策略时,把复杂的问题分拆成几个小部分,能极大的降低问题的复杂程度。本发明首先把行为和特征相似的报警进行聚合,生成安全事件,安全事件的数量和报警相比会有极大的减少;然后建立适用于安全事件的攻击图,并对安全事件进行近似处理,减少安全事件匹配到攻击场景图上的时间消耗,然后生成攻击场景图;最后利用近似处理前的安全事件验证攻击场景图的有效性,去除对安全事件进行近似引入的误差,并在验证的过程中去除可能被聚合到安全事件中的不相关报警。此策略中的三个步骤可以顺序执行,并且可以由不同的机器完成。第一步可以由分散在整个网络上的辅助处理机器完成;由于第一步的预处理极大的减少了第二步处理的负担,使得这一步骤消耗的时间与运算资源极大的减少;第三部消除了为提高算法效率引入的误差,使得此策略的应用不影响监控的质量。
本文中使用的一些概念的解释:
1)网络安全基础设施:部署在网络边界或者主机边界上的监视网络行为的软件或者硬件设施。
2)报警:网络安全基础设施在发现可能的非正常行为或者恶意行为时生成的一组信息,这组信息中包含了对非正常行为或者恶意行为一些特征的描述。
3)报警关联行为:引发报警的网络行为。
4)安全事件:安全事件是特征近似的一个或多个报警的聚合,它主要分为两部分,一个是特征满足的约束条件,另一个是所包含的报警的标识。
为实现上述目标,本发明的技术方案是:
一种网络攻击检测方法,其主要的流程如附图1所示,包括步骤:
1)将从网络安全基础设施获得的报警转化为一种统一格式的报警,本发明中采用IDMEF格式的报警。
2)获得与步骤1)中得到的报警相关联的主机的状态信息,判断报警关联行为是否生效,当一个报警关联行为被判断为无效时,此报警将被丢弃,否则此报警标记为有效。假如与报警关联行为相关的主机的状态无法获得,此报警将标记为未确定。
3)对步骤2)中得到的有效报警和未确定报警进行预处理,生成安全事件,安全事件是具有某一类特征的报警的聚合。
4)构造攻击图,每个攻击图都是一类攻击的模型描述。攻击图的每个节点是一个抽象的安全事件,这个抽象的安全事件描述了匹配到此节点上的安全事件所必须满足的约束条件;攻击图的每条有向边代表相连接的两个节点之间的逻辑关系。
5)将构造的攻击图实例化,生成攻击场景图,每个攻击场景图都有一个并且只有一个对应的攻击图,但同一个攻击图可以对应多个实例化的攻击场景图。对每一个产生的安全事件,根据攻击图节点与边的约束规则,寻找一个攻击场景图,使其满足这个攻击场景图的某个一个还未匹配的节点所必须满足的约束条件。如果没有找到满足条件的攻击场景图,则视情况创建新的攻击场景图,新的场景图除了所关联的攻击图外只包含此安全事件。
6)输出满足条件的攻击场景图。考虑攻击场景图的节点与对应的攻击图的节点之间是一一对应的,当某个攻击场景图的节点覆盖了对应攻击图的全部标记为重要的节点时,认为此攻击场景图很大可能已经发现了一次成功的攻击。
7)攻击场景图的验证。验证构成攻击场景图的每一个安全事件中都存在一个具体的报警,这些报警也满足攻击图的约束条件。
下面对本发明方法作更为详细具体的说明。
IDMEF格式的报警包含了大量与报警相关的属性,在我们的方法主要利用的如下几个属性:
1)CreateTime:记录报警生成的时间;
2)SourceIP:报警关联行为的源IP地址;
3)TargetIP:报警关联行为的目的IP地址;
4)SourcePort:报警关联行为的源端口;
5)TargetPort:报警关联行为的目的端口;
6)Classification:报警的分类;
7)Reference:要使得报警关联行为生效,报警关联行为相关的主机所必须具备的一些特征。即:使某类报警关联行为生效的主机特征。
OVAL语言描述的主机状态定义主要分为4类:
1)Inventory:描述主机上安装的软件,记为Sinventory
2)Compliance:描述主机的安全策略,记为Scompliance
3)Patch:描述软件的补丁安装情况记为,Spatch
4)Vulnerability:描述系统存在哪些漏洞,记为,Svulnerability
则全部的主机状态为Scharacter=Sinventory∪Scompliance∪Spatch∪Svulnerability,任何一个主机的状态Ghost都满足 C host ⊆ S character .
安全事件Event是报警的抽象,它由如下几部分组成:
1)AlertSet:安全事件包含的全部报警集合,AlertSet={Alert};
2)GroupTime:包含StartTime和EndTime,分别记录包含报警中CreatTime最早的时间和最迟的时间;
3)AbstractSourceIP:一个源IP地址的集合,满足 ∀ Alert ( Alert ∈ AlertSet → Alert . SourceIP ∈ AbstractSourceIP ) ;
4)AbstractTargetIP:一个目的IP地址的集合,满足 ∀ Alert ( Alert ∈ AlertSet → Alert . T arg etIP ∈ AbstractT arg etIP ) ;
5)AbstractSourcePort:一个源端口的集合,满足 ∀ Alert ( Alert ∈ AlertSet → Alert . SourcePort ∈ AbstractSourcePort ) ;
6)AbstractTargetPort:一个目的端口的集合,满足 ∀ Alert ( Alert ∈ AlertSet → Alert . T arg etPort ∈ AbstractT arg etPort ) ;
7)Hyperclassification:一个报警分类的集合,满足 ∀ Alert ( Alert ∈ AlertSet → Alert . SourceIP ∈ AbstractSourceIP ) ;
8)Credibility:Credibility用来描述安全事件由攻击引起的可能性。
攻击图描述某一类攻击的共同特征,攻击图由一个四元组{N,E,T,C}构成,其中N代表节点,E代表边,T代表节点自身的约束条件,C代表边描述的两个节点之间的约束条件。其中N和C构成了图的拓扑结构,同时也包含了一类攻击的各个步骤间的前提结果关系。节点N分为重要节点Ncritical和普通节点Nnormal;边E带有权值代表边的重要程度。攻击图的约束规则既应用于安全事件中的抽象特征,也可以应用于每个报警的具体特征。
攻击场景图由以下几部分构成:
1)StartTime:攻击场景图中已经匹配上的全部安全事件Event里最早的StartTime;
2)AttackGraph:攻击场景图对应的攻击图;
3)NodeSet:攻击场景图已经装有安全事件Event的节点,是一个二元组{V,N}。其中V表示匹配到此节点的安全事件的集合{Event},N表示此节点对应的攻击图AttackGraph的节点;
4)LastTime:攻击场景图中已经匹配上的全部安全事件Event里最晚的EndTime;
5)Credibility:考虑到有些安全事件比另一些安全事件更有可能属于一次攻击,如Buffer Overflow比Scan更有可能是由于攻击引起的,本方法将攻击场景图中安全事件的Credibility属性之和作为攻击场景图的Credibility。本方法会根据攻击场景图的Credibility属性动态的调整其生存时间。
总的来说,和现有技术相比,本发明方法具有以下优势:
1)高效的针对报警信息的预处理:本发明方法提出了利用主机信息验证报警关联行为有效性的方法,此方法对去除虚假的报警信息十分有效。报警数量的减少能极大的降低攻击图算法的开销。
2)表达能力很强的攻击图:本发明方法构造了一种表达能力很强的攻击图,既能高度抽象的描述一类攻击的策略和一般特征,又能容忍各个具体攻击的策略和特征;既能描述抽象特征之间的约束关系,也能反映具体攻击的特征间的约束关系。
3)与攻击场景图生成异步的验证过程;本发明方法提出了对攻击场景图验证的方法,在提高发现网络攻击准确度的同时,不会降低发现过程的时效性。
附图说明
图1为本发明方法流程图;
图2为本发明攻击场景图生成方法流程图;
图3为本发明攻击图构造方法流程图。
具体实施方式
下面结合附图通过实施例对本发明核心技术内容作进一步详细描述。
本实施例描述一个具体的基于攻击图方法的网络攻击检测方法。
一)步骤1)的实施细节:
本发明采用的网络安全基础设施可以是防火墙,入侵检测系统。以Snort为例,Snort是一个开源的免费的网络入侵检测系统(NIDS),可以部署在网络边界上,对经过此边界的所有数据进行误用检测。Snort提供了接口,用户可以利用这些接口,开发自己的插件,生成自定义格式的报警信息。步骤1)可以通过在Snort中加入插件的方法生成IDMEF格式的报警。
二)获取报警行为相关联的主机状态,并用来判断报警的有效性:
OVAL Interpret是个开源免费的主机状态扫描软件,OVAL的官方网站提供了对主机状态各个方面的定义,这些定义按照分类写入到数据文件中。OVAL Interpret被安装在受监视的主机上,它将从从这些主机上收集到的信息与这些定义进行比较,当一个状态定义的特征被满足的时候,这个被定义的状态s满足s∈Chost,既此主机状态真实存在。
OVAL格式的主机状态是一个四元组{DefineID,Class,ReferenceID,Title},其中DefineID是主机状态定义的编号,Class是状态的分类,ReferenceID是漏洞编号,软件及其版本号,补丁编号等关联信息,Title是更进一步的描述。以下是几个例子:某一个主机状态,其DefineID是oval:org.mitre.oval:def:1092,Class是Vulnerability,ReferenceID是CVE-2003-3223,Title主要说明这是一个拒绝服务的漏洞;另一个主机状态的DefineIDoval:org.mitre.oval:def:1440,Class是Inventory,ReferenceID是cpe://sun:sunos:5.10,Title说明主机安装了Solaris操作系统。步骤1)中生成的IDMEF格式的报警中的Reference字段会说明此报警关联行为相关的漏洞,本方法通过从IDMEF格式报警中的目标地址查找关联主机,并查询此主机的状态信息中是否有此报警中的漏洞,从而验证报警是否真实。
三)聚合报警生成安全事件的实施细节:
文献(参考:Valdes,A.and Skinner,K.2001.Probabilistic alert correlation.InProceedings of the 4th International Symposium on Recent Advances in Intrusion Detection(RAID 2001).54-68;或Qin,X.and Lee,W.2003.Statistical causality analysis of infosecalert data.In Proceedings of The 6th International Symposium on Recent Advances inIntrusion Detection(RAID 2003).Pittsburgh,PA.)中描述了基本的聚合报警信息的方法,文献(参考:Julisch,K.and Dacier,M.2002.Mining intrusion detection alarms foractionable knowledge.In The 8th ACM International Conference on Knowledge Discoveryand Data Mining.或Julisch,K.2001.Mining alarm clusters to improve alarm handlingefficiency.In Proceedings of the 17th Annual Computer Security Applications Conference(ACSAC).12-21.)中采用的了聚类算法进行报警聚合,文献(参考:S.O.Al-Mamoryand H.Zhang.“Intrusion Detection Alarms Reduction Using Root Cause Analysis andClustering,”in Computer Communications,vol.32(2),2009,pp.419-430.)中提出利用IP地址的距离作为报警聚合的依据。我们采用的聚合方法与文献(S.O.Al-Mamory and H.Zhang.“Intrusion Detection Alarms Reduction Using Root Cause Analysis and Clustering,”in Computer Communications,vol.32(2),2009,pp.419-430.)中的方法类似。
a)设定最大时间间隔Tspan,最大时间窗Twindow
b)对于新接收的报警A1,和全部安全事件的集合{Event},寻找事件Ev,使得
Figure GSA00000011054700071
Figure GSA00000011054700073
Figure GSA00000011054700075
其中distance(I,J)是一个函数,其中I和J分别是Alert的集合,函数的取值是{I.Address}集合与{J.Address}集合的距离。{I.Address}就是集合{Address |Address∈Alert.Address,Alert∈I}。I.Address是一个四元组{I.AbstractSourceIP,I.AbstractTargetIP,I.AbstractSourcePort,I.AbstractTargetPort}。函数distance(I,J)表达的是{I.Address}与{J.Address}之间各个元的距离的加权和,而各个元的距离可以通过把各个元的值转化为字符串,然后利用字符串相似度来描述。DTh是一个门限距离。
c)假如在步骤b)中没有找到合适的安全事件Ev,则创建一个新的Ev,Ev除Ev.GroupTime的每个属性只包含一个元素,就是A1的属性,Ev.GroupTime的两个组元StartTime和EndTime的值都为A1.StartTime。然后把新的Ev加入{Event}。如果在步骤b)中发现了合适的Ev,则Ev.GroupTime.StartTime=min(A1.StartTime,Ev.GroupTime.StartTime),Ev.GroupTime.EndTime=max(A1.StartTime,Ev.GroupTime.EndTime),Ev其它的属性分别添加A1中对应的元素。
四)构造攻击图的细节:
目前构造攻击图的方法有自动构造和人工构造两种,自动构造能利用推理规则结合主机信息生产攻击图(参考文献;Sheyner,O.and Wing,J.M.2005.Tools for generating andanalyzing attack graphs.In Proceedings of International Symposium on Formal Methods forComponents and Objects(FMCO’05).或Jaodia,S.,Noels,S.,and O’berry,B.2005.Topological analysis of network attack vulnerability.Managing Cyber Threats:Issues,Approaches and Challenges,2005.247-266.),这种方法主要应用于发现新的攻击方法,考虑到各种攻击方法采用的攻击策略并不丰富,人工构造的攻击图不能处理采用新攻击策略的攻击的弱点并不突出(参考文献:Noel,S.,Robertson,E.and Jaodia,S.(2004).Correlatingintrusion events and building attack scenarios through attack graph distances,Proceedings of the20th Annual Computer Security Applications Conference,Washington,DC,USA,pp.350-359.),并且人工构造的攻击图比之自动构造的攻击图有更强的表现力,采用人工构造攻击图方法的攻击场景图方法在漏报误报上表现更好。本发明方法的攻击图为人工构造,考虑到现有的攻击一般都具有某些共同的特征,精心构造的攻击图不仅能有效的描述现有攻击,还对新出现的攻击具有一定的预防能力。
攻击图的组元N(即用于构造攻击图的节点)中的元素是一个二元组{PreNode,SeqNode},PreNode是这个节点前一个节点的集合,SeqNode是这个节点后一个节点的集合。组元E(即用于构造攻击图的边)中的元素是一个三元组{prenode,seqnode,value},prenode是有向边的起始节点,seqnode是有向边的终止节点,value是一个实数,表示这条边的重要程度。组元T(即用于构造攻击图的节点自身约束条件)中的元素是一个三元组{Node,Hyperclassification,Critic},其中Node表示T中元素对应的节点元素,Hyperclassification表示T中元素对应安全事件的Hyperclassification属性的值,Critical取High或者Low,表明此元素的重要程度。组元C(即用于构造攻击图的连接节点之间边的约束条件)的元素是一个三元组{formernode,laternode,LocalRelation},其中formernode、laternode代表两个节点,formernode表示当前有向边的起始节点,laternode表示当前有向边的终止节点,LocalRelation表示这两个节点之间反映在IP地址之间的关系,这种关系同样反映前后攻击步骤之间的一些约束关系,但是与攻击图组元N、E所反映的前提结果关系不同,C反映的约束关系,与整个图的拓扑结构无关,只是存在于两两节点之间。LocalRelation是两个二元组的笛卡尔积{SourceIP,TargetIP}×{SourceIP,TargetIP}中全部元素的子集,即 LocalRelation ⊆ { { SourceIP , T arg etIP } , { T arg etIP , SourceIP } , { SourceIP , SourceIP } , { T arg etIP , T arg etIP } } , 其中{SourceIP,TargetIP}代表formernode.SourceIP∩laternode.
Figure GSA00000011054700093
其它的3个元素类似。攻击图的一个具体实例如附图3所示,由于在很多时候组元C和组元E是一一对应的,所以在图中组元C的formernode,laternode与组元的E的prenode,seqnode一致,故被省略。这种构造攻击图的方法和现有方法比较,能够兼容Events,并针对Events对条件进行了弱化,结合步骤七,能极大的提高处理效率,并且引入的噪声能被完全清除。
五)生成攻击场景图的细节
生成攻击场景图就是利用安全事件将攻击图实例化,其流程如附图2所示。实例化的过程的原理在文献(参考:Noel,S.,Robertson,E.and Jaodia,S.(2004).Correlating intrusionevents and building attack scenarios through attack graph distances,Proceedings of the 20thAnnual Computer Security Applications Conference,Washington,DC,USA,pp.350-359.或Ning,P.,Cui,Y.,and ReevesS,D.S.2002.Constructing attack scenarios through correlation ofintrusion alerts.In 9th ACM Conference on Computer and Communications Security(CCS’02).)中都有描述,它以安全事件对节点的匹配作为基本的匹配步骤,安全事件与节点的匹配过程遵循以下原则:
1)考虑一个攻击场景图s1,对于s1.NodeSet.N中的任两个节点n1、n2假如存在一条任何一个s1.AttackGraph.E中的最小子集E1,并且E1中全部元素的prenode,seqnode的值除了n1、n2外出现的次数都是偶数次,这两个节点对应的安全事件的集合V1、V2必须满足时间窗原则:
Figure GSA00000011054700094
Figure GSA00000011054700095
2)对于一个攻击场景图s1中的s1.NodeSet中的任意一个元素nodeset1,必须满足攻击类型匹配原则: ∀ e 1 ( e 1 ∈ nodeset 1 . V ) → e 1 . Hyperclassification ⊆ nodeset 1 . N . Hyperclassification .
3)对于一个生成中的攻击场景图s1和一个安全事件e1,s1接受e1需要满足匹配先后原则:
Figure GSA00000011054700101
4)考虑一个攻击场景图s1,对于s1.NodeSet.N中的任两个节点n1、n2,必须满足IP地址约束原则:假如
Figure GSA00000011054700103
则n1、n2对应的安全事件的集合V1、V2必须满足约束条件c1.LocalRelation。LocalRelation将在后面进行介绍。
六)认为一个攻击场景图s1已经发现一次攻击,必须满足如下条件:
Figure GSA00000011054700104
Figure GSA00000011054700105
根据攻击场景图的Credibility属性动态的调整时间窗,当时间窗耗尽之后,此攻击场景图将被清除。
七)考虑攻击场景图s1,从s1.NodeSet.V中选出一个报警单独构造一个安全事件,其AbstractSourceIP、AbstractTargetIP、AbstractSourcePort、AbstractTargetPort分别为报警的SourceIP、TargetIP、SourcePort、TargetPort,然后进行步骤五)中第4)步的判断。当s1.AttackGraph.C中的全部元素被验证后,则认为s1是有效的。进行这一步验证的原因是,和普遍使用的攻击图相比,我们用来判断一次攻击是否存在的证据不是Alerts,而是Events;针对Events,攻击图的约束条件在步骤四进行了弱化,这种弱化能极大的提高本方法的效率,所以在本方法的最后需要对生成的攻击场景图进行验证,去除由于条件弱化引入的噪声。在本方法中,对攻击场景图的验证、报警的聚合和攻击场景图的生成是异步执行的,这些工作可以在不同的处理模块上执行。所以本方法事实上利用了分治的思想,能极大的提高效率。
攻击图中局部约束条件C的详细描述:
安全事件的AbstractSourceIP、AbstractTargetIP,可以是一个正常的32位地址,也可以是一个24位IP地址、16位IP地址、8位IP地址。对每种IP地址集合赋予一个权值ws,其中s可以是32位的IP地址,也可以是A、B、C。两个IP地址IP1、IP2集合之间相互匹配要求
Figure GSA00000011054700106
它们之间的匹配度为它们权值之积Ws1·Ws2。对任何两个节点n1、n2,AttackGraph.C中的元素的元素可能有四种情况,考虑某一个根据此攻击图构造的攻击场景图s1,下面分别对这三种情况说明它们之间的约束条件LocalRelation。
{SourceIP,SoureeIP}:formernode.SourceIP∩laternode.
{SourceIP,TargetIP}:formernode.SourceIP∩laternode.
Figure GSA00000011054700111
{TargetIP,TargetIP}:formernode.TargetIP∩laternode.
{TargetIP,SourceIP}:formernode.TargetIP∩laternode.
Figure GSA00000011054700113
尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (11)

1.一种网络攻击检测方法,其步骤为:
1)将从网络安全基础设施获得的报警转化为统一格式的报警;
2)获取与报警行为相关联的主机的状态信息,根据状态信息判断报警关联行为是否生效,当一个报警关联行为无效时,则丢弃此报警,否则将此报警标记为有效;当无法获取与报警行为关联的主机的状态信息时,则将此报警标记为未确定;
3)聚合有效报警和未确定报警,生成安全事件;所述安全事件为行为和特征相似的报警集合;
4)利用生成的安全事件将攻击图实例化,得到攻击场景图;
5)输出满足条件的攻击场景图,确定攻击类型。
2.如权利要求1所述的方法,其特征在于所述统一格式为IDMEF格式;所述IDMEF格式中的属性包括:报警生成的时间、报警关联行为的源IP地址、报警关联行为的目的IP地址、报警关联行为的源端口、报警关联行为的目的端口、报警的分类、使某类报警关联行为生效的主机特征。
3.如权利要求2所述的方法,其特征在于所述根据状态信息判断报警关联行为是否生效的方法为:通过从所述IDMEF格式报警中的目标地址查找关联主机,并查询该主机的状态信息中是否有此报警中的漏洞,从而验证报警是否生效。
4.如权利要求1或3所述的方法,其特征在于所述主机的状态信息采用OVAL语言进行描述,其包括:主机上安装的软件、主机的安全策略、软件的补丁安装情况、系统所存在的漏洞。
5.如权利要求1所述的方法,其特征在于所述安全事件中的信息包括:报警集合AlertSet、源IP地址的集合AbstractSourceIP、目的IP地址的集合AbstractTargetIP、源端口的集合AbstractSourcePort、目的端口的集合AbstractTargetPort、报警分类的集合Hyperclassification、安全事件由攻击引起的可能性描述信息Credibility。
6.如权利要求1所述的方法,其特征在于所述攻击图由一个四元组{N,E,T,C}构成,N为节点、E为边、T为节点自身的约束条件、C为边描述的两个节点之间的约束条件;其中:
组元N中的元素是一个二元组{PreNode,SeqNode},PreNode是该节点前一个节点的集合,SeqNode是该节点后一个节点的集合;
组元E中的元素是一个三元组{prenode,seqnode,value},prenode是有向边的起始节点,seqnode是有向边的终止节点,value是一个实数,表示这条边的重要程度;
组元T中的元素是一个三元组{Node,Hyperclassification,Critic},Node表示T中元素对应的节点元素,Hyperclassification表示T中元素对应安全事件的报警事件分类属性的值,Critic为此元素的重要程度;
组元C中的元素是一个三元组{formernode,laternode,LocalRelation},formernode表示当前有向边的起始节点,laternode表示当前有向边的终止节点,LocalRelation表示这两个节点之间反映在IP地址之间的关系以及两两节点之间前后攻击步骤之间的约束关系。
7.如权利要求6所述的方法,其特征在于所述LocalRelation是两个二元组的笛卡尔积{SourceIP,TargetIP}×{SourceIP,TargetIP}中全部元素的子集,其中{SourceIP,TargetIP}代表
Figure FDA00002189214800021
formernode.SourceIP代表formernode的源IP地址集合,laternode.TargetIP代表laternode的目的IP地址集合。
8.如权利要求6或7所述的方法,其特征在于所述攻击场景图的生成方法为:对每一个产生的安全事件,根据攻击图节点与边的约束规则,寻找一个攻击场景图,使该安全事件满足这个攻击场景图的某一个还未匹配的节点所必须满足的约束条件;如果没有满足条件的攻击场景图,则创建新的攻击场景图。
9.如权利要求8所述的方法,其特征在于所述安全事件与攻击场景图的节点匹配过程所满足的约束条件为:
1)对于一个攻击场景图s1,其中s1.NodeSet.N中的任两个节点n1、n2假如存在一条任何一个s1.AttackGraph.E中的最小子集E1,并且E1中全部元素的prenode,seqnode的值除了n1、n2外出现的次数都是偶数次,则这两个节点对应的安全事件的集合V1、V2满足时间窗原则:
Figure FDA00002189214800022
Figure FDA00002189214800023
Figure FDA00002189214800024
2)对于一个攻击场景图s1中的s1.NodeSet中的任意一个元素nodeset1,满足攻击类型匹配原则:
Figure FDA00002189214800025
Figure FDA00002189214800026
3)对于一个生成中的攻击场景图s1和一个安全事件e1,s1接受e1需要满足匹配先后原则:
Figure FDA00002189214800031
Figure FDA00002189214800032
4)对于一个攻击场景图s1,其中s1.NodeSet.N中的任两个节点n1、n2,满足IP地址约束原则:假如
Figure FDA00002189214800033
则n1、n2对应的安全事件的集合V1、V2满足约束条件c1.LocalRelation;
其中:s1.NodeSet.N为攻击场景图s1所对应的攻击图的节点集合,s1.NodeSet为攻击场景图s1所包含的安全事件节点集合,s1.AttackGraph.E为攻击图边的集合,e1.GroupTime.StartTime为安全事件e1起始时间,e1.GroupTime.EndTime为安全事件e1结束时间,nodeset1.N为安全事件节点nodeset1对应的攻击图的节点,nodeset1.V为安全事件节点nodeset1对应的安全事件的集合,e1.Hyperclassification为安全事件e1包含的攻击类型的集合,nodeset1.N.Hyperclassification为安全事件节点nodeset1.对应的攻击图的节点的攻击类型,s1.AttackGraph.N为攻击场景图s1所对应的攻击图的节点的集合,e.seqnode和e.prenode分别为安全事件e的前一个节点和后一个节点,c1.formernode和c1.laternode为约束条件c1对应的前一节点和后一节点。
10.如权利要求1所述的方法,其特征在于验证构成所述满足条件的攻击场景图的每一个安全事件中是否均存在一个具体的报警,且该报警满足攻击图的约束条件。
11.如权利要求10所述的方法,其特征在于所述验证方法为:
1)对于攻击场景图s1,从s1.NodeSet.V中选出一个报警单独构造一个安全事件,该安全事件的源IP地址为报警的报警关联行为的源IP地址的集合、该安全事件的目的IP地址为报警的报警关联行为的目的IP地址的集合、该安全事件的源端口为报警的报警关联行为的源端口的集合、该安全事件的目的端口为报警的报警关联行为的目的端口的集合;
2)对于s1.NodeSet.N中的任两个节点n1、n2,满足IP地址约束原则:假如
Figure FDA00002189214800034
Figure FDA00002189214800035
则n1、n2对应的安全事件的集合V1、V2满足约束条件c1.LocalRelation;当s1.AttackGraph.C中的全部元素被验证后,则认为s1是有效的;
其中s1.NodeSet.V为匹配到攻击场景图s1的安全事件的集合,s1.NodeSet.N为攻击场景图s1所对应的攻击图的节点集合,s1.AttackGraph.C为攻击场景图s1所对应的攻击图的节点间约束条件集合,c1.formernode为约束条件c1的对应的前一节点,c1.laternode为约束条件c1对应的后一节点,c1.LocalRelation为此约束条件;所述约束条件c1.LocalRelation为:对每种IP地址集合赋予一个权值ws,两个IP地址IP1、IP2集合之间相互匹配要求且IP1、IP2集合之间的匹配度为它们权值之积ws1·ws2;其中s是32位的IP地址、或是24位IP地址、或是16位IP地址、或是8位IP地址。
CN 201010103890 2010-01-29 2010-01-29 一种网络攻击检测方法 Active CN101778112B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010103890 CN101778112B (zh) 2010-01-29 2010-01-29 一种网络攻击检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010103890 CN101778112B (zh) 2010-01-29 2010-01-29 一种网络攻击检测方法

Publications (2)

Publication Number Publication Date
CN101778112A CN101778112A (zh) 2010-07-14
CN101778112B true CN101778112B (zh) 2013-01-23

Family

ID=42514440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010103890 Active CN101778112B (zh) 2010-01-29 2010-01-29 一种网络攻击检测方法

Country Status (1)

Country Link
CN (1) CN101778112B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103209085B (zh) * 2012-01-13 2018-06-12 中兴通讯股份有限公司 告警的处理方法和联动支撑系统
JP6148323B2 (ja) * 2012-03-22 2017-06-14 ロス アラモス ナショナル セキュリティー,リミテッド ライアビリティー カンパニーLos Alamos National Security,Llc 計算機ネットワークにおいて調整グループ攻撃を識別する異常検出
CN104348652A (zh) * 2013-08-06 2015-02-11 南京理工大学常熟研究院有限公司 基于关联分析的系统安全评估方法和装置
CN103746961B (zh) * 2013-12-12 2017-03-15 中国人民解放军63928部队 一种网络攻击场景的因果知识挖掘方法、装置及服务器
CN103746991B (zh) * 2014-01-02 2017-03-15 曙光云计算技术有限公司 云计算网络中的安全事件分析方法及系统
CN104009870B (zh) * 2014-05-30 2017-03-15 浙江大学城市学院 Wlan无线入侵告警聚合方法
CN104539626A (zh) * 2015-01-14 2015-04-22 中国人民解放军信息工程大学 一种基于多源报警日志的网络攻击场景生成方法
CN105915532B (zh) * 2016-05-23 2019-01-04 北京网康科技有限公司 一种失陷主机的识别方法及装置
CN107659555B (zh) * 2016-08-30 2020-08-11 北京长亭未来科技有限公司 网络攻击的检测方法及装置、终端设备和计算机存储介质
US10834103B2 (en) * 2017-04-03 2020-11-10 Juniper Networks, Inc. Tracking and mitigation of an infected host device
CN107809439B (zh) * 2017-08-31 2020-01-10 上海财经大学 网络连接数据分类系统
CN110445772B (zh) * 2019-07-22 2021-07-30 武汉安问科技发展有限责任公司 一种基于主机关系的互联网主机扫描方法及系统
CN111259204B (zh) * 2020-01-13 2023-04-11 深圳市联软科技股份有限公司 基于图算法的apt检测关联分析方法
CN114124417B (zh) * 2020-08-27 2024-02-13 东北大学秦皇岛分校 一种大规模网络下可扩展性增强的漏洞评估方法
CN113179241B (zh) * 2021-03-01 2022-06-17 西安理工大学 一种基于时序关联性分析的多步攻击表征方法
CN113852641A (zh) * 2021-09-30 2021-12-28 浙江创邻科技有限公司 一种基于图数据库的网络攻击溯源系统、方法及设备

Also Published As

Publication number Publication date
CN101778112A (zh) 2010-07-14

Similar Documents

Publication Publication Date Title
CN101778112B (zh) 一种网络攻击检测方法
Roschke et al. A new alert correlation algorithm based on attack graph
Lee et al. Adaptive intrusion detection: A data mining approach
Farhadi et al. Alert correlation and prediction using data mining and HMM.
CN102271068B (zh) 一种dos/ddos攻击检测方法
Ahmadinejad et al. A hybrid model for correlating alerts of known and unknown attack scenarios and updating attack graphs
CN110213226B (zh) 基于风险全要素辨识关联的网络攻击场景重建方法及系统
CN112134877A (zh) 网络威胁检测方法、装置、设备及存储介质
Vaarandi Real-time classification of IDS alerts with data mining techniques
CN113904881B (zh) 一种入侵检测规则误报处理方法和装置
CN111709034A (zh) 基于机器学习的工控环境智能安全检测系统与方法
Shrivastava et al. Effective anomaly based intrusion detection using rough set theory and support vector machine
CN110012037A (zh) 基于不确定性感知攻击图的网络攻击预测模型构建方法
Sen et al. Towards an approach to contextual detection of multi-stage cyber attacks in smart grids
CN113645240A (zh) 一种基于图结构的恶意域名群落挖掘方法
CN113037776A (zh) 一种电力系统信息资产安全监控方法
Li et al. Real-time correlation of network security alerts
Nehinbe A simple method for improving intrusion detections in corporate networks
Visumathi et al. A computational intelligence for evaluation of intrusion detection system
CN112235242A (zh) 一种c&c信道检测方法及系统
CN107835153B (zh) 一种脆弱性态势数据融合方法
Xiao et al. Alert verification based on attack classification in collaborative intrusion detection
CN115085948A (zh) 基于改进d-s证据理论的网络安全态势评估方法
Zhang et al. Analysis of payload based application level network anomaly detection
Ukil Application of Kolmogorov complexity in anomaly detection

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant