找到自身漏洞 信息安全脆弱性分析技术
信息安全所涉及的内容越来越多,从最初的信息保密性,发展到现在的信息的完整性、可用性、可控性和不可否认性,信息技术在一步步走向成熟。
据国外Securityfocus公司的安全脆弱性统计数据表明,绝大部分操作系统存在安全脆弱性。一些应用软件面临同样的问题。再加上管理、软件复杂性等问题,信息产品的安全脆弱性还远未能解决。由于安全脆弱性分析事关重大,安全脆弱性发现技术细节一般不对外公布,例如最近Windows平台上Rpc安全脆弱性,尽管国外安全组织已经报告,但安全脆弱性分析过程及利用始终未透露。
信息系统安全脆弱性分析技术
当前安全脆弱性时刻威胁着网络信息系统的安全。要保障网络信息安全,关键问题之一是解决安全脆弱性问题,包括安全脆弱性扫描、安全脆弱性修补、安全脆弱性预防等。
网络系统的可靠性、健壮性、抗攻击性强弱也取决于所使用的信息产品本身是否存在安全隐患。围绕安全脆弱性分析的研究工作分为以下几个方面:
第一类,基于已知脆弱性检测及局部分析方法
Satan是最早的网络脆弱性分析工具,也是该类研究的代表,由网络安全专家Dan farmer和Wietse venema研制,其基本的设计思路是模拟攻击者来尝试进入自己防守的系统,Satan具有一种扩充性好的框架,只要掌握了扩充规则,就可以把自己的检测程序和检测规则加入到这个框架中去,使它成为Satan的一个有机成分。
正因为如此,当Satan的作者放弃继续开发新版本之后,它能被别的程序员接手过去,从魔鬼(Satan)一跃变成了圣者(Saint)。Saint与Satan相比,增加了许多新的检测方法,但丝毫没有改变Satan的体系结构。Satan 系统只能运行在Unix系统上,远程用户无法使用Satan检测。Saint解决了Satan远程用户问题,但是Satan和Saint都无法对一些远程主机的本地脆弱性进行采集,而且两者的脆弱信息分析方法停留在低级别上,只能处理原始的脆弱信息。
Nessus是一款免费、开放源代码和最新的网络脆弱性分析工具,可运行在Linux、Bsd、Solaris和其他平台上,实现多线程和插件功能,提供gtk界面,目前可检查多种远程安全漏洞。但是,Nessus只能从远程进行扫描获取脆弱性。许多脆弱性是本地的,不能通过网络检测到或被利用,例如收集主机配置信息,信任关系和组的信息难以远程获取。
第二类,基于安全属性形式规范脆弱性检测方法
自动和系统地进行脆弱性分析是目前的研究重点,C.R.Ramakri-shnan和R.Sekar提出了一种基于模型的配置脆弱性分析方法,其基本原理是:首先以形式来规范目标的安全属性,例如,普通用户不能够重写系统日志子文件;其次建立系统抽象模型描述安全相关行为,抽象模型由系统的组件模型来组成,例如,文件系统、特权进程等; 最后检查抽象模型是否满足安全属性,如果不满足,则生成一个脆弱性挖掘过程操作序列,用以说明导致这些安全属性冲突的实现过程。
该方法的优点在于检测已知和新的脆弱点,而Cops和Satan主要解决已知脆弱性的检查。但是运用该方法需要占用大量计算资源,目前还无法做到实际可用,另外,方法的可扩展性仍然是一个难题,实际模型要比实验大得多。模型的开发过程依赖于手工建立,模型自动生成技术尚需要解决。
第三类,基于关联的脆弱性分析与检测
这类研究工作利用了第一、第二类研究成果,侧重脆弱性的关联分析,即从攻击者的角度描述脆弱点的挖掘过程。一款基于网络拓扑结构的脆弱分析工具Tva(Topological Vulnerability Analysis)能够模拟渗透安全专家自动地进行高强度脆弱性分析,给出脆弱点挖掘过程,生成攻击图。tva将攻击步骤及条件建立为状态迁移图,这种表示使得脆弱性分析具有好的扩充性,使得输入指定的计算资源算出安全的网络配置。
然而Tva模型化脆弱性挖掘过程依赖尚需要手工输入,该问题的解决需要一种标准的、机器能理解的语言自动获取领域知识。另外,若一个大型网络存在多个脆弱点,则Tva将产生巨大图形,因而图形的管理将成为难题。最后,tva用到的信息要准确可靠,以便确定脆弱点是否可用,但是Tva的脆弱信息只是依靠Nessus。
Laura P.Swiler等人也研制了计算机攻击图形生成工具,将网络配置、攻击者能力、攻击模板、攻击者轮廓输入到攻击图生成器就可以输出攻击图,图中最短路径集表示系统最有可能受到攻击途径。Oleg Sheyner和Joshua Haines用模型检查方法来研究攻击图的自动生成和分析,其基本的思路是将网络抽象成一个有限状态机,状态的迁移表示原子攻击,并且赋予特定安全属性要求。然后用模型检查器Nusmv自动生成攻击图,并以网络攻击领域知识来解释图中状态变量意义和分析图中的状态变迁关系。但是该方法所要处理问题是模型的可扩展性,计算开销大,建模所使用到的数据依赖于手工来实现。
第四类,脆弱性检测基础性工作,主要指脆弱信息的发现、收集、分类、标准化等研究
安全脆弱性检测依赖于安全脆弱性发现,因此脆弱性原创性发现成为最具挑战性的研究工作。当前,从事安全脆弱性挖掘的研究部门主要来自大学、安全公司、黑客团体等。在脆弱性信息发布方面,Cert最具有代表性,它是最早向Internet网络发布脆弱性信息的研究机构。而在脆弱性信息标准化工作上,Mitre开发“通用漏洞列表(Common Vulnerabilities and Exposures,CVE)”来规范脆弱性命名,同时mitre还研制出开放的脆弱性评估语言OVAL(Open Vulnerability Assessment Language),用于脆弱性检测基准测试,目前该语言正在逐步完善之中。
同国外比较,我国脆弱性信息的实时性和完整性尚欠缺,主要原因在于脆弱性新发现滞后于国外。而安全脆弱性检测、消除、防范等都受制于安全脆弱性的发现。因而,安全脆弱性分析成为最具挑战性的研究热点。