论文部分内容阅读
对于一个网络来说,只要它运行就不可避免地存在漏洞。这是因为网络主要是通过服务器和终端为用户提供服务,而它们的运行需要依赖服务软/硬件,而服务软/硬件可能因存在缺陷而易受攻击。因此,探测独立主机上的漏洞结构并不能完全保证网络的安全,更不能保证网络中的服务顺利进行。此外,要想消除软/硬件的所有漏洞是不可能的,特别是那些提供网络服务的大型软件,升级打补丁可以消除已知的漏洞,但可能也会带来更多未知的漏洞。网络安全的目标是在提供网络服务的同时保持足够的安全。为了达到这个目标,必须从分析漏洞入手联系整个网络结构和配置来分析网络的安全性。然而,目前网络漏洞分析的方法主要集中于对已知漏洞的描述与分析,对于未知漏洞的研究相对较少,更没有将两者统一进行描述和分析的方法。而且随着网络结构越来越复杂,对于大型网络,网络中的设备数量庞大,其生成的攻击图的信息量也是非常巨大的,如何从这些海量信息中找到关键资源,协助网络管理员能够顺利完成网络安全增强的工作,是目前网络漏洞分析需要研究的一个重要问题。与此同时对于网络漏洞的分析大多只是停留在理论研究之上,特别是在国内没有一个完整的网络漏洞分析工具,因此开发一个友好的,自动化的网络漏洞分析系统,也是一个需要解决的问题。本文采用形式化的描述方法和基于逻辑的推理技术,对网络配置信息和网络中的漏洞进行了描述并随后推理得到网络攻击图,并对攻击图中的节点和弧设置权重,对攻击图中攻击资源进行了排序,使网络管理员能够快捷找到关键资源进行安全增强,主要工作如下:(1)在分析了已知和未知漏洞描述方法不足之处的基础上,采用形式化技术抽象漏洞的细节,对网络配置、已知漏洞和未知漏洞进行了统一的描述。(2)采用基于逻辑的分析方法,运用Horn子句对形式化后的网络配置和漏洞信息进行分析,定义了攻击图的生成方式,在攻击图中加入了弧的概念,明确了攻击图中顶点之间的各种关系,最后给出相应的实例,按照提出的方法分析实例中的漏洞,并提出了基于攻击序列长度的安全增强方案。(3)在生成的攻击图的基础上,对攻击图进行了修改,为图中的顶点赋予适当的权值用于表示漏洞发掘的可能性,并设计了攻击序列中攻击资源的重要性的计算方式,对最终得到的攻击资源的重要性进行排序,找到网络漏洞发掘中的关键资源。(4)开发了一个网络漏洞分析原型系统,成功对网络的配置信息进行了形式化描述并通过漏洞分析方法进行了分析,最终生成攻击图。一方面为网络漏洞分析的研究提供了实验平台,另一方面也验证了之前提出的漏洞分析方法的合理性。