
| 出版日期:2003-11-10 总期号:1265 本年期号:84 |
|
做好“保镖”
曹斌 安全管理在IT行业中是新兴起的一类业务。对于企业的信息系统来说,安全管理人员就像是职业保镖,是一个令人向往的职业,有保镖工作所特有的刺激和成就感,同时又没有生命危险。 时刻关注网络的状况 安全管理人员的日常工作是相当繁忙的,虽然说他们跟“保镖”一样,平时就是在等着事情的发生,只有真发生了事情,“保镖”的作用才能体现。但为了使问题出现时及时知道,并且很快采取适当的措施,平时还是需要做大量的工作的。这些工作包括: 1、掌握状况,安全管理人员必须对网络信息系统的静态布局和动态信息流动情况有非常清楚的认识:最重要的资产在哪里,哪些人员或系统会使用这些资产,如何使用?这些都需要比较清楚地掌握。 2、随时了解系统中的变化,有些变化可能潜藏着危机; 3、经常维护,修补系统中的薄弱环节; 4、追究可疑情况,采取正确措施。安全管理人员对于系统中的任何可疑的现象都要保持高度的警惕,它们很可能是攻击的前奏,或者,更可怕的,它们可能是正在进行的破坏活动的一种表现。 即使平时的工作再周密,防御工作做得再好,“敌人”终究有一天会找上门来,这是安全管理人员应该牢记的信条。这个敌人可能是来自Internet上某处的黑客,也可能是随意扩散到你这里的网络病毒,也可能是内部怀有恶意的职员。如何对付? 最糟糕的是,敌人来了,做了一些事情,又走了,而我们毫不知晓,直到破坏力显现。这种情况正应了那句话:“死了都不知道是怎么死的。”工作丢了也就罢了,最重要的是丢掉了对于我们这些“保镖”来说比生命还重要的名声。这有些夸张了,不过,这确实是我们的恶梦。作为一个安全管理人员,最糟糕也不过如此了。 所以对于安全管理人员来说,除了要有丰富的知识和经验、不断学习的能力,同时还要具备敏锐的感觉和洞察力,尤其是,要有一个能够随时从攻击者角度考虑问题的头脑。 屏蔽不必要的网络功能 作为信息系统的“保镖”,他需要把可能出现的情况都想到,这一点很难,但是如果不做到这一点,说不定哪一天敌人就会从意想不到的地方突破进来。管理员第一要做的,是把可能出现的情况的种类尽可能地减少。就拿数据库系统的安全来说吧,最基本的,数据库的DBA需要从局域网以外的地方登录数据库吗?如果不需要,就干脆把这种访问禁止掉;如果偶尔需要,那么最好以一种确定的方式进来,而不要随时随地的访问。再进一步,远程数据库访问的身份、访问方式(是只读还是有写和删除的权限)等是确定的吗?如果只需要某种特定的账号、特定的方式进行访问,那么想办法把它确定下来,而禁止其他可能的随意行为。 信息系统发展到今天,为了满足各种各样的应用环境,甚至是古怪的要求,它们提供的功能已经太多了,比任何一个用户需要的都多。我们看到过把Windows XP的各种功能都用过的人吗?我相信这样的人不存在,即使是微软的Windows XP的测试部门,也是把各项功能的测试分解给不同的人去做。而在实际情况下,大多数人只用了很少很少的功能。但是这些我们不用的功能会在我们不知不觉之间被利用来作些我们所不期望的事情。很少有人用过Word系统中的宏定义功能吧,但是几乎所有人都受到过宏病毒的侵扰。你看,这个功能在起作用,只不过这种作用是我们不期望发生的。不仅是Word,也不仅是Windows XP,几乎所有的信息系统部件都有我们用不上的功能,从最底层的交换机,到路由器,到各种网络设施、主机操作系统、数据库、中间件。安全管理人员需要做的是把这些不用的功能屏蔽掉,使用户的行为是可预测的。只有系统的行为是可穷举的,系统的安全才是可分析的,否则,如果系统的正常行为的种类是无穷尽的,我们又如何将他们与恶意的攻击相区别呢? 如果一个安全管理人员能够把信息系统中的各种行为分析清楚,那么他绝对是值得敬佩的。这一定是一位非常敬业、又有很好的技术修养的安全管理人员。这个技术修养绝不是一天两天可以具备的,单纯依靠培训的效果也很有限,因为他几乎要了解全部信息系统部件的工作机理,并对组织的信息系统的建设目标有非常清楚而准确的认识。换句话说,他需要具备CIO的知识面和对信息系统的理解深度,同时还具备比CIO多得多的对各种技术细节的知识和运用能力。但是他又不能做CIO,因为他必须把全部精力用于系统防御的技术工作之中,而CIO显然还要具备很强的管理和沟通能力。 配置合理的安全产品 作为安全管理人员,必须有合手的装备,没有任何装备的保镖在现代环境下可能完全不堪一击。而作为信息系统的保镖,没有专业工具,几乎完全无法应对复杂系统防御。这种需求造就了信息安全产品这个产业。 信息安全产品的很多设计思路就是在试图解决这些我们不用的功能所带来的苦恼的。比如防火墙,无论是网络防火墙还是装在PC上的个人防火墙,都是用来执行安全策略的。而这个所谓的安全策略就是要安全管理人员把正常的行为定义出来,其余的,统统被屏蔽掉。而问题的难点在于,是不是提供了足够完备的描述工具用于细致的区分:什么是允许的,而什么是禁止的。比如安全管理人员希望在防火墙中明确限定远程登陆录身份和执行的动作,这就要求防火墙系统能够提供这种检查。而目前市场上的大多数产品仍然局限在对基本的网络地址、端口、协议的过滤,控制的粒度还相当的粗。 而另一类产品是专门盯住那些他们认为不太像正常的行为的,比如防病毒系统,它们会认为如果发来的邮件中带有某某特征的字节序列,那么应该是病毒。但是从道理上讲,这就好比是我们发现抢劫银行的匪徒大多都戴墨镜,于是所有进入银行的戴墨镜的人都被怀疑是匪徒一样。入侵检测系统也采取类似的方式,只不过它所关注的是网络上传递的信息或主机操作系统中的各种操作。但是这也就引发了误报的问题:难道邮件系统不是用来传递构成信息的字节的吗?难道网络不是用来传递信息的吗?难道戴墨镜不是人类的一种正常装束吗?字节,或者信息,没有高低贵贱或好与坏之分,在我们没有看到它所产生的效果,没有查证产生他们的动机之前,这种对“恶意代码”的判断都是不完全确定的。所以我们经常看到安全管理人员在抱怨他们“被这类系统所产生的大量报警信息淹没了。”当一个系统过于神经质时,它所能提供的帮助就非常有限了。 |
|||||||||||||||||||||||||||