找到自身漏洞 信息安全脆弱性分析技术
来源:赛迪网 更新时间:2007-04-28


 
 
信息安全所涉及的内容越来越多,从最初的信息保密性,发展到现在的信息的完整性、可用性、可控性和不可否认性,信息技术在一步步走向成熟。


据国外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),用于脆弱性检测基准测试,目前该语言正在逐步完善之中。


同国外比较,我国脆弱性信息的实时性和完整性尚欠缺,主要原因在于脆弱性新发现滞后于国外。而安全脆弱性检测、消除、防范等都受制于安全脆弱性的发现。因而,安全脆弱性分析成为最具挑战性的研究热点。


入侵检测与预警技术


网络信息系统安全保障涉及到多种安全系统,包括防护、检测、反应和恢复4个层面。入侵检测系统是其中一个重要的组成部分,扮演着数字空间“预警机”的角色。入侵检测技术大致分为五个阶段:第一阶段是基于简单攻击特征模式匹配检测;第二阶段,基于异常行为模型检测;第三阶段,基于入侵报警的关联分析检测;第四阶段,基于攻击意图检测;第五阶段,基于安全态势检测。归纳起来,入侵检测与预警发展动向表现为以下几方面。


入侵安全技术集成


由于网络技术的发展和攻击技术的变化,入侵检测系统难以解决所有的问题,例如检测、预防、响应、评估等。入侵检测系统正在发生演变:入侵检测系统、弱点检查系统、防火墙系统 、应急响应系统等,将逐步集成在一起,形成一个综合的信息安全保障系统。例如,Securedecisions公司研究开发了一个安全决策系统产品,集成IDS、Scanner、Firewall等功能,并将报警数据可视化处理。入侵阻断系统(Intrusion Prevention System)成为IDS的未来发展方向。


高性能网络入侵检测


现代网络技术的发展带来的新问题是,IDS需要进行海量计算,因而高性能检测算法及新的入侵检测体系成为研究热点。高性能并行计算技术将用于入侵检测领域,高速模式匹配算法及基于纯硬件的NIDS都是目前国外研究的内容。


入侵检测系统标准化


标准化有利于不同类型IDS之间的数据融合及IDS与其他安全产品之间的互动。IETF(Internet Engineering Task Force)的入侵检测工作组(Intrusion Detection Working Group,简称 IDWG)制定了入侵检测消息交换格式(IDMEF)、入侵检测交换协议(IDXP)、入侵报警(IAP)等标准,以适应入侵检测系统之间安全数据交换的需要。同时,这些标准协议得到了Silicon Defense、Defcom、UCSB等不同组织的支持,而且按照标准的规定进行实现。目前,开放源代码的网络入侵检测系统Snort已经支持Idmef的插件。因此,具有标准化接口的功能将是下一代IDS的发展方向。


嵌入式入侵检测


互联网的应用,使计算模式继主机计算和桌面计算之后,将进入一种全新的计算模式,这就是普适计算模式。普适计算模式强调把计算机嵌入到人们日常生活和工作环境中,使用户能方便地访问信息和得到计算的服务。随着大量移动计算设备的使用,嵌入式入侵检测技术得到了重视。


入侵检测与预警体系化


入侵检测系统由集中向分布式发展,通过探测器分布式部署,实现对入侵行为的分级监控,将报警事件汇总到入侵管理平台,然后集中关联分析,以掌握安全态势的全局监控,从而支持应急响应。目前技术正向“检测-响应”到“预警-准备”方向发展。


网络蠕虫防范技术


与传统的主机病毒相比,网络蠕虫具有更强的繁殖能力和破坏能力。传统的基于单机的病毒预防技术、基于单机联动的局域网病毒防范技术、病毒防火墙技术等都不能很好地适应开放式网络对网络蠕虫的预警要求。例如,传统的单机病毒检测技术依赖于一定的检测规则,不适应网络蠕虫的检测。因为网络中恶意代码种类繁多,形态千变万化,其入侵、感染、发作机制也千差万别。近年来的研究热点主要是:计算机蠕虫的分类、蠕虫流量的仿真及蠕虫预警系统设计与测试、蠕虫的传播仿真实验、蠕虫剖析模型及隔离技术研究。在网络蠕虫的产品市场方面,国外Silicon Defense公司发布围堵蠕虫产品Countermalice,Lancope公司的Stealthwatch产品,该产品是基于行为入侵检测系统,具有威胁管理功能。


总之,就网络蠕虫发展状况来看,网络蠕虫的攻防技术正处于发展期间,其主要技术走向包括:网络蠕虫的快速传播机制及隐蔽机制;网络蠕虫的早期预警技术和仿真测试;网络蠕虫应急响应技术,主要是阻断技术;网络蠕虫理论模型,如基于应用系统的蠕虫、数据库蠕虫、移动环境网络蠕虫。抗网络蠕虫攻击机制,如代码随机化、软件多样性、蠕虫攻击特征自动识别。


