摘 要 计算机弱点数据库已成为弱点研究的重要组成部分,对收集、存储和组织弱点信息具有重要意义。本文介绍了计算机弱点的定义及分类,分析并评价了现有的弱点数据库,最后讨论了其存在的问题以及将采取的技术路线。
关键词 网络安全,计算机脆弱性,安全漏洞,弱点分类法,弱点数据库
1 引言
随着计算机技术和网络通信技术的飞速发展,internet的规模正在不断增长。isc组织的调查报告显示[1],1995年1月,全世界共约有584.6万台主机连入internet,截止到2005年1月,internet的主机数量约达到31764.6万台,在短短的十年内主机数量增长了54倍之多。
与此同时,与internet有关的安全事件也愈来愈多,安全问题日益突出。越来越多的组织开始利用internet处理和传输敏感数据,同时在internet上也到处传播和蔓延着入侵方法和脚本程序,使得连入internet的任何系统都处于将被攻击的风险之中[2]。据估计,目前大约有58000多种已知计算机病毒[3],病毒的传播和扩散也给计算机系统安全带来了严重的威胁。国际权威安全组织cert/cc给出了1990年至2003年期间的安全事件统计报告,统计数字如图1所示,其中2003年的入侵事件竟高达137,529件,相当于2001年和2002年的总和[4],而由此造成的经济损失约为6.66亿美元[5],从历史数据上看这种趋势还在增加。
理论分析表明,诸如计算机病毒、恶意代码、网络入侵等攻击行为之所以能够对计算机系统产生巨大的威胁,其主要原因在于计算机及软件系统在设计、开发、维护过程中存在安全弱点。而这些安全弱点的大量存在也是安全问题的总体形势趋于严峻的重要原因之一[6]。图2给出了cert/cc在1995年至2004年期间接报的计算机弱点的统计情况,从中可以看出,自2000年起,接报的弱点数逐年迅速增加,虽然近两年上升速度趋于平缓,但始终处于一个数量很高的位置上。通过与接报的安全事件的联系和比较,我们不难看出计算机弱点与安全事件之间存在着一定程度的因果关联,即随着弱点数量的增大,安全事件也逐渐增多,这一点也恰恰和理论分析观点一致。由此可见,弱点的存在对连入internet的计算机系统的安全性产生了巨大的安全影响[7]。而在弱点存在性的问题上,cheswick和bellovin[8]在1994年的一份关于当今流行操作系统和应用程序的研究报告中指出软件中不可能没有缺陷。因此计算机弱点的相关研究已成为网络与信息安全领域的重要课题之一。
弱点数据库是弱点研究领域的重要组成部分,其研究目的与意义主要表现在:1)人们通过设计和开发弱点数据库来收集、存储和组织弱点信息;2)建构弱点数据库以及收集维护弱点信息是一项长期而艰辛的工作,需要耗费大量的
人力资源,所以大多数研究人员没有精力也没有必要重复收集弱点信息,他们往往利用已有弱点数据库的信息资源从事弱点分析等相关研究;3)弱点数据库为网络蠕虫病毒的传播与防治、网络入侵检测、风险评估等安全领域提供了必要的信息支持。因此,本文将对已有弱点数据库资源进行深入的分析和综述。
2 弱点定义及分类
2.1 弱点定义
计算机弱点通常是指计算机硬件、软件或策略上的缺陷,从而使攻击者可能在未授权的情况下访问系统。弱点涉及的范围很广,覆盖计算机及网络系统的各个环节,包括路由器、防火墙、操作系统、客户和服务器软件等。在历经30多年的计算机弱点研究过程中,学者们根据自身的不同理解和应用需求对计算机弱点下了很多定义[9~12],但目前看来还没有一个统一的定义能够被人们广泛接受。其中,krsul针对软件弱点的定义较有影响,他将一个弱点定义为“软件规范(specification)设计、开发或配置中一个错误的实例,它的执行能违犯安全策略”[11]。本文仅围绕着软件弱点的范畴展开讨论,并在修改和完善krsul定义的基础上对弱点进行如下定义:弱点(vulnerability)是软件系统或软件组件中存在的缺陷,此缺陷若被发掘利用则会违犯安全策略,并对系统的机密性、真实性和可用性造成不良影响。为了避免称呼上的混淆,本文将安全漏洞、脆弱性、脆弱点、安全弱点统一称作弱点,即上述名词表示同一概念。
2.2 弱点分类
为了收集、存储和组织弱点信息,人们首先要了解弱点的本质特征。通常,人们会用一个分类属性来表达弱点的一个本质特征,而为弱点的每个属性赋值的过程,就是给弱点在该维属性上分类的过程。在弱点数据库的设计与实现中,人们常常用弱点的分类属性作为数据库表字段以便表达弱点的各方面性质。因此,弱点分类工作是建构弱点数据库的基础,也是分析和评价弱点数据库的依据。
目前,很多研究机构和研究人员都开展了弱点分类工作。近十年来,比较有成效的工作有:landwehr[13]提出了一个包括弱点起源、引入时间和位置的3维属性分类法;longstaff[14]增加了对访问权限和易攻击性的分类;power提出了按危害性分类[15];du和mathur[16]的分类法描述了弱点起因、影响和修复属性;以及aslam和krsul的unix弱点分类法[17,18,11],bishop的6轴分类法[19],knight的四类型分类法[20]和venter的协调(harmonized)分类法[21]。国内的主要工作有李昀的基于星型网模型的分类法[22],单国栋的弱点分类研究[23],以及我们提出的多维量化属性分类法[24]等。通过对上述分类法的分析,可以看出每种分类法的贡献之一就是给出了弱点的不同分类属性。我们对这些分类属性进行了整理,并将它们简单地分成所属相关、攻击相关、因果相关、时间相关和其他属性等5类,整理结果如图3所示。
3 弱点数据库
在弱点定义和分类工作的基础上,很多研究机构都开发了弱点数据库以及相关弱点数据资源,根据弱点组织方式的不同,可归结为三类:弱点库、弱点列表和弱点搜索引擎。本节中,我们将对目前公开的弱点数据库资源进行分析和评价。
属性类别所属相关攻击相关因果相关时间相关其它属性
生产厂商易攻击性起源成因引入时间弱点标识号
os种类攻击复杂性后果影响时间影响力弱点名称
应用程序攻击来源安全性威胁发布时间修复操作
组件种类攻击手段更新时间对象和影响速度
出现位置攻击所需权限
消息来源
图3 弱点的分类属性
3.1 弱点库
弱点库通常是指以数据库的方式收集和组织弱点信息,相对而言,这种类型的弱点资源提供的弱点属性较完备,弱点信息量也较大。
(1)cert/cc库[25]
计算机网络应急技术处理协调中心(cert/cc),始建于1988年,位于carnegiemellon大学的软件工程研究所,是当前国际上最著名的internet安全组织之一,它的主要工作是收集和发布internet安全事件和安全弱点,提供相应的技术建议和安全响应。cert/cc发布的弱点数据库被称为cert/cc库(不考虑安全警报advisory和alert),它提供的内容主要包括:名称、cert/cc编号、描述、影响、解决方法、受影响的系统、公布时间和cve编号等属性。值得注意的是,cert/cc库中还提供了一个影响度量(metric)的量化属性。该属性表征出一个弱点的严重程度,该属性的取值范围在0至180之间,而取值的大小主要涉及到以下几方面因素:
·该弱点信息的公开程度或可获得的难易程度;
·在cert/cc的安全事件报告中是否存在该弱点;
·该弱点是否给internet基础架构带来风险;
·该弱点给多少系统带来风险;
·该弱点被利用后产生的安全影响;
·利用该弱点的难易程度;
·利用该弱点的前提条件。
cert/cc指出,由于每个因素的量化程度不易控制,因此用户不能过于依赖metric属性的大小来评价一个弱点的危害程度,但这种方法却可以帮助用户在众多危害较轻的弱点中区别出那些危害较大的弱点。cert/cc的这种方法实际上是一种弱点危害性量化评估方法的原型。
该弱点数据库描述的弱点信息比较丰富,并且每个弱点都经过严格的验证,但弱点个数较少,到目前为止,该弱点库共收录了1474个弱点,并且更新比较慢。
(2)bugtraq库[26]
bugtraq库是symantec公司的securityfocus组织根据收集的弱点公布邮件而发布的弱点数据库,它描述的弱点属性包括名称、bid编号、类别(起因)、cve、攻击源、公布时间、可信度、受影响的软件或系统、以及讨论、攻击方法、解决方案、参考等。该弱点库最大的特点是提供了较详细的攻击方法或脚本,用户可以应用这些方法测试或识别该弱点。该弱点数据库描述的弱点属性较完备,且弱点更新及时,到目前为止,收录的弱点数近1tp00个,已被广泛地应用到ids及弱点扫描系统中。
(3)x2force库[27]
x2force库是iss公司发布的弱点数据库,是世界上最全面的弱点及威胁数据库之一。它提供的内容主要包括名称、编号、描述、受影响的系统和版本、安全建议、后果、参考以及cve、bid索引等属性。该数据库在弱点属性描述方面没有特殊之处,但它更新得较为及时,到目前为止,收录的弱点数高达21000个左右。该数据库主要被应用于iss开发的弱点扫描器等产品中。
(4)其它资源
其它的国外弱点资源还有securitybugware弱点数据库[28],以及普渡大学的cerias中心应用krsul的弱点分类法开发的一个公开的弱点数据库[29],该库约有11000个弱点,且弱点属性较完备,但很多属性没有给出描述或描述得较为粗糙。国内的弱点数据库资源都提供了中文的弱点信息,主要包括:中国国家计算机网络应急技术处理协调中心cncert/cc[30]发布的弱点库,增加了cncve编号,该库更新得较为及时,但弱点相关信息不是很详尽;绿盟公司的弱点库[31],主要参考了bugtraq库的内容,信息量较大;非商业组织xfocus[32]的弱点库,由于维护需要长期大量的工作,因此该数据库更新较慢。此外,还有部分研究者从事弱点数据库的设计和实现工作[33~35],他们的工作重点并不是收集弱点信息,而是通过整合弱点属性建构完善的弱点数据库,从而更好地组织已有的弱点信息。
3.2 弱点列表
弱点列表描述的弱点属性较少,或较为单一,公布的信息量也较小,但此类型的弱点资源在个别方面体现了各自显著的特点,如提供标准化命名、弱点补丁等。
(1)cve[36]
cve(commonvulnerabilitiesandexposures)是mitre公司建立的一个标准化弱点命名列表,被公认为安全弱点的标准名字,为安全领域内工业和许多政府组织所广泛接受。它提供的内容主要包括:弱点名称、简单描述和参考三部分,其中,弱点名称是弱点的cve标准化命名,参考部分给出了报告该弱点的组织及其弱点标识。cve命名的产生要通过该组织编委会严格审查。首先cna(candidatenumberingauthority)机构为一个新的安全弱点分配一个被称为can(cvecandidate)的cve候选号,然后由编委会研究讨论是否批准一个can成为cve。因此cve弱点命名通常包括两种形式:cve和can。然而,为了便于用户维护和使用cve命名,mitre已计划将can统一改为cve。事实上,cve就是一个弱点字典,其目的是关联并共享不同弱点数据库中同一弱点的信息,使各弱点数据库能够相互兼容。因此,cve列表中弱点的相关信息很少,对弱点的跟踪也比较慢。(2)eeye库[37]
eeye公司主要发布一些数量较少但最为严重的软件弱点和攻击,它提供的内容主要包括概述、技术细节、保护方法、严重性和发布时间等属性、其中还描述了当前距发布时间的间隔,用以体现弱点在发掘周期内不同阶段被利用的可能性是不同的。
(3)sans[38]
sans组织每个季度发布或更新最具威胁的20个internet安全弱点,包括10个windows系统弱点和10个unix系统弱点,由于这20个弱点危害性大、普遍性高、被重复攻击的可能性大,因此已成为学者们重要的研究对象。
(4)cisco、microsoft等各大软件厂商的弱点列表,提供了各自软件弱点的名称、起因、位置以及相应补丁等等信息。
3.3 弱点搜索引擎
弱点搜索引擎以弱点库为信息来源,提供了高效快捷的检索弱点的方法。著名的icat[39]就是美国国家标准技术学会创建的一个cve搜索引擎。icat的目的是让用户方便地链接到公用弱点数据库以及补丁站点,使他们能够发现和消除系统中存在的弱点。通过描述弱点的tp多个属性,icat允许用户以更细的粒度搜索弱点。icat的弱点数据主要来源于cerias、issx2force、sansinstitute、security-focus以及各大软件厂商,截止到2005年5月,共收录了8309个cve(包括can)弱点。此外,其它相关资源还有in-filsec搜索引擎[tp]。
3.4 弱点数据库的评价
为了阐明现有的公开弱点数据库资源的优劣程度,使人们能够理解它们各自的特点,并针对自身需求更好地利用这些数据资源,我们将从更新速度、收录数量、描述程度、描述语言以及特点等方面对上述弱点数据资源进行比较和评价。评价结果如图4所示,其中描述程度用分类属性的个数来度量,而更新速度用弱点发布或更新时间的迟缓来度量。从图中我们可以看出,cerias库的描述程度最完备,x2force库收录的弱点数量最多,而bugtraq库的综合效果最好。
4 存在的问题与技术路线
科学合理地建构弱点数据库对收集、存储和组织弱点信息,避免繁重而重复性的整理工作,以及进一步进行弱点分析等方面具有重要意义。通过对现有弱点数据库的分析,我们发现它们普遍存在以下问题:1)现有的弱点数据库在描述程度、收录数量、更新速度等方面各有所长,均不全面;2)对弱点简介等属性的描述通常都使用诸如英语、汉语等自然语言,这种方法尽管给维护者带来一些便利,但由于目前计算机还无法自动有效地处理自然语言,因此对弱点的进一步分析工作需要人参与完成,这给弱点研究工作带来沉重的负担;3)现有的弱点数据库采用各不相同的弱点分类方法,即采用不同的分类属性和属性值,使得同一弱点被不同的弱点数据库描述成不同的弱点,在这种情况下我们很难构建一个全面而综合的弱点库。尽管cve的出现缓解了这一问题,但cve收录的弱点数还不够全面,对弱点相关信息的描述也不够完备,并且不同弱点数据库所采用的弱点属性值不同的问题仍然没有得到解决。
针对上述问题,我们将在未来的弱点数据库研究中采取如下技术路线:开发一个统一标准的完备的弱点分类方法以整合现有的弱点数据资源,并且考虑用形式化或程序语言替代自然语言来描述弱点属性,从而实现弱点信息的自动获取以及弱点的自动检测与分析。我们认为建构这样的综合弱点数据库将具有积极的理论和现实意义。
参考文献
ationfromthewebatds/,2005
ftware,1999,16(4):62~69
dvulnerabilityassessment(mva)improvesecuritybyunderstandingyourownvulnerabilities!networksecurity,elsevierscience,2002(4):8~9
ationfromthewebatstats/cert—
ationfromthewebat
ationfromthewebat
7furnellsm,erabuseandcyberterrorism:ers&security,1999,18(1):28~34
8cheswickwr,llsandinternetsecurity:nwesley,1994
nwesleypublishingcompany,1983
10bishopm,calanalysisofvulnerabilitytaxonomies:[296211]..1996
revulnerabilityanalysis:[phdthesis].departmentofcomputerscience,purdueuniversity,westlafayette,usa.1998
12邢栩嘉,林闯,蒋屹新.计算机系统脆弱性评估研究.计算机学报,2004,27(1):1~11
13landwehrce,bullar,mcdermottjp,putingsurveys,1994,26(3):211~254
:calpresentationatadarpaworkshopinsavannah,georgia,1997
tandfuturedanger:acsiprimerofcomputercrime&letin,1996
16duw,dingsofthe21stnationalinformationsystemssecurityconference(nissc’98),://www.
omyofsecurityfaultsintheunixoperatingsystem:[].purdueuniversity,1995
18aslamt,krsuli,:ore,maryland,1996.22~25
omyofunixsystemandnetworkvulnerabilities:[technicalreportcse29510].departmentofcomputerscience,universityofcaliforniaatdavis,may1995
20knighte,etsecurityadvisor,2000(526):2~5
21venterhs,fricancomputerjournal,2003,29:24~31
22李昀,李伟华.基于星型网模型的安全漏洞分类.计算机工程与应用,2002,38(1):42,43,56
23单国栋,戴英侠,王航.计算机漏洞分类研究.计算机工程,2002,28(10):3~6
24张永铮,云晓春,胡铭曾.基于特权提升的多维量化属性弱点分类法的研究.通信学报,2004,25(7):107~114
ationfromthewebatvuls/2005
qvulnerabilitydatabase,availableonlineatbid/2005
bleonlineat2005
bleonlineat2005
bleonlineat2005
ationfromthewebat2005
31绿盟.bleonlineat2005
bleonlineat2005
33翟钰,张玉清,武维善,胡建武.系统安全漏洞研究及数据库实现.计算机工程,2004,30(8):68~70,148
34杨洪路,刘海燕,贺振中.脆弱性数据库系统的设计及构建.计算机工程,2004,30(9):195~197
35孙学涛,李晓秋,谢余强.通用脆弱点数据库的构建.计算机应用,2002,22(9):42~44
bleonlineat2005
bleonlineat2005
administration,networking,bleonlineat2003
bleonlineat
本文链接:http://www.qk112.com/lwfw/jsjlw/xinxiguanli/259993.html