从SQL蠕虫谈信息安全的风险预防体系(二)
日期:2007-05-10 荐:
如何建立有效的信息安全风险预防体系呢?蠕虫病毒对所有的网络和计算机系统都是一种威胁;而我们的系统中存在的各种漏洞,如SQL Server或Index Server存在的安全漏洞则是我们系统中的弱点;威胁利用弱点而造成损失的可能性则是系统的安全风险。当然,风险的高低还与被保护资产的价值受到攻击后可能的损失相关。 事实上,ISO 13335(IT安全管理指南)中对威胁、弱点和风险的定义如下: 威胁(Threat):可能导致对系统或组织破坏的有害事件的潜在因素; 弱点 (Vulnerability):一个或一组资产中存在的,可能被一个或多个威胁利用的脆弱之处; 风险 (Risk):特定威胁利用一个或者多个资产存在的弱点,对组织导致破坏的可能性。 如果将威胁表示为T,弱点表示为V,风险表示为R,需要保护的资产价值表示为A,那么会有如下等式: R=A×T×V(P,I) 其中,Vp=脆弱性被利用的可能性 Vi=脆弱性被利用造成影响的程度 其中,T×V可以理解为一个威胁对弱点的利用过程,实际上就是入侵攻击行为或病毒传染行为。 我们保护一个网络或系统的过程,实际上就是一个风险管理的过程,即识别风险、控制风险,通过采用适当有效的安全措施将风险消除,或者降低到可以承受的程度的过程。所以,如何保障一个系统处于安全运行的状态,实际上就是如何合理地降低T、V、A的值,从而将R降低到一个可以承受的状态。 对于目前的大多数用户来讲,最普遍的方式是将避免风险建立在威胁和弱点已知的前提条件下。这种方式对于已知的攻击方式和病毒是有效的,但是对于未知的威胁和弱点,或者还没有采取措施进行规避的威胁和弱点,这种方式就失去了防范的意义。 那么如何有效地降低风险呢?我们可以简单地作一分析. 首先,对于存在的安全威胁T,这是由于各种各样的原因和动机而产生的,我们无法直接地消除威胁的存在和程度,而主要通过依靠法律、道德、规范等手段进行约束,所以本文不做详细讨论。 其次,对于资产A,虽然由于折旧、时效性等因素会导致其价值降低,但是不在主要的风险降低因素考虑之内。 最后,对于脆弱性V,我们可以采用多种手段进行控制,比如对于已知的弱点进行补丁安装或安全化配置,可以将V和R降低到一个非常低的值(针对特定的威胁)。对于未知的弱点或者还没有采取安全措施保护的弱点,我们需要引入一个概念:风险预防(Risk Prevention)。具体到信息安全领域,风险的表现主要是病毒和入侵者的入侵行为,所以我们可以将这种概念具体化为入侵预防(Intrusion Prevention)。风险预防是一种新兴的安全防护理论,更是一种经过实践验证切实可行的安全防范措施,它是建立在对现有的计算环境进行正确的风险评估以后,采用合理的风险预防策略以及技术解决方案进行的高效率防范措施,是一种区别于现行安全措施的、主动的安全防范方式。风险预防系统的关键特点在于它不依赖于特定的入侵特征库和病毒特征码,并且能够在变动、发展的网络环境中对关键资产进行保护,对于已知和未知的脆弱性都能够有效地防范,降低Vp值。在SQL蠕虫这样的攻击情况下,即使管理员尚未安装SQL的补丁程序,如果安装入侵预防系统,就可以免受SQL Slammer病毒的攻击,为安全管理员赢得了宝贵的响应时间。这种防范措施对于Windows平台和UNIX平台都适用,并且不依赖特征库的升级即可完成防范功能,可以极有效抵御目前危害最严重的各种“Zero-day Attack”。 对于影响程度Vi,我们可以采取技术和管理相结合的手段进行降低。比如采用合理的备份策略可以显著地降低损失;采用入侵检测与预防系统及时发现入侵行为和感染过程,也可以有助于降低Vi值;利用安全服务为用户建立一个业务持续性计划(BCP)和灾难恢复计划(DRP)同样是非常有必要的。 安全服务相当一部分工作是对风险的预防工作,比如服务器加固、风险评估、安全策略制定、漏洞审查等等。同样,安全应用也能够起到相当大的风险预防作用,例如将冠群金辰公司的龙渊核心服务器防护产品(eAC)和用户的应用系统结合起来,起到加强的认证、授权和访问控制的作用。 总之,只有结合多种安全措施、基于正确的风险评估与管理、加强主动防御技术、然后建立起来的纵深安全防御体系才是更有效的。
标签: