攻击图技术
1. 攻击图概述
攻击图是一种基于模型的网络安全评估技术,综合分析多种网路配置和脆弱性信息的基础上,找出所有可能的攻击路径。
攻击图是由顶点和有向边两部分构成,根据攻击图类型的不同,顶点可以表示为主机,服务,漏洞,权限等网络安全相关要素。
也可以表示被攻击者破解、权限被获取等的安全状态。边用于表示攻击者攻击行为的先后顺序。
攻击图的核心—规则与推导。包括初始条件(输入信息),公理定理(攻击图的规则系统)、要证目标(攻击目标)
2. 攻击图生成技术
3. 攻击图种类
状态攻击图
状态攻击图可以表示为AG=(E,V),其中E为边集合,即原子攻击集合,任意边e∈E都表示全局状态的迁移;V表示状态顶点集合,对于任意顶点v∈V,可以用四元组<h,srv,vul,x>表示,其中,h表示的是状态涉及的主机,srv涉及的服务,vul为该状态下存在的漏洞,x,是任何其他需要参考的信息,比如开放端口,入侵检测系统等。
属性攻击图
属性攻击图是为解决状态攻击图的属性爆炸问题而提出,将网络共的安全要素作为独立的属性顶点,同一主机上的同一漏洞仅对应图中的一个属性顶点。属性攻击图通常包含两类顶点和两类边,两类顶点分别表示漏洞和条件,条件顶点表示攻击者当前所具有的权限,漏洞顶点表示存在漏洞的服务和通过利用该漏洞攻击者可以获取的权限。边分为两种,由条件指向漏洞的边表示漏洞的前置条件,由漏洞指向条件的边表示漏洞的后置条件。属性攻击图可表示为AG=(C,V,E),其中,C表示条件集合,V表示漏洞集合,E表示边集合。
贝叶斯攻击图
攻击图反映了网络内可能的攻击路径,贝叶斯网络是一种非常有效的概率推理模型,初始节点被赋予概率值,有向边表示了节点之间的因果关系,根据初始节点的概率值和节点间的因果关系可推导出后续所有节点的条件概率。
oday攻击图和社会工程攻击图
4. 攻击图生成工具
MulVAL是linux平台的开源攻击图生成工具,基于nessus或oval等漏洞扫描器的漏洞扫描结果,网络节点的配置信息及其他信息,使用graphviz图片生成器绘制攻击图。
原理:
MuLVal使用Datalog语言作为模型语言,其将Nessus/oval扫描器报告,防火墙等管理工具提供的网络拓扑信息,网络管理员提供的网络管理策略等转化为DataLog语言的事实作为输入,交由内部的推导引擎进行攻击过程推导。推导引擎由DataLog规则组成。这些规则捕获操作系统行为和网络中各个组件的交互,最后由可视化工具将推导引擎得到的攻击树可视化形成攻击图。
TVA是一种具有多项式级时间复杂度的攻击图生成工具,可用于对网络渗透进行自动化分析,其输出结果为由攻击步骤和攻击条件构成的状态攻击图,该攻击需要手工输入建立规则库。
NetSPA是一种基于图论的攻击图生成工具,规则库的建立需要依赖手工输入,生成的攻击图中包括环路。