要补的不只是漏洞本身
大多数情况下,在厂商公布了补丁之后用户也都会及时地安装补丁。对于绝大多数网络管理人员来说,打补丁其实已经是日常工作中的家常便饭了,而且整个打补丁的过程大多数都遵循这样一个非正式的通用模式,这个模式大致包括以下几个过程:
1.专业安全研究人员或者组织研究并发现一个漏洞。
2.该漏洞被提交给相关厂商,等待确认并为开发补丁争取时间。
3.厂商确认漏洞并且发布补丁程序。
4.网络管理人员通过安全厂商或者
软件厂商通告知晓该漏洞。
5.管理员寻找、下载并且安装补丁。
6.管理员将该漏洞和补丁尽可能通告相关人员。
7.假定该漏洞已经被补丁修补。
对于企业级用户而言,尤其是当他们的网络具有一定规模,同时网络中又有关键业务存在时,这样的过程和方法是否依然能够奏效呢?事实证明,这种传统的方法在对付企业中漏洞带来的安全风险时,还存在着很多局限性。
打补丁不能解决所有漏洞问题 没有一个规范的过程来对漏洞进行
监控,企业就不会清楚网络环境中的漏洞是否被清除或者规避。一些漏洞是由配置不当或者配置错误导致的,这在前面的漏洞概念中已经明确指出,没有补丁能够清除由配置导致的漏洞。
前面提到的传统补丁方法想要成为企业补丁管理方法还缺乏一定的规范性,更何况补丁管理也只是漏洞管理的一部分而已。普遍的看法是将补丁管理过程看成一种生命周期模型,一个封闭的循环。在微软的补丁管理模型中,一个循环的完成意味着新循环的开始,新循环继承了前一个循环的成果并在这个基础上有所提高。循环的过程分成评估、识别、计划和部署四个部分,对每一个新的漏洞以及相应的补丁都要放在这个循环里面进行考察。
评估阶段 收集漏洞、补丁信息,收集企业资产信息并确定其价值,然后,在这个基础上,评估漏洞对企业的威胁,还要对前一次的执行结果进行评估,给出修补漏洞的要求以及其他防护措施建议。
识别阶段 这个阶段的工作以评估阶段收集的信息作为基础,主要工作有下列内容:寻找补丁并确定其来源可靠;测试补丁以确定其能与企业IT环境兼容。
计划阶段 给出在企业网络部署补丁的详细计划安排。
部署阶段 根据计划,在企业网络内部署补丁并进行确认。
上面这个划分适合企业从宏观的角度把握补丁管理,但及时部署补丁还是需要依靠自动化的工具来完成才有可能。
有效管理资产
当企业网络中的资产数量较多的时候,传统的方法不可能有效地将网络中所有资产存在的漏洞进行修补。在评估之前要对企业中的资产有明确的清单,企业网络中的资产包括网络设备、网络安全设备、服务器、数据库等资产,其
硬件、
软件的复杂度要远远高于个人终端,并且网络设备、服务器等承载企业重要业务的资产的重要性也要远高于个人终端,同样一个漏洞对于不同资产的威胁程度是不一样的。
据权威统计,企业90%的风险来自于10%的重要资产,传统的方法没有对威胁和风险进行等级划分,这也是它和漏洞管理较为不同的一点。传统的方法倾向于从纯技术角度看问题,如果有补丁我们就要打补丁,没有从长远角度去看这类问题。要对企业中的资产信息尽可能全面地进行收集,并且根据资产在企业业务流程中的角色进行合理分类,方便网络管理人员对企业中资产存在的风险有明确的了解,这样才能够有效地指导漏洞修补过程,将企业中的风险降低到一个较低的水平。
补丁本身的有效性 凡事都有两面性,打了补丁之后从一个角度来看是解决了一些问题,但是在打补丁之前,我们要从其他的侧面思考以下几个问题:
●安装补丁程序需要哪些基本条件?
●补丁的副作用是不是会影响其他应用程序或者其他资产的使用,是否会引入新的未知漏洞?
●补丁会不会影响一些企业正常业务的连续性?是否需要测试?
●补丁安装失败或者补丁影响其他资产,如何将系统恢复到安装补丁之前的状态?
传统的方法不能够解决上面提到的几个问题。在企业网络中,如果用户使用的操作系统种类繁多,就会导致补丁获取、分发和安装过程比较复杂,而且只能有部分的工作由自动化工具来完成,很多工作还是需要人工进行决策和实施,补丁管理过程的成本还是比较高。
补丁可能引入一些未知的漏洞,安装补丁需要在风险和收益之间得到平衡。厂商发布的补丁都是针对某一特定的软件版本,而且安装补丁之前要了解安装补丁的一些必要条件,要认真阅读补丁安装说明文件,尤其是Linux和Unix操作系统,否则安装失败或者影响系统正常使用的可能性非常大。
在安装补丁之前,还要考虑的一个问题就是安装补丁之后会出现什么不良的影响。对于很多应用软件来说,使用一些共享的库文件是很正常的事情,这就导致了不同应用服务之间可能存在一定的依赖关系,补丁程序很可能在安装之后会无形中影响到其他的应用或者其他的资产,所以安装之前要在模拟的业务环境中进行先导测试成功之后,才能进入正式业务环境。
最后一点就是补丁的回滚问题,这也是目前所有的补丁管理程序共同面临的一个难题。补丁的分发和安装的自动化已经比较成熟,但是补丁的自动回滚在实现方面还有一定的难度。
勿忘补丁变更记录 一些危害非常大的漏洞使大多数网络管理员处于“救火”的状态,因此很少有时间来进行补丁变更记录管理。缺少变更文档经常导致大量重复的工作。传统方法缺少过程管理,不能形成相对固定的工作流程,很难对整个过程进行
监控、改进和重用,很多网络管理员大多将文档的中心主要放在漏洞的技术细节上,而很少关注网络中资产的系统配置情况。一个相对完整的漏洞工作流程(过程管理)应该包括以下几个元素:
漏洞确认、补丁和配置变更;确认补丁和配置变更是否合理;资产优先级划分的规则;补丁测试;补丁部署、配置变更和保护策略工作指南。