信息系统攻击容忍技术


据有关资料统计,通信中断1小时可以使保险公司损失2万美元,使航空公司损失250万美元,使投资银行损失600万美元。如果通信中断2天则足以使银行倒闭。攻击容忍技术解决的安全问题是在面临攻击、失效和偶发事件的情况下,信息网络系统仍能按用户要求完成任务,信息网络系统能够支持用户必要的业务运行。目前,国际上关于信息网络系统生存的研究处于发展阶段,其主要研究领域包括生存性概念及其特性、生存性模型和仿真、生存性工程、系统的生存性分析与评估、网络容错、数据库入侵容忍等。


信息安全技术的8个发展趋势


IT新技术和攻击手段变化的加快,使得信息安全新思想、新概念、新方法、新技术、新产品将不断涌现。据预测,未来信息安全技术发展动向具有以下特点:


1. 信息安全技术由单一安全产品向安全管理平台转变


信息系统安全是一个整体概念,现在已不是头痛医头、脚痛医脚的时期,安全需要各产品的有机组合和共同作用。单一的网络安全产品并不能保证网络的安全性能,安全产品的简单堆叠也不能带来网络的安全保护质量(QOP),只有以安全策略为核心,以安全产品的有机组合形成一个安全防护体系,并由安全管理保证安全体系的落实和实施,才能真正提高网络系统的安全性能。


2. 信息安全技术发展从静态、被动向动态、主动方向转变


传统的计算机安全机制偏重于静态的、封闭的威胁防护,只能被动应对安全威胁,往往是安全事件事后才处理,造成安全控制滞后。随着信息环境动态变化,如网络边界模糊、用户的多样性和应用系统接口繁多,安全威胁日趋复杂。因此,动态、主动性信息安全技术得到发展和重视。例如,应急响应、攻击取证、攻击陷阱、攻击追踪定位、入侵容忍、自动恢复等主动防御技术得到重视和发展。


3. 信息安全防护从基于特征向基于行为转变


黑客技术越来越高,许多新攻击手段很难由基于特征的防护措施实现防护,所以,基于行为的防护技术成为一个发展趋向。


4. 内部网信息安全技术得到重视和发展


信息网络的安全威胁不仅仅来自互联网,或者说外部网络;研究人员逐渐地意识到内部网的安全威胁影响甚至更大。由于内部网的用户相对外部用户来说,具有更好条件了解网络结构、防护措施部署情况、业务运行模式以及访问内部网;如果内部网络用户一旦实施攻击或者误操作,则有可能造成巨大损失。因此,内部网络安全技术得到重视和发展,Mitre公司研究人员开始研究内部用户行为模型,以用于安全管理。


5. 信息安全机制构造趋向组件化


可以简化信息系统的安全工程复杂建设,通过应用不同的安全构件,实现“宜家家具”样式自动组合,动态实现“按用户所需”安全机制,快速地适应用户业务的发展要求。


6. 信息安全管理由粗放型向量化型转变


传统的信息网络安全管理好坏依赖于管理员的“经验”,安全管理效果是模糊的,安全管理缺乏有效证据来支持说明网络信息系统的安全达到了所要求的安全保护程度。随着信息网络系统复杂性的增加,信息安全管理走向科学化,信息安全管理要做到量化管理,信息安全管理也需要实施KPI。目前,信息安全科研人员已经提出QOP概念,即安全保护质量,相关技术和产品正在研究发展中。


7. 软件安全日趋重要,其安全工程方法及相关产品将会快速发展


软件作为信息网络中的“灵魂”, 其安全重要性日渐凸显,特别是信息网络中的基础性软件(如通信协议软件、操作系统、数据库、中间件、通用办公软件等),一旦存在安全漏洞,所造成的影响往往不可估量。由于现在社会越来越依赖于计算安全,软件可信性需求显得十分迫切。围绕软件安全问题研究已经得到安全人员关注,例如软件安全工程、软件功能可信性验证、软件漏洞自动分析工具、软件完整性保护方法等都在进行。


8. 面向SOA的安全相关技术和产品将会快速发展


随着信息网络应用的发展,一种面向体系服务的SOA(Service Oriented Architecture)思想得到发展,通过SOA可以增强企事业单位的协作能力,提升信息共享能力,有利于信息系统综合集成。但是,SOA也带来一系列新的安全问题,例如XML安全、SOAP协议安全等。


目前,国外公司已经研究出XML防火墙。传统的防火墙是IP报头信息进行访问控制,但对于基于Http之上的Web服务来说,访问控制粒度过粗,因此,需要能够支持处理SOAP消息级的防火墙,这就是XML防火墙产生的原因。XML防火墙是一种应用级别的防火墙。XML防火墙通过截获SOAP请求包,并对这个SOAP请求进行分析,然后根据访问控制策略实施服务级访问控制。