2.7、对策
针对neOh和Comrade所使用的方法,在这里为所有的公司提出了两种解决方案。
第一个很简单,大家都很熟悉:就是始终保持操作系统和应用程序是你的软件供应商所发布的最新版本。始终保持警惕,记得随时更新和安装与安全相关的补丁。但要确保这一切不能豪无目的地进行,所有的公司都应该开发和执行一项补丁管理程序,当公司所使用的产品有新补丁发行的时候,公司内部与此补丁相关的人员就会被通知到——主要是针对操作系统,但也有应用程序软件和固件。
并且当可以获得新的补丁时,一定要尽快安装——马上!除非这个补丁干扰了公司的运作;否则应该在第一时间安装。不难想像,有时疲惫的员工会因为工作压力而仅仅将目光锁定在容易注意到的项目上(比如,仅仅给新员工安装系统),并且总认为补丁只要在实效范围内安装就行。但如果这些未上补丁的设备可以从Internet上面公开访问的话,那将带来巨大的风险。
因为缺少补丁管理,不计其数的系统惨遭攻击。一旦一个脆弱点被公开,这个脆弱点会迅速地增大,直到软件服务商发行了针对这个问题的补丁,并且客户将它安装上了。
你们的机构都需要优先考虑补丁安装,用一个正式的补丁管理措施从最大限度上来减少漏洞的暴露——当然是在考虑不干扰重要商业运作的前提下。
但即使紧密注意安装补丁程序还不够。neOh说了,有时自己的入侵是在“零天”(zero-day)的时间内完成的——这种入侵是建立在攻击少数黑客知道漏洞的基础上的,除了他们自己这个小黑客团体,别人都还未发现这个漏洞。“零天”指的是,从漏洞被发现到软件商家和安全团体发现之间的这段时间。
因为有被利用“零天”攻击的可能,每个使用有漏洞的产品的机构都是脆弱的,直到补丁发行出来为止。因此你怎样降低暴露过程中的风险呢?
我认为,唯一可行的办法就是使用深度防御模型(dfense in depth)。我们必须假设,我们能从公共领域访问的计算机系统在某些时刻有遭受“零天”攻击的危险。因此我们必须创建一个环境,将破坏者可能造成的破坏降到最低。比如,就如前文所提到的那样,将公众可访问的系统置于公司防火墙的“非军事区”(Demilitarized Zone,DMZ)。DMZ是从军事或政治领域借过来的词语,指的是建立一个网络结构,以此将公众访问的系统(比如网络服务器、邮件服务器、DNS服务器以及其他类似的东西)与公司网络的敏感系统分离开来。配置一个网络结构以此来保护内部网络,这是“深度防御”的一个例子。通过这种设置,即使黑客发现了一个事先不知道的漏洞,接着网络服务器和邮件服务器被破坏了,公司的内部网络系统仍然处于另一个层面的保护中。
公司还可以启用另一种有效的对策:监视网络或观察单个主机,看是否有异样的令人起疑的现象。通常黑客成功入侵一个系统后,他们都会有些进一步的动作,比如试着攻击加密的或明文的口令,安装一个后门程序,修改配置文件来降低安全性,或者修改系统、应用程序或日志文件等等。在适当的地方安放一个程序,可以监视这些典型的黑客行为,并且可以提醒相关的工作人员引起注意,从而帮助控制危险。
因为一个别的话题,我被媒体釆访了无数次。他们问我,在今天这样非常不友好的环境下,什么才是保护自己的业务和个人计算机资源的最好办法。我的一个最基本的推荐就是使用复杂的交互式口令,而不是静态口令。除非事情已经发生,不然你永远不会想到别人会获得你的口令。
许多二级的签名技术可以与传统的口令结合起来使用,这样将大大提高系统的安全性。除了RSA的安全验证码(前面提到过),Safe Word Premier Access提供了口令生成令牌、数字证书、智能卡、生物认证以及其他的一些技术。
但使用这些认证控制方法也有一些负面效果,比如成本增加、使用不便等等。这得看你的保护对象是什么了。《LA时报》网站使用静态口令也许就足够保护它的新闻了。但你还会使用静态的口令来保护最新的商用喷气飞机的设计规格吗?