对于系统管理员而言,打补丁的目的主要是为了保证系统的安全,不被有心人利用一些漏洞***到本身管理的系统当中。这其中涉及到不少问题,好比漏洞的安全危害级别,如何查找和检测漏洞,打补丁以前预估好可能产生的影响,进行充分的测试,作好相关备份等。有一些入行不久的系统管理员惧怕打补丁,惧怕会所以致使系统出现不正常,其实该打的补丁不打每每可能致使更糟糕的后果。那么,系统管理员应如何修补软件、系统漏洞,平稳的打补丁呢?51CTO系统频道特别邀请了李晨光老师来给你们扫盲。git
推荐专题:SA,神仙与装机男:运维的工做到底啥样儿?程序员
做者简介:李晨光(博客,新浪微博),中科院研究生毕业,IBM软件精英讲师,微软社区精英,ChinaUnix论坛Linux栏目版主.从事网络系统管理、存储及信息安全10年,中国勘察设计协会信息化专家、中国计算机学会高级会员,经过微软Microsoft、思科Cisco、CIW网络认证、获数据库高级管理工程师认证,多年系统管理培训、软件开发管理经验。公开发表专业学术论文四十篇,精彩博文百余篇。 1、程序为何会有漏洞?web
程序只能严格按照规则作编程有要它作的事情。可是,最终编写的程序并不老是与程序员预计让程序完成的事情一致。下面的这个笑话能够说明这一问题:数据库
一我的在森林中行走,在地上发现了一盏魔灯。他本能地捡起了魔灯而且用袖子擦拭它。忽然,从瓶子里出来了一个魔鬼。魔鬼感谢这我的使他得到了自由,并答应要知足他的三个愿望。这我的欣喜若狂,他确实知道本身想要什么。编程
“第一”,这我的说,“我想要十亿美圆。”windows
魔鬼很快地晃了一下手指,满满的一袋子钱出现了。安全
这我的惊奇地睁大眼睛继续说道:“接下来,我想要一部法拉利。”服务器
魔鬼一晃手指,很快地在烟雾中出现了一部法拉利。网络
这我的继续说:“最后,我想变得对女人有极大的诱惑力。”运维
魔鬼一挥手指,这我的变成了一盒巧克力。
程序执行正像这我的的最后一个愿望的实现同样。程序按照指令执行,因为软件漏洞结果出了问题并不老是程序员想要的,有时结果甚至是灾难性的。
咱们都知道如今软件变得更加复杂,软件越复杂,就越难预测它在各类可能场景下的反应方式,也就越难保证其安全性,当今的操做系统和应用程序的代码行数也愈来愈多,例如Windows xp大约有4千万行代码,Vista 大约5千多万,Windows 2000有2900万行代码。业界一般使用这样的一个估算方式,即每1000行代码中大约有5~50BUG。所以理论上,从平均意义上能估计出Windows xp中大约有多少个BUG。咱们都知道***对操做系统的***都是利用系统软件中的漏洞进行的。在过去,不少人把漏洞看做是有恶意的人可以利用的软件或硬件的缺陷。然而在近几年中,漏洞的定义发展成为有恶意的人可以利用的软硬件的缺陷及配置错误。
从表面上看,漏洞管理像是个简单的工做,好比在操做系统上装上一些经常使用的补丁修补工具,而后自动进行修补。然而在大部分组织的网络中,漏洞管理既困难又复杂。一个典型的组织中包含定制们有不一样的需求,不能只作简单地保护,更不能置之不理。软件厂商仍会发布不安全的代码,硬件厂商也不会将安全内建在产品中,所以这些问题就留给了系统管理员来处理。
厂商经过不一样的途径发现一个漏洞。在理想的状况下,厂商在发布产品以前,会找出并解决全部的安全问题。可是代码的复杂性,加上严格的开发周期,易于产生安全方面的错误。一般,一个独立的/商业的安全研究组织会将漏洞告知厂商;不过在有些状况下,厂商会与公众同时发现漏洞,这时不用事先通知,漏洞就被公开了,就很容易被利用。 2、如何理解漏洞形成的风险?
无论一个漏洞是如何公开的,该漏洞都对一个组织形成了风险。漏洞带来的风险大小取决于几个因素:
好比某些大的银行机构会采起措施,把全部的金融核算系统都放在网络中,而且置于独立的防火墙以后。尽管分离重要的系统是一种很好的策略,可是有一个因素没有考虑到:有大量的员工须要访问这些数据。所以,实际拥有的只是一个用做日志系统的昂贵防火墙,该防火墙容许一部分客户端经过。固然,防火墙能够阻止一些威胁,可是若是威胁来自一个容许通讯的通道,那么防火墙就没有帮助了。
正确的解决方案是把整个部门放在隔离的网络中,不容许任何来自网络外部的访问。减小暴露程度虽然与漏洞无关,可是会大大下降漏洞为企业形成的风险。 3、漏洞评估方法和步骤
在一个企业中查找出漏洞须要付出很大的努力,不能简单地在所选的地方安装一个漏洞扫描软件并简单地按下“开始”按钮,那样是不起做用的。由于如今的企业拥有成千上万的服务器和主机,这些服务器和主机又经过上百个速率不一样的网络线路链接起来,所以照这个方法,咱们在指望的时间内根本没法得到所需的覆盖范围。
那么须要作什么呢?咱们须要对漏洞进行评估。所谓漏洞评估,能够理解成跟军队中的侦察差很少的行为。侦察任务的主要目的是向前进入外国的领土,而且查找出敌军的弱点和易***的地方。漏洞评估是帮助企业领导、安全专家及***在网络、应用和系统中肯定安全责任的安全实践活动。
实施漏洞评估的方法和步骤分为:信息收集/发现,列举,以及检测。
1.信息收集/发现
这一步骤包括:
使用Nmap软件,咱们可以很快肯定网络上哪些主机是在线的。在Nmap中使用-s P(ping扫描)选项对目标网络执行ping扫描。这能够帮助肯定哪些主机是活动的和有效的。一旦肯定信息后,信息收集/发现的工做就完成了。如今能够继续进行第二步,列举并肯定目标运行什么操做系统和应用程序。(51CTO推荐阅读:十条nmap实用命令行技巧)
2.列举
列举是用来
的过程。
在肯定操做系统后,就是要肯定运行于主机上的应用程序。端口0~1023(共1024个)被称为熟知端口。
仍然使用Nmap。咱们用它的-sV选项来肯定什么应用程序位于什么端口。端口在漏洞评估中扮演了一个很关键的角色,由于它确保将漏洞对应到各自应用程序。若是确信有问题的主机在端口443上运行的是安全Web服务器而不是一个电子邮件服务器,那么极可能就不会发现该主机的漏洞,从而认为系统未来不可能被***。当信息收集工做和列举工做完成后,如今能够在目标系统上检测漏洞了。
3.检测
检测用来肯定一个系统或应用程序是否易受***。须要注意的是,这一步并非用于肯定漏洞是否存在。检测过程只是报告漏洞出现的可能性,而漏洞是否存在则由***测试来完成。 4、查找检测漏洞的方法
上面介绍了检测漏洞的执行思路,下面介绍应该如何在真实系统环境下进行漏洞检测。这个工做一般使用漏洞评估扫描器完成。漏洞评估扫描器通常是运行漏洞评估软件的网络工具,或者运行在一个企业本身资产中的漏洞评估软件。
如今漏洞修复技术比过去发生了很大变化。修复技术已经从手工修复进入了自动化过程。本文中咱们只考虑Windows系统和UNIX/Linux系统。
1.利用配置工具评估漏洞
许多组织已经在管理/配置工具上作了投资,经常利用这些工具作一些至关常规的工做,可是经过扩展这些工具来从咱们的环境中提取漏洞数据。好比赛门铁克的产品(之前的Bind View,2005年被赛门铁克收购),可以帮助一个组织处理大部分平常的windows活动目录(AD)操做,也能够发现组织中的漏洞。为了更好地理解,下面看一个BindView的部署。
2.漏洞评估工具
一个好的工具最少要有的特征:低的误报率(false positives)、零漏报率(false negatives)、一个完整的检测数据库、对网络流量的影响小、直观的和可定制的报告引擎。
目前,不少漏洞扫描产品都被开发出来,不一样的软件扫描漏洞的功能存在必定的差别,有些扫描软件还带有必定的***性质,例如X-Scan、Shadow Security Scanner和流光等。
下面介绍几个商业漏洞管理工具:
eEye Digital Security在漏洞研究中处于领导地位。它也开发了一套用来帮助进行漏洞管理的工具。
BindView的Compliance Manager是一个基于软件的解决方案,容许组织对比公司标准或者行业最好的经验来评佔资产,在大多数状况下不须要用到代理。
◆Attachmate(NetIQ,2006年被Attachmate收购)
NetIQ的Compliance套件是一个NetIQ的安全管理器和漏洞管理工具的组合,而且把漏洞扫描、补丁管理、配置修复和报告整合在一块儿。NetIQ漏洞管理器可以经过AutoSync技术让用户定义和维护配置策略模板、漏洞公告板和自动检测。它也有能力根据这些策略评估系统。
StiIISecure是VAM的制造商,是一个安全产品的集成套件,可以执行漏洞管理、终端符合性监控,以及***防护和检测。它也包含一个内置的工做流方案(可扩展漏洞修复工做流),这个方案可以自动地分配修复、进度安排、生命周期追踪和修复确认,全部维护详细的设备历史记录。
下面介绍几个开源工具:
Nmap是一个免费开源的网络搜索或安全审计工具。尽管它对单台主机工做很是好,但被设计为快速扫描大型网络。
Tenable Network Security的Nessus是一个漏洞扫描和配置扫描工具。Nessus项目由Renaud Deraison开始于1998年,为了给网络社会提供一个免费的、强大的、最新的且好用的远程安全扫描器。Nessus是最好的免费网络漏洞扫描器而且不管如何在Unix上运行是最好的。它持续更新(超过11000种免费插件可用)。
Microsoft Base Security Analyzer(MBSA)是一个好用的工具,为专业人员设计以便帮助中小型企业依靠Microsft的安全建议来测定安全状态,而且也提供特定的修复指导。创建在Windows升级代理和Microsoft升级设施基础上,MBAS确保了和其余Microsoft管理产品的一致性,这些产品包括Microsoft Update(MU),Windows Server Update Services(WSUS), systems management server(SMS)和Microsoft Operarations Manager(MOM)。
51CTO推荐专题:网络安全工具百宝箱
到目前为止,咱们介绍了漏洞是什么,漏洞为企业带来的风险,以及检测漏洞的思路和方法。具体如何给企业中的系统打补丁,且听下回分解。